插件窝 干货文章 如何在 Ubuntu 22.04 / 20.04 上配置 FreeIPA 客户端

如何在 Ubuntu 22.04 / 20.04 上配置 FreeIPA 客户端

sudo 客户端 FreeIPA 服务器 819    来源:    2025-04-20

在 Ubuntu 22.04/20.04 上配置 FreeIPA 客户端

前提条件

  1. 已安装 Ubuntu 22.04 或 20.04 系统
  2. 拥有 sudo 权限
  3. 网络连接正常
  4. 已有一个正常运行的 FreeIPA 服务器

安装 FreeIPA 客户端

1. 更新系统包

sudo apt update && sudo apt upgrade -y

2. 安装 FreeIPA 客户端软件包

sudo apt install freeipa-client -y

配置 FreeIPA 客户端

1. 运行安装脚本

使用以下命令配置客户端(将 ipa.example.com 替换为你的 FreeIPA 服务器域名):

sudo ipa-client-install --domain=example.com --server=ipa.example.com --mkhomedir --no-ntp

参数说明: - --domain: 你的域名称 - --server: FreeIPA 服务器主机名 - --mkhomedir: 自动创建用户主目录 - --no-ntp: 不配置 NTP(如果已有时钟同步可加此选项)

2. 交互式安装

安装过程中会提示: 1. 输入 FreeIPA 服务器的管理员凭据 2. 确认 DNS 解析 3. 确认主机名设置

验证安装

1. 检查 Kerberos 票据

kinit admin
klist

2. 测试用户登录

su - ipa-user

3. 检查 SSSD 状态

systemctl status sssd

可选配置

1. 配置自动挂载(如果 IPA 服务器设置了 autofs)

sudo apt install autofs -y
sudo ipa-client-automount --unattended

2. 配置 sudo 规则(如果 IPA 服务器设置了 sudo 规则)

sudo authselect select sssd with-sudo --force

3. 配置 SSH 使用 IPA

编辑 /etc/ssh/sshd_config 添加:

AuthorizedKeysCommand /usr/bin/sss_ssh_authorizedkeys
AuthorizedKeysCommandUser nobody

然后重启 SSH 服务:

sudo systemctl restart sshd

故障排除

常见问题解决

  1. DNS 解析问题

    • 确保客户端可以解析 IPA 服务器
    • 检查 /etc/resolv.conf/etc/hosts
  2. 时间同步问题

    • 确保客户端与 IPA 服务器时间同步
    • 安装 NTP:sudo apt install chrony -y
  3. SSSD 问题

    • 检查日志:journalctl -u sssd -f
    • 清除缓存:sudo sss_cache -E
  4. 重新加入域

    sudo ipa-client-install --uninstall
    sudo ipa-client-install --domain=example.com --server=ipa.example.com --mkhomedir
    

注意事项

  1. 确保客户端主机名设置正确且在 DNS 中可解析
  2. 确保客户端与 IPA 服务器时间差不超过 5 分钟
  3. 防火墙需要允许相关端口(LDAP, Kerberos, HTTPS 等)

完成以上步骤后,你的 Ubuntu 系统应该已成功加入 FreeIPA 域,可以使用域用户登录并应用域策略了。