使用兩個不同 LDAP 伺服器的 SSSD LDAP 驗證

使用兩個不同 LDAP 伺服器的 SSSD LDAP 驗證

我正在嘗試在 CentOS 7 上使用 SSSD 設定 LDAP 身份驗證。

是否可以以使用兩台 LDAP 伺服器的方式設定 SSSD:一台 LDAP 伺服器僅用於驗證(基本上只是使用密碼進行驗證),另一台 LDAP 伺服器用於識別並取得使用者的所有屬性(homeDirectory,僅在該LDAP 伺服器上定義的附加LDAP 屬性)?

使用者在兩台伺服器上定義(相同的 uid,但不同的基數)

答案1

從長遠來看,你最好找到一種方法來合併你的基地。
然而,SASL Pass-Through Authentication可能是您的一個選擇。除非您已經使用它來將主要身份驗證傳遞給 Kerberos 之類的東西,在這種情況下,您最好複製該userPassword條目,因為它可能保持靜態,它應該允許您使用其他基礎進行身份驗證。

答案2

不,我認為除了醜陋的駭客之外這是不可能的。 sssd 支援的唯一特殊情況是用於變更密碼操作的不同 LDAP 伺服器(使用ldap_chpass_uri)。

但您可以做的是使用id_provider=proxy,將其配置為使用 nslcd(又稱 nss-pam-ldapd),並將 nslcd 配置為使用身份 LDAP 伺服器。然後配置auth_provider=ldap並將其指向身份驗證 LDAP 伺服器。

這不太漂亮,而且您將運行兩個 LDAP 守護程序,但我想不出另一種方法來解決該問題。

相關內容