Przechowujemy naszych użytkowników w LDAP, wraz z niektórymi grupami, które mają znaczenie w różnych systemach (w tym role organizacyjne wheel
). Istnieją również grupy lokalne na stanowiskach pracy, np audio
albo video
że nie są wskazane do wprowadzenia do LDAP. Teraz, jeśli loguję się lokalnie, otrzymuję te grupy lokalne, ale jeśli loguję się przez SSH na tym samym komputerze, brakuje mi ich. Oczywiście wrócą, jeśli su
użyję od razu. Mogę być na niewłaściwym torze, ale podejrzewam PAM.
Odpowiednie wpisy z nsswitch.conf
passwd: compat ldap
shadow: compat ldap
group: compat ldap
Jeśli chodzi o pam, zawsze linia auth, ale pozostałe linie są takie same
/etc/pam.d/sshd
auth include system-remote-login
/etc/pam.d/system-remote-login
(identyczny jak system-local-login
mogę dodać)
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
Jaki może być problem i jak go rozwiązać? Z przyjemnością udzielę innych potrzebnych informacji.
/etc/nsswitch.conf
wygląda twój wyglądgroup
? Jaka jest wydajnośćgetent YOURUSERNAME
? Czy Twoja/etc/pam.d/sshd
@include common- {sesja, autoryzacja, hasło, konto}?Odpowiedzi:
Dzisiaj nabrałem serca i wreszcie to rozwiązałem. Łańcuch pam działa w ten sposób
/etc/pam.d/sshd
obejmuje:/etc/pam.d/system-remote-login
to obejmuje:/etc/pam.d/system-login
to obejmuje:/etc/pam.d/system-auth
który ma opcjonalny wymógNajwyraźniej ostatnie włączenie nie działa z jakiegoś powodu. Powodem, dla którego do tej pory byłem tak zdziwiony, było to, że wierzyłem, że to wszystko zadziała, co nie było prawdą. Jeśli ktoś może wyjaśnić, dlaczego byłbym bardzo wdzięczny. Wiem to, ponieważ jeśli dodam linię
Into the
/etc/pam.d/system-login
to działa.źródło
Program logowania (który konfiguruje twoje środowisko, w tym UID, GID i grupy uzupełniające) pobiera dane o nazwie użytkownika <--> UID, GID i dodatkowych grupach, do których należy nazwa użytkownika, z pewnego rodzaju bazy danych. Tradycyjnie z plików / etc / passwd i / etc / groups, dziś również z LDAP. W zależności od źródła danych przypisane grupy mogą się różnić.
Bądź ostrożny, jeśli różne źródła są mieszane, możesz bardzo dobrze mieć konto o tej samej nazwie, ale różnych UID (system naprawdę używa UID wewnętrznie) lub różnych zestawów grup. Rezultat jest zwykle bardzo zabawny dla przypadkowego obserwatora, a jednocześnie prowadzi do przedwczesnego łysienia z powodu nadmiernego wyrywania włosów dla rządzących stron. (Byłem tam.)
źródło
W
nsswitch.conf
:afaik to wywołuje getgrent, który pobiera grupy (wpisy grupowe)
EDYCJA: kolejną rzeczą jest dodanie do
/etc/pam.d/common-auth
:Aby uzyskać więcej informacji, spójrz tutaj: Przypisz grupy lokalne do użytkowników, a może ten newgrp-and-groups-przypisany-via-pam-group-so
źródło
pam-auth-update
i ponownie uruchomiłeś nscd?Miałem prawie podobny problem: po zalogowaniu przy użyciu ssh brakowało niektórych grup. Zostało to rozwiązane poprzez zmianę /etc/nsswitch.conf:
źródło