Składnia kontrolna „success = n” w plikach pam.conf / pam.d / *


16

Po pomyślnej konfiguracji Kerberos, oto co znalazłem w /etc/pam.d/common-authpliku:

auth    [success=2 default=ignore]      pam_unix.so nullok_secure
auth    [success=1 default=ignore]      pam_winbind.so krb5_auth krb5_ccache_type=FILE cached_login try_first_pass
auth    requisite                       pam_deny.so
auth    required                        pam_permit.so

Czy success=2wartość kontrolna oznacza, że ​​w przypadku pam_unix.so niepowodzenia uwierzytelnienie przechodzi do auth requisite pam_deny.solinii lub do ostatniej linii?

Odpowiedzi:


17

Z mojego zrozumienia success=$numokreślę, ile reguł należy pominąć po pomyślnym zakończeniu. Więc jeśli jedna pam_unix.solub pam_winbind.souda, PAM będzie przejść do końcowego linii. Oczywiście ostatnia linia pozwala na dostęp we wszystkich przypadkach.


Żeby było jasne; Linie 1 i 2 przejdą do linii 4, jeśli któraś z nich się powiedzie. Ma sens.
Jamie

Dziękuję za odpowiedzi na moje inne pytania PAM: okazuje się, że wszystkie moje pytania były dyskusyjne; Ograniczałem logowanie ssh do konkretnej listy użytkowników i zapomniałem o tym, gdy dodałem uwierzytelnianie domeny. Kiedy dodałem Kerberos, zmodyfikował on poprawnie pliki PAM w celu uwierzytelnienia AD.
Jamie

2

pam.d (5) - strona podręcznika użytkownika systemu Linux

W przypadku bardziej skomplikowanej składni prawidłowe wartości kontrolne mają następującą postać:
[value1=action1 value2=action2 ...]
AkcjąN może być: liczba całkowita bez znaku, n, oznaczająca akcję „przeskocz przez kolejne n modułów na stosie”

Co mówi autor:

  1. Jeśli lokalne uwierzytelnianie w systemie UNIX zakończy się powodzeniem , przeskocz dwa moduły do ​​czwartego modułu (moduł 1 + 2 moduły, aby przejść -> moduł 4). W przeciwnym razie zignoruj ​​wynik lokalnego uwierzytelnienia i przejdź do następnego modułu.
  2. Jeśli winbind (obecnie zastąpiony sssd) z uwierzytelnianiem Kerberos zwraca sukces , przeskocz jeden moduł do modułu 4. W przeciwnym razie zignoruj ​​wynik lokalnego uwierzytelnienia i przejdź do następnego modułu.
  3. Odrzuć żądanie uwierzytelnienia. Wynik jest finalizowany, gdy DENIED i PAM zatrzymuje się na nim (działanie zdefiniowane dla wymaganej kontroli).
  4. Pozwól wszystkim. Wynik jest finalizowany jako ZEZWOLONY, ale przejście do następnego modułu (czynność zdefiniowana dla wymaganej kontroli). Jednak nie ma już modułu do wykonania, więc kończy się na tym.
Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.