pam_mkhomedir.so 不適用於 nslcd + LDAP(Active Directory)

pam_mkhomedir.so 不適用於 nslcd + LDAP(Active Directory)

我試圖pam_mkhomedir.so在初次登入時建立 LDAP 使用者的本機主目錄。我使用的是 Ubuntu 20.04 LTS。

目前,使用者透過 LDAP(Active Directory 後端)新增到我的伺服器。此已配置為 nslcd + nscd。我按照這裡的指南來配置所有內容:https://www.markturner.net/2019/09/27/ad-ldap-authentication-on-linux-hosts/

不幸的是,我似乎無法產生使用者的主目錄。更奇怪的是,當我深入除錯時,用戶的主目錄似乎是空白的。

以下是用戶「jgoetz」嘗試透過 SSH 連線時的範例。使用者可以登錄,群組運作正常,但無法建立主目錄:

Oct 15 21:56:10 LDAP-Test6 sshd[3425]: Accepted password for jgoetz from 10.100.98.23 port 52602 ssh2
Oct 15 21:56:10 LDAP-Test6 sshd[3425]: pam_unix(sshd:session): session opened for user jgoetz by (uid=0)
Oct 15 21:56:10 LDAP-Test6 systemd-logind[689]: New session 16 of user jgoetz.
Oct 15 21:56:10 LDAP-Test6 mkhomedir_helper: PAM unable to create directory : No such file or directory

從最後一行可以看出,mkhomedir_helper 甚至沒有嘗試在 /home 中建立目錄,從而導致錯誤。

有人能指出我正確的方向嗎?

感謝您的時間!

答案1

更新:我可以透過在每個使用者的 Windows Active Directory(我們的範例中為 LDAP 後端)中設定loginShellto/bin/bashhomeDirectoryto屬性來解決此問題。/home/username

設定此屬性後,pam_mkhomedir.so 成功建立使用者的主目錄

不幸的是,我無法讓 nslcd 在本地覆蓋這些值,這在我們的情況下會更加理想,但直接在 AD 中設定這些屬性確實糾正了問題。

相關內容