使用两个不同的 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 守护进程,但是我想不出其他解决问题的方法。

相关内容