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

2023-05-27
3分钟阅读时长

FreeIPA 是一个强大的开源身份管理系统,提供集中的身份验证、授权和计费服务。在本文中,我们将逐步介绍在 Ubuntu 22.04 / 20.04 上配置 FreeIPA 客户端的步骤。配置 FreeIPA 客户端后,我们将尝试使用在 FreeIPA 服务器上创建的用户登录。

在我们之前的帖子中,我们已经讨论了 FreeIPA 服务器在 RHEL8/Rokcy Linux 8/ AlmaLinux 8 上的安装步骤。

在 FreeIPA 服务器上创建用户进行集中认证

登录到你的 FreeIPA 服务器并创建一个名为 sysadm 的用户,运行以下命令:

$ sudo kinit admin
Password for [email protected]:
$
$ sudo ipa config-mod --defaultshell=/bin/bash
$ sudo ipa user-add sysadm --first=System --last=Admin --password
Password:
Enter Password again to verify:
-------------------
Added user "sysadm"
-------------------
User login: sysadm
First name: System
Last name: Admin
Full name: System Admin
Display name: System Admin
Initials: SA
Home directory: /home/sysadm
GECOS: System Admin
Login shell: /bin/bash
Principal name: [email protected]
Principal alias: [email protected]
User password expiration: 20230415073041Z
Email address: [email protected]
UID: 464600003
GID: 464600003
Password: True
Member of groups: ipausers
Kerberos keys available: True
$

第一个命令是获取 Kerberos 凭证,第二个命令将所有用户的默认登录 shell 设置为 /bin/bash,第三个命令用于创建名为 sysadm 的用户。

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

执行以下步骤来配置 FreeIPA 客户端以进行集中身份验证。

1、在 FreeIPA 服务器上添加 Ubuntu 系统的 DNS 记录

登录到你的 FreeIPA 服务器并运行以下命令为 FreeIPA 客户端(即 Ubuntu 22.04/20.04)添加 DNS 记录:

$ sudo ipa dnsrecord-add linuxtechi.lan app01.linuxtechi.lan --a-rec 192.168.1.106
  Record name: app01.linuxtechi.lan
  A record: 192.168.1.106
$

在上面的命令中,app01.linuxtechi.lan 是我的 Ubuntu 系统,IP 地址为 192.168.1.106

注意:确保你的 FreeIPA 服务器和客户端处于同一时区并从 NTP 服务器获取时间。

2、安装 FreeIPA 客户端包

从你的 Ubuntu 系统运行以下命令以安装 freeipa-client 以及依赖项:

$ sudo apt install freeipa-client oddjob-mkhomedir -y

在安装 freeipa-client 时,我们将看到以下页面,选择确定并回车。

在下一个屏幕中,按回车键跳过。

3、在主机文件中添加 FreeIPA 服务器 IP 和主机名

/etc/hosts 文件中添加以下 FreeIPA 服务器条目:

$ echo "192.168.1.102 ipa.linuxtechi.lan ipa" | sudo tee -a /etc/hosts
$ echo "192.168.1.106 app01.linuxtechi.lan app01" | sudo tee -a /etc/hosts

更改适合你的设置的 IP 地址和主机名。

4、使用 ipa-client-install 配置 FreeIPA 客户端

现在运行以下 ipa-client-install 命令在你的 Ubuntu 系统上配置 FreeIPA 客户端:

$ sudo ipa-client-install --hostname=`hostname -f` --mkhomedir --server=ipa.linuxtechi.lan --domain linuxtechi.lan --realm LINUXTECHI.LAN

更改适合你设置的 FreeIPA 服务器地址、域名和领域。

上述命令的输出如下所示:

完美,上面的输出确认 FreeIPA 客户端安装成功。

现在允许在用户首次使用 FreeIPA 服务器进行身份验证时自动创建用户的主目录。

在文件 /usr/share/pam-configs/mkhomedir 中添加以下行:

required pam_mkhomedir.so umask=0022 skel=/etc/skel

$ echo "required pam_mkhomedir.so umask=0022 skel=/etc/skel" | sudo tee -a /usr/share/pam-configs/mkhomedir

要使上述更改生效,请运行以下命令:

$ sudo pam-auth-update

选择确定,然后按回车键。

5、尝试使用 sysadm 用户登录到你的 Ubuntu 系统

尝试使用 sysadm 用户通过 SSH 登录到你的 Ubuntu 系统,

$ ssh [email protected]

正如你在上面看到的,当我们第一次登录时,它说密码已过期。它将提示我们设置新密码并断开会话。

更新密码后,尝试 SSH 登录 Ubuntu 系统,这次我们应该可以登录了。

$ ssh [email protected]

输出:

太好了,上面的输出确认我们已经使用集中用户成功登录到我们的 Ubuntu 系统。这也说明我们已经成功配置了 FreeIPA 客户端。

如果你想从 ubuntu 系统中卸载 FreeIPA,然后运行以下命令集:

$ sudo ipa-client-install --uninstall
$ sudo  rm -rf /var/lib/sss/db/*
$ sudo systemctl restart sssd.service

以上就是这篇文章的全部内容,我相信你已经发现它提供了很多信息。请在下面发表你的疑问和反馈。

(题图:MJ/bd5b7777-f70a-4367-ac78-d026792b855a)


via: https://www.linuxtechi.com/configure-freeipa-client-on-ubuntu/

作者:Pradeep Kumar 选题:lkxed 译者:geekpi 校对:wxy

本文由 LCTT 原创编译,Linux中国 荣誉推出