
Hoffe, allen geht es gut.
Kommen wir zum Punkt: Ich habe einen LDAP-Server und Client-Rechner eingerichtet.
Der Server funktioniert einwandfrei. Wenn ich eine Suche vom Client-Rechner aus durchführe, wird auch die Abfrage vom LDAP-Server abgerufen. Wenn ich jedoch den Benutzer wechsle, wird angezeigt, dass der Benutzer nicht existiert.
[root@ldapc ~]# su - babin
su: user babin does not exist
Ich habe dies vom Client-Rechner aus versucht und die folgende Antwort erhalten.
# ldapsearch -x -b dc=tecmintlocal,dc=com -h ldap.tecmintlocal.com
# extended LDIF
#
# LDAPv3
# base <dc=tecmintlocal,dc=com> with scope subtree
# filter: (objectclass=*)
# requesting: ALL
#
# tecmintlocal.com
dn: dc=tecmintlocal,dc=com
dc: tecmintlocal
objectClass: top
objectClass: domain
# People, tecmintlocal.com
dn: ou=People,dc=tecmintlocal,dc=com
ou: People
objectClass: top
objectClass: organizationalUnit
# Group, tecmintlocal.com
dn: ou=Group,dc=tecmintlocal,dc=com
ou: Group
objectClass: top
objectClass: organizationalUnit
# tecmint_gp1, Group, tecmintlocal.com
dn: cn=tecmint_gp1,ou=Group,dc=tecmintlocal,dc=com
objectClass: posixGroup
objectClass: top
cn: tecmint_gp1
userPassword:: YWRtaW4xMjMk
gidNumber: 20000
# babin, People, tecmintlocal.com
dn: uid=babin,ou=People,dc=tecmintlocal,dc=com
uid: babin
cn: babin babin
objectClass: account
objectClass: posixAccount
objectClass: top
objectClass: shadowAccount
userPassword:: YWRtaW4xMjMk
shadowLastChange: 16120
shadowMin: 0
shadowMax: 99999
shadowWarning: 7
loginShell: /bin/bash
uidNumber: 2000
gidNumber: 20000
homeDirectory: /home/babin
# tecmintclient, People, tecmintlocal.com
dn: uid=tecmintclient,ou=People,dc=tecmintlocal,dc=com
uid: tecmintclient
cn: tecmintclient tecmintclient
objectClass: account
objectClass: posixAccount
objectClass: top
objectClass: shadowAccount
userPassword:: YWRtaW4xMjMk
shadowLastChange: 16120
shadowMin: 0
shadowMax: 99999
shadowWarning: 7
loginShell: /bin/bash
uidNumber: 2000
gidNumber: 20000
homeDirectory: /home/tecmintclient
# search result
search: 2
result: 0 Success
# numResponses: 7
# numEntries: 6
Antwort1
Hast du eigentlichkonfiguriertdas System, um Benutzerkonten aus LDAP abzurufen?
Dazu müssen Sie normalerweise einen LDAP-Client wie nslcd
(auch bekannt als nss-pam-ldapd) installieren, der mit einem hinzuzufügenden NSS-Modul geliefert wird /etc/nsswitch.conf
(das dem System mitteilt, den LDAP-Client zum Abrufen von Benutzerinformationen zu verwenden).
(Sie müssen außerdem ein PAM-Modul hinzufügen, um die Benutzerkennwörter bei der Anmeldung zu prüfen. Dies kann pam_ldap
auch der Fall sein oder etwas Sichereres wie pam_krb5
.)
Wenn Sie den LDAP-Client bereits installiert haben, stellen Sie zunächst sicher, dass der richtige „Basis-DN“ (Suchort) konfiguriert ist, und suchen Sie nach verschiedenen Protokollierungs-/Debugoptionen.
Überprüfen Sie mit Wireshark auch den LDAP-Verkehr, um zu sehen, welche Suchvorgänge tatsächlich durchgeführt werden:
tshark -n -Y ldap -VO ldap
.