Ldap

(打開)LDAP - 身份驗證不起作用

  • January 15, 2019

我在 CentOS7 機器上安裝了 OpenLDAP,我可以在伺服器上本地登錄,所以使用者存在(在 passwd 中)。我還執行以下 LDAP 命令:

#ldapsearch -h localhost -x cn=ldapuser01 -b "dc=example,dc=com"

我得到一個結果:

# extended LDIF
#
# LDAPv3
# base <dc=example,dc=com> with scope subtree
# filter: cn=ldapuser01
# requesting: ALL
#

# ldapuser01, Group, example.com
dn: cn=ldapuser01,ou=Group,dc=example,dc=com
objectClass: posixGroup
objectClass: top
cn: ldapuser01
userPassword:: ffffsomesdatafff=
gidNumber: 1001

# ldapuser01, People, example.com
dn: uid=ldapuser01,ou=People,dc=example,dc=com
uid: ldapuser01
cn: ldapuser01
objectClass: account
objectClass: posixAccount
objectClass: top
objectClass: shadowAccount
userPassword:: ffffffffffffffffffsome dataffffffffffffffffffffff
shadowLastChange: 17910
shadowMin: 0
shadowMax: 99999
shadowWarning: 7
loginShell: /bin/bash
uidNumber: 1001
gidNumber: 1001
homeDirectory: /home/guests/ldapuser01

# search result
search: 2
result: 0 Success

# numResponses: 3
# numEntries: 2

所以使用者即使在 ldap 目錄中也存在。

但是當我嘗試進行身份驗證時

#ldapsearch -h localhost -x cn=ldapuser01 -b "dc=example,dc=com" -D "cn=ldapuser01,ou=Group,dc=example,dc=com" -w <my password>

我收到錯誤 49 無效憑據

我該如何解決這個問題?

附加資訊:我使用遷移工具遷移了本地使用者和組(以製作 .ldif 文件),然後添加

ldapadd -x -W -D cn=Manager,dc=example,dc=com -f users.ldif

如果您從本地 passwd/group 文件遷移使用者條目,您正在嘗試使用不正確的條目進行綁定。“cn=ldapuser01,ou=組,dc=example,dc=com”

它是 ’ldapuser01’ linux 組的 DN,而不是使用者。嘗試使用以下 DN

uid=ldapuser01,ou=People,dc=example,dc=com

例如:-

#ldapsearch -h localhost -x cn=ldapuser01 -b "dc=example,dc=com" -D "uid=ldapuser01,ou=People,dc=example,dc=com" -w <my password>

引用自:https://serverfault.com/questions/949130