Hallo,
Hmm, die Bash kommt an Deine Userdaten nicht heran. Die Authentifizierung geht über PAM, die Bash greift jedoch über die glibc bzw. die libnss_ldap auf die Daten zu. Kontrollier mal Deine /etc/nsswitch.conf ob da bei passwd ldap steht. Prüfe mal ob die uid stimmt
Habe ich schon, die stimmt.
$ id
Lass mal mit getent die passwd anzeigen, ob da die bzw. der User aus der LDAP-Datenbank bei sind:
# getent passwd
Habe ich auch schon gemacht. Hier bekomme ich den User 'sven' welcher ja gar nicht in der Datei passwd existiert angezeigt.
Kontrollier mal die /etc/ldap.conf bzw. /etc/ldap.secret (Das Passwort darf nicht verschlüsselt sein).
Ist drin & Klartext
Das von mir geplante Ziel war ganz einfach die an sich funktionierende LDAP-Installation abzusichern und diesen 'kosmetischen Fehler' zu beheben.
Wenn ich eueren Ausführungen so folge drängt sich mir die Vermutung auf ich hätte SASL zumindest für LDAP nicht gebraucht, richtig?
Du musst Dich selbstverständlich beim LDAP-Server authentifizieren um Daten abzufragen. Bevor OpenLDAP SASL integriert hatte, wurden die Benutzer und Passwörter bei der Anmeldung unverschlüsselt übertragen, SSL bzw. TLS jetzt mal ausser acht gelassen. Mit SASL war es nun möglich auch Authentifizierungs-Mechanismen wie DIGEST-MD5 zu benutzen, dadurch wird kein Passwort mehr übertragen, nur noch ein Hash, welcher beidn Seiten mitteilt, dass die andere Seite das Passwort kennt. Vorraussetzung für diesen Mechanismus ist allerdings das unverschlüsselte Passwort in der Datenbank. Da dies bei Dir allerdings verschlüsselt ist, kannst Du diese Mechanismen auch nicht benutzen, stattdessen musst Du PLAIN bzw. LOGIN benutzen. Grob gesagt hebelst Du damit allerdings den Vorteil von SASL aus, und es ist bei Dir relativ egal ob Du es nun benutzt oder nicht.
Seit einiger Zeit setzt OpenLDAP die Benutzung von SASL allerdings vorraus. Ssprich wenn Du SASL nicht mehr benutzen möchtest, musst Du in den Tools bzw. im Server wieder zurück auf bind_v2 bzw. Version 2 zurückschalten bzw. dieses Erlauben. Im Server (slapd.conf) gibt es die Option "allow bind_v2" in den Commandline-Tools ein "-x" in Konfigurationsdateinen meist "version 2" oder "ldap_version 2".
Das wäre aber doch keine sichere Lösung mehr, oder? Viele Grüße Sven Gehr