Wir speichern unsere Benutzer in LDAP, zusammen mit einigen Gruppen, die systemübergreifend Bedeutung haben (einschließlich organisatorischer Rollen wheel
). Es gibt auch Gruppen lokal für Arbeitsplätze, zum Beispiel audio
oder video
die nicht erwünscht ist gesetzt in LDAP zu werden. Wenn ich mich lokal anmelde, erhalte ich diese lokalen Gruppen, aber wenn ich mich über SSH auf demselben Computer anmelde, fehlen sie. Sie kommen natürlich wieder, wenn ich sie su
gleich danach benutze . Ich bin vielleicht auf dem falschen Weg, aber ich vermute PAM.
Relevante Einträge von nsswitch.conf
passwd: compat ldap
shadow: compat ldap
group: compat ldap
Bezüglich pam immer die auth-Zeile, aber die anderen Zeilen sind die gleichen
/etc/pam.d/sshd
auth include system-remote-login
/etc/pam.d/system-remote-login
(identisch mit system-local-login
ich könnte hinzufügen)
auth include system-login
/etc/pam.d/system-login
auth required pam_tally2.so onerr=succeed
auth required pam_shells.so
auth required pam_nologin.so
auth include system-auth
auth optional pam_gnome_keyring.so
account required pam_access.so
account required pam_nologin.so
account include system-auth
account required pam_tally2.so onerr=succeed
password include system-auth
password optional pam_gnome_keyring.so
session optional pam_loginuid.so
session required pam_env.so
session optional pam_lastlog.so
session include system-auth
session optional pam_gnome_keyring.so auto_start
session optional pam_motd.so motd=/etc/motd
session optional pam_mail.so
/etc/pam.d/su
auth sufficient pam_rootok.so
auth required pam_wheel.so use_uid
auth include system-auth
account include system-auth
password include system-auth
session include system-auth
session required pam_env.so
session optional pam_xauth.so
/etc/pam.d/common-auth:
auth required pam_group.so use_first_pass
Was könnte das Problem sein und wie würde ich es lösen? Gerne stelle ich Ihnen weitere benötigte Informationen zur Verfügung.
/etc/nsswitch.conf
Aussehen ausgroup
? Was ist die Ausgabe vongetent YOURUSERNAME
? Enthält Ihr/etc/pam.d/sshd
@ common- {session, auth, password, account}?Antworten:
Ich habe mir heute ein Herz genommen und es endlich gelöst. Die Pam-Kette funktioniert so
/etc/pam.d/sshd
beinhaltet:/etc/pam.d/system-remote-login
das beinhaltet:/etc/pam.d/system-login
das beinhaltet:/etc/pam.d/system-auth
das hat eine optionale AnforderungAnscheinend funktioniert das letzte Include aus irgendeinem Grund nicht. Der Grund, warum ich bisher so verwirrt war, war, dass ich darauf vertraute, dass diese Includes funktionieren würden, was nicht der Fall war. Wenn jemand erklären kann, warum ich sehr dankbar wäre. Ich weiß das, weil, wenn ich die Linie hinzufüge
in die
/etc/pam.d/system-login
dann klappt es.quelle
Das Anmeldeprogramm (das Ihre Umgebung einrichtet, einschließlich UID, GID und ergänzender Gruppen) erhält Daten zu Benutzername <-> UID, GID und den ergänzenden Gruppen, zu denen der Benutzername gehört, aus einer Art Datenbank. Traditionell aus den Dateien / etc / passwd und / etc / groups, heute auch aus LDAP. Abhängig von der Datenquelle können die zugewiesenen Gruppen variieren.
Seien Sie vorsichtig, wenn verschiedene Quellen gemischt werden, können Sie sehr gut ein Konto mit demselben Namen, aber unterschiedlichen UIDs (das System verwendet die UID tatsächlich intern) oder unterschiedlichen Gruppengruppen erhalten. Das Ergebnis ist normalerweise für den gelegentlichen Betrachter sehr unterhaltsam, während es zu einer vorzeitigen Kahlköpfigkeit führt, da die verantwortlichen Parteien häufig an den Haaren ziehen. (War dort.)
quelle
In
nsswitch.conf
:afaik das ruft getgrent auf, das die Gruppen erhält (Gruppeneinträge)
BEARBEITEN: eine andere Sache ist das Folgende hinzuzufügen
/etc/pam.d/common-auth
:Weitere Informationen finden Sie hier: Weisen Sie Benutzern lokale Gruppen und möglicherweise dieser neuen Gruppe-und-Gruppen-zu, die-über-Pam-Gruppe-so-zugewiesen wurden
quelle
pam-auth-update
und einen nscd neustart gemacht?Ich hatte ein fast ähnliches Problem: Bei der Anmeldung mit ssh fehlten einige Gruppen. Es wurde durch Ändern von /etc/nsswitch.conf gelöst:
quelle