Ubuntu OS X LDAP 身份驗證
我剛剛按照本指南介紹瞭如何設置 Ubuntu 以使用 Mac OS X 10.4 伺服器進行身份驗證。我 100% 遵循指南,並且能夠通過執行來查看使用者
獲取密碼 和 獲取密碼(使用者)
這將提供有關使用者的所有正確資訊。我的問題是我希望這些使用者能夠通過登錄提示登錄,但這是行不通的。但是,當我以本地使用者身份登錄時,我會收到通常的使用者名和密碼提示,但隨後會收到 LDAP 密碼提示,我可以在其中輸入任何內容並仍然成功登錄。
關於如何解決這個問題的任何想法?提前致謝!
更新:
如下所述,我肯定 LDAP 設置正確,因為我可以看到所有使用 getent passwd 的 LDAP 使用者,但是由於我無法使用
su
,ssh
, 或gdm
使用這些使用者登錄,所以出現了其他問題。
問題是該指南是錯誤的,或者至少是次優的。
/etc/pam.d/common-auth 應該有:
驗證足夠的 pam_unix.so nullok_secure nodelay 驗證足夠的 pam_ldap.so use_first_pass 需要驗證 pam_deny.so
這表示 pam_unix 或 pam_ldap足以登錄,任何登錄失敗都將被拒絕。它首先嘗試本地 unix 登錄 - 如果您的 LDAP 伺服器已關閉或無法訪問,並且您仍需要以本地使用者身份登錄,這將非常有用。
它還使用’use_first_pass’而不是’try_first_pass’……它們非常相似,只是如果第一個錯誤它不會再次提示輸入密碼。
有關更多詳細資訊,請參見 pam_unix 和 pam_ldap 的手冊頁。
順便說一句,將以下內容添加到 /etc/pam.d/common-session 非常有用:
會話需要 pam_limits.so
它允許您使用 /etc/security/limits.conf 和 access.conf 等來非常精細地控制允許哪些使用者登錄(例如,我將伺服器上的 ssh 登錄限制為 admins 組的成員),並且還設置他們登錄的資源限制(記憶體、maxlogins、nice 優先級等)。