我正在尝试使用 LDAP 进行身份验证。我发现如果我们不提供绑定 DN 和密码,它不适用于 RHEL 5,但适用于 RHEL 6 和 7。
从 sssd 日志中,我可以了解到它正在使用尝试在 RHEL 6 和 7 中验证为绑定 DN 的用户名,但在 RHEL 5 中则不然。
例如:
用户= sam,基础= ou=People,ou=HR,o=MyOrg
在 RHEL 6&7 中,通过执行以下绑定成功:
执行简单绑定为: uid=sam,ou=People,ou=HR,o=MyOrg
在 RHEL 5 中,它只是:
执行简单绑定为:(null)
服务器端不允许使用Openquery。因此,它在 RHEL 5 中失败。(服务器不是由我们管理)
这似乎是 RHEL 6 和 7 中 sssd 中添加的功能,但在 RHEL 5 中是否可以实现相同的功能?
我还尝试在 RHEL 6 和 7 中使用 ldap.conf 来实现,但我不知道如何提供密码。所以,我猜这是 SSSD 附带的一个功能。
答案1
假设您不允许未经身份验证的域枚举(您可能不允许),您可能需要考虑您的 RHEL 6 和 7 服务器实际上使用 Kerberos 计算机帐户对域进行身份验证并执行经过身份验证的 LDAP 搜索的可能性,因为这是 SSSD 用于维护与给定域的经过身份验证的连接的标准机制。