Linux
如何配置 openLDAP 以通過 FreeRadius 查找 userPassword?
我正在執行 Ubuntu 12.04 和 OpenLDAP 2.4.28-1.1ubuntu4.5。我在 LDAP 中填充了使用者,其
userPassword
屬性為 {SHA1} 雜湊。使用者可以通過 SSH 登錄並對 Web 應用程序進行身份驗證。現在,我想將 Radius 身份驗證(從 OTP 伺服器)添加到 LDAP 伺服器作為附加機制。這樣,使用者可以通過他們的 Radius“一次性密碼”進行身份驗證,但所有 POSIX 屬性都將從 LDAP 中刪除。這可能嗎?機制叫什麼?
Openldap 2.4 支持 SASL 密碼 passtrough 身份驗證 ( http://www.openldap.org/doc/admin24/security.html )。
此功能允許將身份驗證過程委託給 saslauthd 守護程序,並保留 openldap 中的其他屬性。
此功能需要將實際的 userPassword 值替換為字元串“{SASL}username@realm”,因此您不能對同一使用者使用 SHA1 密碼和 SASL 身份驗證。此外,SASL 可以使用 PAM 作為後端身份驗證方法。
PAM 有一個允許使用自由半徑身份驗證的模組。完整的身份驗證鏈將是:
OpenLDAP 伺服器 –> saslauthd –> 帶有半徑的 pam 模組 –> Freeradius 伺服器
還有另外兩種方法可以解決這個問題:
- 如果您的 Web 應用程序支持 PAM 身份驗證,請創建一個同時使用 freeradius 和 ldap 身份驗證的 pam 模組
- 如果您的 Web 應用程序支持 Radius 身份驗證,請配置一個以 OpenLDAP 作為後端的 freeradius
SSH 已經支持 PAM 和 Radius 身份驗證(最後一個使用 pam 模組)。