![openldap“无效凭据”尝试使用 Active Directory 进行身份验证](https://linux22.com/image/729403/openldap%E2%80%9C%E6%97%A0%E6%95%88%E5%87%AD%E6%8D%AE%E2%80%9D%E5%B0%9D%E8%AF%95%E4%BD%BF%E7%94%A8%20Active%20Directory%20%E8%BF%9B%E8%A1%8C%E8%BA%AB%E4%BB%BD%E9%AA%8C%E8%AF%81.png)
我们正在运行一个 AD 服务器,它可以用于我们域中的每台 Windows 机器,以跨许多服务进行身份验证。
我们最近将一台 RHEL6 机器联机,并尝试配置应使用同一目录进行身份验证的特定应用程序。为此,我们安装了 openldap-clients 和所有这些软件包。
但是,当我们使用以下字符串时,ldapsearch 返回“无效凭据”:
ldapsearch -H ldaps://<ldap-server> -x -W -D 'cn=admin,ou=People,dc=example,dc=com' -b 'dc=example,dc=com'
> ldap_bind: Invalid credentials (49) additional info: 80090308: LdapErr: DSID-0C09042F, comment: AcceptSecurityContext error, data 52e, v2580
根据这要求 openldap 通过 SSL 与 AD 通信,所以我们这样做。
我们有许多通过 AD 连接的 Windows 应用程序,因此我们相当确定 AD 至少对此进行了正确配置。
但是,无论我们尝试绑定哪个用户、使用什么密码,我们的凭据都是无效的。
有人见过这个吗?我们是不是忽略了什么简单的东西?据我所知,这应该可行。AD 是否可能没有完全配置为用于 openldap 通信?
当我运行类似这样的操作时:
ldapsearch -LLL -x -H ldaps://<ldap host> -D CN=admin,OU=People,DC=example,DC=com -b DC=example,DC=com
我返回了错误:
>Additional information: 000004DC: LdapErr: DSID-0C0907C2, comment: In order to perform this operation a successful bind must be completed on the connection., data 0, v2580
调试模式显示我已成功连接到 AD,但似乎无法绑定。有人遇到过这种情况吗?
答案1
首先验证binddn
-D 后面的是否cn
与您尝试绑定的用户的匹配确切地如果确实如此,但您仍然无法绑定,您可以尝试将其切换为 UPN 格式:[电子邮件保护]
ldapsearch -H ldaps://<ldap-server> -x -W -D '[email protected]' -b 'dc=example,dc=com'