我的目标是从命令行测试 LDAP 身份验证。我尝试使用ldapsearch
它。
我在用着Centos 6.7
即使我使用了正确的凭据,以下命令也会失败
[user@localhost html]# ldapsearch -x -h localhost -p 3389 -b "uid=john.martin,ou=Users,dc=company,dc=com" -W
Enter LDAP Password:
ldap_bind: Invalid credentials (49)
ldapsearch -x -h localhost -p 3389 -D "uid=john.martin,ou=Users,dc=company,dc=com" -W
还抱怨凭证无效。
ldapsearch -x -h localhost -p 3389 -D "uid=john.martin,ou=Users,dc=company,dc=com"
抛出unauthenticated bind (DN with no password) disallowed
。
以下是唯一有效的方法,但我需要提供密码(验证)-
ldapsearch -x -h localhost -p 3389 -b "uid=john.martin,ou=Users,dc=company,dc=com"
我在输入密码时遗漏了什么吗?我可以请求帮助来解决问题吗?
答案1
您的 ldap 基础真的是“uid=john.martin,ou=Users,dc=company,dc=com”吗?可能是,但我认为这是您的 binddn,对吗?
当使用 ldapsearch 进行简单身份验证时我使用以下命令:
ldapsearch -h host -LLL -s sub -x -W -b dc=your,dc=base -Z -D "cn=youruser,ou=org,dc=your,dc=base" ldapfilter attributes
使用 ldapsearch 的手册页来了解这些开关。
您还使用了端口 3389,该端口通常不用于 ldap(而是用于 Windows 远程桌面)。显然,可以在该端口上运行 ldap 服务器,但这可能是打字错误?