OpenLDAP+Kerberos 惡夢

OpenLDAP+Kerberos 惡夢

因此,在過去的幾周里,我一直在為我們的小公司配置 SSO 解決方案。現在我有一台運行帶有 kerberos 的 OpenLDAP 2.4.4 的伺服器(openldap 後端)。使用者可以登入並從 krb 取得票證,也使用 SASL 我可以將 Web 應用程式連接到 LDAP,該 LDAP 將使用 kerberos 進行身份驗證(userPassword 屬性為 {SASL}[電子郵件受保護])。

一切都很棒,直到我們需要一個用於用戶自助服務的 Web 應用程式(首次帳戶啟動、密碼重設等...),在尋找一些解決方案後,我發現了 PWM(https://github.com/pwm-project/pwm),在設定 PWM 後,我注意到一些事情,當嘗試更改密碼 PWM 並嘗試寫入“userPassword”屬性時,但該屬性只是指向 OpenLDAP 使用 kerberos 進行身份驗證。經過更多搜尋後,我找不到任何支援使用 kerberos 身份驗證進行 ldap 管理的 Web 應用程序,這意味著應用程式將更改 kerberos 密碼,而不是 OpenLDAP 中的“userPassword”屬性。所以我更改了「userPassword」來保存實際密碼,並且使用 smbkrb4pwd 我可以同步 LDAP 和 kerberos 中的密碼。很好,但後來我意識到,如果我在 kerberos 中更改密碼,LDAP 中的密碼不會更改,只有當我在 LDAP 中更改密碼時,smbkrb4pwd 才會在 kerberos 中更新它。嘆氣,沒問題,我只需將 PAM 配置為使用 ldap 作為“passwd”。

今天我開始設定密碼策略,在完成 LDAP 中的策略後,我發現我需要在 kerberos 中建立一個單獨的策略,難道不能在 LDAP 中使用相同的策略嗎?美好的。因此,兩個密碼策略都工作正常,帳戶在 X 次失敗嘗試後被鎖定,這很好,但後來我發現,如果我將帳戶鎖定在 OpenLDAP 中,我仍然可以嘗試在 kerberos 中進行身份驗證。

所以我在這裡,完全不知道該如何繼續。有沒有知道如何更改 kerberos 密碼的 WEB 應用程式?如何同步 LDAP 和 kerberos 中的帳號鎖定?

答案1

我找不到任何支援使用 kerberos 身份驗證進行 ldap 管理的 Web 應用程序,這意味著應用程式將更改 kerberos 密碼,而不是 OpenLDAP 中的“userPassword”屬性。

  • 這個問題,關於用於保持 samba LDAP 和 Kerberos 密碼同步的覆蓋模組。例如,在 Debian 中,該軟體包稱為:

    “slapd-smbk5pwd - 在 slapd 中保持 Samba 和 Kerberos 密碼同步。”

有沒有知道如何更改 kerberos 密碼的 WEB 應用程式?如何同步 LDAP 和 kerberos 中的帳號鎖定?

  • 現在,有一個應用程式Univention 企業伺服器 UCS 允許使用者透過 Web 模組變更其密碼。一個 Linux 發行版,可以讓這些複雜的身份驗證開箱即用。

免責聲明:我為 Univention 工作 =)。

相關內容