In den letzten Tagen habe ich ein Linux-System mit LDAP-Authentifizierung eingerichtet und alles funktioniert einwandfrei, aber es gibt immer noch etwas, das ich in Bezug auf NSS und PAM nicht wirklich verstehe, auch nach vielen Nachforschungen.
Zitieren:
Mit NSS können Administratoren eine Liste von Quellen angeben, in denen Authentifizierungsdateien, Hostnamen und andere Informationen gespeichert und gesucht werden
und
PAM ist eine Reihe von Bibliotheken, die eine konfigurierbare Authentifizierungsplattform für Anwendungen und das zugrunde liegende Betriebssystem bereitstellen
Was ich nicht verstehe, ist, wie PAM und NSS zusammenarbeiten und interagieren. In diesem Buch wird die Architektur ziemlich gut erklärt: Ich konfiguriere PAM für die Verwendung pam_ldap
für LDAP-Konten und pam_unix
für lokale Konten und konfiguriere nsswitch.conf
dann das Abrufen von Informationen aus lokalen Dateien und LDAP.
Wenn ich richtig verstanden habe, wird LDAP zweimal verwendet: zuerst von pam_ldap
und dann von NSS, von dem aus es selbst aufgerufen wird pam_unix
. Ist das richtig? Wird LDAP wirklich zweimal verwendet? Aber warum muss ich sowohl NSS als auch PAM konfigurieren? Meine Erklärung ist, dass PAM andere Aufgaben als NSS ausführt und von anderen Programmen verwendet wird. Aber dann sollte es möglich sein, nur NSS oder nur PAM zu verwenden, wie ich auf dieser Seite gelesen habe .
Also habe ich ein bisschen experimentiert und zuerst versucht, LDAP von der zu löschen nsswitch.conf
(und die Authentifizierung hat aufgehört zu funktionieren, als ob nur pam_ldap nicht ausreicht , um den Job zu erledigen). Dann habe ich LDAP in NSS wieder aktiviert und es aus der PAM-Konfiguration gelöscht (diesmal hat alles gut funktioniert, als wäre pam_ldap
es nutzlos und NSS reicht aus , um einen Benutzer zu authentifizieren).
Gibt es jemanden, der mir helfen kann, dies zu klären? Vielen Dank im Voraus.
AKTUALISIEREN
Ich habe gerade etwas ausprobiert. Ich entfernte wieder alle pam_ldap
Einträge in allen pam Konfigurationsfelder und ich habe auch entfernt shadow: ldap
von nsswitch.conf
. Wie jetzt in allen Systemen gibt es nur die Zeilen: passwd: ldap files
und group: ldap files
in nsswitch.conf
. Nun, die Anmeldung bei LDAP-Benutzern funktioniert einwandfrei. Diese beiden Zeilen (plus /etc/ldap.conf
) reichen aus, um die LDAP-Authentifizierung zu konfigurieren.
Meines Wissens nach ist PAM unabhängig von NSS, aber meine Tests haben gezeigt, dass dies nicht der Fall ist. Ich frage mich also, ob es möglich ist, NSS vollständig zu deaktivieren und nur PAM zu verwenden.
getent shadow | grep LDAPUSER
grep LDAPUSER /etc/shadow