Ich habe OpenLDAP 2.4.44 unter CentOS 7.4 laufen und habe einen „Tester“-Benutzer hinzugefügt. Ich kann den Benutzer abfragen und das Passwort ändern, aber bei der Authentifizierung mit GNOME wird der Anmeldebildschirm immer abgelehnt. Ich habe dies verwendetFührungum die Dinge einzurichten.
Die LDIF-Dateien, die ich zum Einrichten des Systems verwendet habe, sind folgende:
db.ldif
dn: olcDatabase={2}hdb,cn=config
changetype: modify
replace: olcSuffix
olcSuffix: dc=example
dn: olcDatabase={2}hdb,cn=config
changetype: modify
replace: olcRootDN
olcRootDN: cn=ldapadm,dc=example
dn: olcDatabase={2}hdb,cn=config
changetype: modify
replace: olcRootPW
olcRootPW: <omitted>
monitor.ldif
dn: olcDatabase={1}monitor,cn=config
changetype: modify
replace: olcAccess
olcAccess: {0}to * by dn.base="gidNumber=0+uidNumber=0,cn=peercred,cn=external,cn=auth" read by dn.base="cn=ldapadm,dc=example" read by * none
Basis.ldif
dn: dc=example
dc: example
objectClass: top
objectClass: domain
dn: cn=ldapadm,dc=example
objectClass: organizationalRole
cn: ldapadm
description: LDAP Manager
dn: ou=People,dc=example
objectClass: organizationalUnit
ou: People
dn: ou=Groups,dc=example
objectClass: organizationalUnit
ou: Groups
zertifikate.ldif(diese Zertifikate wurden erstellt und Besitzer/Gruppe in ldap:ldap geändert)
dn: cn=config
changetype: modify
replace: olcTLSCertificateFile
olcTLSCertificateFile: /etc/openldap/certs/managerldapcert.pem
dn: cn=config
changetype: modify
replace: olcTLSCertificateKeyFile
olcTLSCertificateKeyFile: /etc/openldap/certs/managerldapkey.pem
tester.ldif
dn: uid=tester,ou=People,dc=example
objectClass: top
objectClass: account
objectClass: posixAccount
objectClass: shadowAccount
cn: tester
uid: tester
uidNumber: 9001
gidNumber: 100
homeDirectory: /home/tester
loginShell: /bin/bash
gecos: Tester Account
userPassword: {crypt}x
shadowLastChange: 0
shadowMax: 0
shadowWarning: 0
So zeigen Sie die Kontoinformationen für den Benutzer an:
ldapsearch -x cn=tester -b dc=example
Die Antwort lautet wie folgt:
# extended LDIF
#
# LDAPv3
# base <dc=example> with scope subtree
# filter: cn=tester
# requesting: ALL
#
# tester, People, example
dn: uid=tester,ou=People,dc=example
objectClass: top
objectClass: account
objectClass: posixAccount
objectClass: shadowAccount
cn: tester
uid: tester
uidNumber: 9001
gidNumber: 100
homeDirectory: /home/tester
loginShell: /bin/bash
gecos: Tester Account
shadowLastChange: 0
shadowMax: 0
shadowWarning: 0
userPassword:: <omitted>
# search result
search: 2
result: 0 Success
# numResponses: 2
# numEntries: 1
Ich kann das Passwort folgendermaßen ändern:
ldappasswd -H ldap:/// -x -D "cn=ldapadm,dc=example" -W -S "uid=tester,ou=People,dc=example"
Dies fordert zur Eingabe des neuen Benutzerkennworts (zweimal) und des LDAP-Root-Kennworts auf und beendet dann das Programm. Ich kann beobachten, dass sich das Kennwort geändert hat, indem ich eine erneute Abfrage mit ldapsearch durchführe (wo sich der Abschnitt userPassword:: ändert).
Ich kann mich zur Überprüfung des Kennworts beim LDAP-Konto anmelden, indem ich Folgendes verwende:
ldapwhoami -vvv -h ldapi:/// -p 389 -D "uid=tester,ou=People,dc=example" -x -W
Anschließend habe ich Authconfig mit Folgendem eingerichtet:
authconfig --enableldap --enableldapauth --ldapserver=servername.example --ldapbasedn="dc=example" --enablemkhomedir --update
Aber wenn ich versuche, den CentOS GNOME-Anmeldebildschirm zu verwenden, wird das Kennwort abgelehnt.
In/var/log/sicherIch sehe Folgendes:
pam_sss(gdm-password:auth): authentication failure; logname= uid=0 euid=0 tty=/dev/tty1 ruser= rhost= user=tester
pam_sss(gdm-password:auth): received for user tester: 6 (Permission denied)
Dinge, die ich ohne Erfolg versucht habe:
- Deaktivieren von SELinux (als Test, nicht weil es eine mögliche Lösung ist)
- Einstellung
FORCELEGACY=yes
in/etc/sysconfig/authconfig
diesemPost - Verwendung
system-config-authentication
und andere Vorschläge zu diesemVerknüpfung - Installieren des Zertifikats, das ich mithilfe des Vorschlags erstellt habeHier
Meine Frage ist: Wie versucht CentOS 7, sich anzumelden (und wie kann ich den Anmeldeversuch mit ldapwhoami emulieren) und wie kann dies besser debuggt/protokolliert werden? Erscheint mein Benutzer-DN sinnvoll (mit uid statt cn für den ersten Eintrag; ich habe in verschiedenen Anleitungen beide Vorgehensweisen gesehen)?
Jede Hilfe ist willkommen!