OpenLDAP 2.4.44-Authentifizierung unter CentOS/RHEL 7

OpenLDAP 2.4.44-Authentifizierung unter CentOS/RHEL 7

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=yesin /etc/sysconfig/authconfigdiesemPost
  • Verwendung system-config-authenticationund 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!

verwandte Informationen