![使用 ldapwhoami 测试用户身份验证](https://linux22.com/image/734187/%E4%BD%BF%E7%94%A8%20ldapwhoami%20%E6%B5%8B%E8%AF%95%E7%94%A8%E6%88%B7%E8%BA%AB%E4%BB%BD%E9%AA%8C%E8%AF%81.png)
我正在运行 amazon linux(类似于 centos)的 ec2 实例上工作。我使用 open ldap 设置了一个 ldap 服务器。它似乎可以正常工作,但我只能验证管理员用户,而不能验证我尝试添加的其他用户。
如果我尝试使用以下命令测试管理员用户的身份验证:
ldapwhoami -x -D "cn=Manager,dc=mydomain,dc=com" -w mypassword
效果很好。这是一个好的开始!
但我还需要能够测试用户身份验证。例如,我添加了一个测试用户 tsmith。我尝试使用以下命令查询此用户:
ldapwhoami -x -D "uid=tsmith,ou=users,dc=mydomain,dc=com" -w testuserspassword
我收到答复:
ldap_bind: Invalid credentials (49)
我已确保 ldap 服务器包含我期望的用户和组。使用“ldapsearch -x -b dc=mydomain,dc=com”,我可以在正确的组中看到正确的用户。我感兴趣的用户显示为:
# Test Smith, users, air.local
dn: cn=Test Smith,ou=users,dc=air,dc=local
cn: Test Smith
sn: Smith
objectClass: inetOrgPerson
userPassword:: [password hash here]
uid: tsmith
有人能提示我可能做错了什么吗?
答案1
uid=tsmith,ou=users,dc=mydomain,dc=com
不是 DN,也就是说cn=Test Smith,ou=users,dc=air,dc=local
,您需要使用 DN 来与-D