如何将 Ubuntu 系统添加到 FreeIPA 服务器
在此页
- 先决条件
- 在 FreeIPA 服务器上添加用户
- 在 FreeIPA 服务器上为 Ubuntu 客户端添加 DNS 记录
- 设置 FQDN 和 /etc/hosts
- 将 Ubuntu 客户端添加到 FreeIPA
- 使用 FreeIPA 用户登录 Ubuntu 客户端
- 结论
安装 FreeIPA 身份管理系统后,您需要注册客户端计算机并将其添加到 FreeIPA 服务器。这将确保 FreeIPA 用户登录到在 FreeIPA 服务器上注册的任何客户端计算机。
在本教程中,我们将向您展示如何将 Ubuntu 客户端计算机添加到 FreeIPA 服务器。最后,FreIPA 用户将能够使用 FreeIPA 服务器提供的身份验证登录到 Ubuntu 客户端机器。
先决条件
- FreeIPA 服务器已完全配置。
- 一台 Ubuntu Linux 机器 - 服务器或台式机。
- 具有 sudo 管理员权限的非根用户。
在 FreeIPA 服务器上添加用户
在开始配置 Ubuntu 客户端计算机之前,请使用下面的 ssh 命令连接到您的 FreeIPA 服务器。
ssh
现在运行以下命令对 Kerberos 服务器进行身份验证。
kinit admin
这将提示您输入 Kerberos 管理员的密码。输入正确的密码。
接下来,通过使用以下命令检查可用的 Kerberos 票证来验证身份验证。
klist
如果您已通过 Kerberos 服务器的身份验证,您将看到以下屏幕截图。

现在您将使用 ipa 命令行设置 FreeIPA 服务器。
使用以下命令将 FreeIPA 用户的默认 shell 更改为 /bin/bash。
ipa config-mod --defaultshell=/bin/bash
您将在下面为 FreeIPA 用户使用所有默认配置。如您所见,默认 shell 更改为 /bin/bash。

现在运行以下命令创建一个名为 laura 的新 FreeIPA 用户。
ipa user-add laura --first=Laura --last=Admin --password
您将被要求为用户 laura 输入一个强密码,然后将创建新用户。

在 FreeIPA 服务器上为 Ubuntu 客户端添加 DNS 记录
设置新用户后,您现在需要为 Ubuntu 客户端计算机添加 DNS 配置。在此示例中,Ubuntu 客户端计算机以 IP 地址 192.168.10.50 和主机名 ubuntu-node 运行。
现在使用以下命令为 ubuntu-node 添加 DNS 配置。您还需要使用 FreeIPA 服务器的 DNS 区域和客户端计算机的所有详细信息更改域名 hwdomain.io。
ipa dnsrecord-add hwdomain.io ubuntu-node.hwdomain.io --a-rec 192.168.10.50
使用以下命令验证 DNS 配置。
ipa dnsrecord-find hwdomain.io ubuntu-node.hwdomain.io
您可以在下面看到 FQDN ubuntu-node.hwdomain.io 已解析为客户端 IP 地址 192.168.10.50。
此外,如果您从 FreeIPA 服务器运行 ping 命令到 FQDN ubuntu-node.hwdomain.io,域将自动解析为 FreeIPA 服务器上定义的正确 IP 地址。
ping ubuntu-node.hwdomain.io -c5
您现在已经创建了 FreeIPA 用户并为客户端计算机配置了 DNS 记录。
设置 FQDN 和 /etc/hosts
现在转到 Ubuntu 客户端计算机并开始在客户端计算机上配置 FQDN 和 /etc/hosts 文件。
运行以下命令将 FQDN 设置为 ubuntu-node-.hwdomain.io。
sudo hostnamectl set-hostname ubuntu-node.hwdomain.io
现在使用 nano 编辑器编辑配置 /etc/hosts。
sudo nano /etc/hosts
更改详细的IP地址和域名,然后将配置添加到文件中。
192.168.10.25 ipa.hwdomain.io
192.168.10.50 ubuntu-node.hwdomain.io
完成后保存并关闭文件。
接下来,运行下面的 dig 命令来验证 FQDN 和 /etc/hosts 文件配置。
dig +short ubuntu-node.hwdomain.io A
dig +short -X 192.168.10.50
您将看到以下屏幕截图,FQDN ubuntu-node.hwdomain.io 解析为 IP 地址 192.169.10.50,反之亦然。

将 Ubuntu 客户端添加到 FreeIPA
配置 FQDN 和 /etc/hosts 文件后,您现在将安装 FreeIPA 客户端包并开始将您的 Ubuntu 客户端添加到 FreIPA 服务器。
在开始安装任何软件包之前,请使用以下命令更新和刷新您的 Ubuntu 存储库。
sudo apt update
现在使用以下命令安装 FreeIPA 客户端包。
sudo apt install freeipa-client oddjob-mkhomedir
输入 Y 确认安装,然后按 ENTER 继续。

安装期间,系统会要求您设置默认 REALM。将其保留为默认值,因为它会根据您的 FQDN 自动检测到。



FreeIPA 客户端包现已安装在您的 Ubuntu 客户端计算机上。
接下来,运行下面的 ipa-client-install 命令将 Ubuntu 客户端计算机添加到 FreeIPA 服务器。请务必更改 FreeIPA 服务器地址、 域名 和REALM。
ipa-client-install --hostname=`hostname -f` \
--mkhomedir \
--server=ipa.hwdomain.io \
--domain hwdomain.io \
--realm HWDOMAIN.IO
在安装过程中,系统会要求您进行以下配置:
- 当询问自动发现配置时,输入是。
- 将 NTP 配置保留为默认值。
- 检查您的详细 FreeIPA 服务器配置并输入 yes 以确认安装。
- 现在输入用于 Kerberos 身份验证的用户管理员。
- 输入 Kerberos 管理员用户的密码。

完成所有配置后,您将看到一条消息,例如“客户端配置已完成。”。

接下来,运行以下命令更改 PAM 身份验证模块配置。
sudo pam-auth-update
选择 PAM 配置文件“登录时创建主目录”以启用它,然后选择“确定”进行确认。

现在 FreeIPA 客户端机器的所有配置都已完成。
使用 FreeIPA 用户登录 Ubuntu 客户端
要验证您的 Ubuntu 客户端机器配置,请返回到 FreeIPA 服务器并使用 FreeIPA 用户 laura 连接到 ubuntu-node.hwdomain.io。另外,请确保在您的 Ubuntu 客户端计算机上启用了密码身份验证。
使用 FreeIPA 用户连接到 Ubuntu 客户端机器,如下所示。
ssh
输入 FreeIPA 用户的密码。当密码正确时,您将被要求再次输入密码并将默认密码更改为新密码。因此,请务必为您的用户使用强密码。
连接后,您将看到如下图所示的输出。 FreeIPA 用户 laura 使用 SSH 身份验证登录到 ubuntu-node 机器。

结论
恭喜!您现在已经学习了如何将 Ubuntu 客户端计算机添加到 FreeIPA 服务器,您还学习了用于管理 FreeIPA 用户和 DNS 配置的基本 ipa 命令,以及 PAM 模块的基本配置。