freeipa 是一個(gè)強(qiáng)大的開(kāi)源身份管理系統(tǒng),提供集中的身份驗(yàn)證、授權(quán)和計(jì)費(fèi)服務(wù)。
在我們之前的帖子中,我們已經(jīng)討論了 FreeIPA 服務(wù)器在 RHEL8/Rokcy Linux 8/ AlmaLinux 8 上的安裝步驟。
在 FreeIPA 服務(wù)器上創(chuàng)建用戶進(jìn)行集中認(rèn)證
登錄到你的 FreeIPA 服務(wù)器并創(chuàng)建一個(gè)名為?sysadm?的用戶,運(yùn)行以下命令:
$ sudo kinit adminPassword for admin@LINUXTECHI.LAN:$$ sudo ipa config-mod --defaultshell=/bin/bash$ sudo ipa user-add sysadm --first=System --last=Admin --passwordPassword:Enter Password again to verify:-------------------Added user "sysadm"-------------------User login: sysadmFirst name: SystemLast name: AdminFull name: System AdminDisplay name: System AdminInitials: SAHome Directory: /home/sysadmGECOS: System AdminLogin shell: /bin/bashPrincipal name: sysadm@LINUXTECHI.LANPrincipal alias: sysadm@LINUXTECHI.LANUser password expiration: 20230415073041ZEmail address: sysadm@linuxtechi.lanUID: 464600003GID: 464600003Password: TrueMember of groups: ipausersKerberos keys available: True$
第一個(gè)命令是獲取 Kerberos 憑證,第二個(gè)命令將所有用戶的默認(rèn)登錄 shell 設(shè)置為?/bin/bash,第三個(gè)命令用于創(chuàng)建名為?sysadm?的用戶。
在 Ubuntu 22.04 /20.04 上配置 FreeIPA 客戶端的步驟
執(zhí)行以下步驟來(lái)配置 FreeIPA 客戶端以進(jìn)行集中身份驗(yàn)證。
1、在 FreeIPA 服務(wù)器上添加 Ubuntu 系統(tǒng)的 DNS 記錄
登錄到你的 FreeIPA 服務(wù)器并運(yùn)行以下命令為 FreeIPA 客戶端(即 Ubuntu 22.04/20.04)添加 DNS 記錄:
$ sudo ipa dnsrecord-add linuxtechi.lan app01.linuxtechi.lan --a-rec 192.168.1.106Record name: app01.linuxtechi.lanA record: 192.168.1.106$
在上面的命令中,app01.linuxtechi.lan?是我的 Ubuntu 系統(tǒng),IP 地址為?192.168.1.106。
注意:確保你的 FreeIPA 服務(wù)器和客戶端處于同一時(shí)區(qū)并從 NTP 服務(wù)器獲取時(shí)間。
2、安裝 FreeIPA 客戶端包
從你的 Ubuntu 系統(tǒng)運(yùn)行以下命令以安裝?freeipa-client?以及依賴項(xiàng):
$ sudo apt install freeipa-client oddjob-mkhomedir -y
在安裝?freeipa-client?時(shí),我們將看到以下頁(yè)面,選擇確定并回車。
在下一個(gè)屏幕中,按回車鍵跳過(guò)。
3、在主機(jī)文件中添加 FreeIPA 服務(wù)器 IP 和主機(jī)名
在?/etc/hosts?文件中添加以下 FreeIPA 服務(wù)器條目:
$ 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
更改適合你的設(shè)置的 IP 地址和主機(jī)名。
4、使用 ipa-client-install 配置 FreeIPA 客戶端
現(xiàn)在運(yùn)行以下?ipa-client-install?命令在你的 Ubuntu 系統(tǒng)上配置 FreeIPA 客戶端:
$ sudo ipa-client-install --hostname=`hostname -f` --mkhomedir --server=ipa.linuxtechi.lan --domain linuxtechi.lan --realm LINUXTECHI.LAN
更改適合你設(shè)置的 FreeIPA 服務(wù)器地址、域名和領(lǐng)域。
上述命令的輸出如下所示:
完美,上面的輸出確認(rèn) FreeIPA 客戶端安裝成功。
現(xiàn)在允許在用戶首次使用 FreeIPA 服務(wù)器進(jìn)行身份驗(yàn)證時(shí)自動(dòng)創(chuàng)建用戶的主目錄。
在文件?/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
要使上述更改生效,請(qǐng)運(yùn)行以下命令:
$ sudo pam-auth-update
選擇確定,然后按回車鍵。
5、嘗試使用 sysadm 用戶登錄到你的 Ubuntu 系統(tǒng)
嘗試使用?sysadm?用戶通過(guò) SSH 登錄到你的 Ubuntu 系統(tǒng),
$ ssh sysadm@192.168.1.106
正如你在上面看到的,當(dāng)我們第一次登錄時(shí),它說(shuō)密碼已過(guò)期。它將提示我們?cè)O(shè)置新密碼并斷開(kāi)會(huì)話。
更新密碼后,嘗試 SSH 登錄 Ubuntu 系統(tǒng),這次我們應(yīng)該可以登錄了。
$ ssh sysadm@192.168.1.106
輸出:
我們已經(jīng)成功使用集中管理的用戶登錄到了 Ubuntu 系統(tǒng),這一點(diǎn)在輸出信息中得到了確認(rèn),非常令人欣慰。這也說(shuō)明我們已經(jīng)成功配置了 FreeIPA 客戶端。
如果你想從 ubuntu 系統(tǒng)中卸載 FreeIPA,然后運(yùn)行以下命令集:
$ sudo ipa-client-install --uninstall$ sudorm -rf /var/lib/sss/db/*$ sudo systemctl restart sssd.service