PAM(8)

NAZWA
PAM, pam - dołączalne moduły uwierzytelniania do Linuksa (ang. Pluggable Authentication Modules)

OPIS

Podręcznik ten ma na celu danie krótkiego wprowadzenia do Linux-PAM. W celu uzyskania dalszych informacji, czytelnik jest odsyłany do Linux-PAM system administrators' guide.

Linux-PAM jest systemem bibliotek, które zajmują się zadaniami uwierzytelniania aplikacji (usług) systemu. Biblioteka daje stabilny i ogólny interfejs (API), któremu podlegają w zadaniach uwierzytelniania programy dające przywileje (takie jak login(1) i su(1)).

Podstawową właściwością podejścia PAM jest to, że natura uwierzytelniania jest dynamicznie konfigurowalna. Innymi słowy, administrator systemu ma pełne pole do popisu w wybieraniu sposobu uwierzytelniania poszczególnych aplikacji. Ta dynamiczna konfiguracja jest ustawiana zawartością pojedynczego pliku konfiguracyjnego Linux-PAM czyli /etc/pam.conf. Alternatywnie (co jest zalecane), można wszystko konfigurować pojedynczymi plikami konfiguracyjnymi, zlokalizowanymi w katalogu pam.d/. Obecność tego katalogu spowoduje, że Linux-PAM zignoruje /etc/pam.conf.

Zapewnione przez dostawcę pliki konfiguracyjne PAM mogą być instalowane w katalogu systemowym /usr/lib/pam.d/ lub w innym, ustalonym przez dostawcę katalogu, zamiast katalogu konfiguracyjnego komputera /etc/pam.d/. Jeśli plik konfiguracyjny komputera nie zostanie znaleziony, używany jest plik zapewniony przez dostawcę. Wszystkie pliki w /etc/pam.d/ przesłaniają pliki o tych samych nazwach, w innych katalogach.

Z punktu widzenia administratora systemu, dla którego przeznaczony jest ten podręcznik, nie jest ważne zrozumienie wewnętrznego działania biblioteki Linux-PAM. Ważną rzeczą jest natomiast rozumienie, że plik(i) konfiguracyjne definiują połączenia między aplikacjami (usługami) a dołączalnymi modułami uwierzytelniania (PAM-ami), które dokonują rzeczywistych zadań uwierzytelniania.

Linux-PAM rozdziela zadania uwierzytelniania na cztery niezależne grupy zarządzania: zarządzanie kontem (account); zarządzanie uwierzytelnianiem (authentication); zarządzanie hasłami (password); i zarządzanie sesją (session). (podświetlamy skróty używane dla tych grup w pliku konfiguracyjnym.)

Po ustawieniu, grupy te będą się zajmowały różnymi aspektami typowego żądania zastrzeżonej usługi przez użytkownika:

account - daj usłudze możliwość weryfikacji konta: czy hasło użytkownika jest przedawnione?; czy użytkownik ma prawo dostępu do żądanej usługi?

authentication - ustal czy użytkownik jest tym, za którego się podaje. Zazwyczaj robi się to poprzez zapytanie użytkownika o pewną odpowiedź, której musi udzielić: jeśli jesteś tym, za kogo się podajesz, podaj proszę swoje hasło. Nie wszystkie uwierzytelnienia są tego rodzaju, istnieją też sprzętowe schematy uwierzytelniania (takie jak używanie urządzeń biometrycznych), które mają odpowiednie moduły, nadające się do bezproblemowego podstawienia za standardowe modele uwierzytelniania - oto elastyczność Linux-PAM.

password - zadaniem tej grupy jest odświeżanie mechanizmów uwierzytelniania. Zazwyczaj usługi takie są ściśle związane z tymi z auth. Niektóre mechanizmy uwierzytelniania dobrze nadają się do odświeżania tą funkcją. Oczywistym przykładem jest standardowy UN*X-owy dostęp oparty o hasło: proszę wstawić hasło zamienne.

session - zadania tej grupy obejmują rzeczy, które powinny być dokonane przed daniem usługi oraz po jej wycofaniu. Zadania takie to m.in obsługa śladów rewizyjnych i montowanie katalogu domowego użytkownika. Grupa obsługi sesji jest ważna, gdyż udostępnia zarówno hak otwierający, jak i zamykający modułów.

PLIKI

/etc/pam.conf
    plik konfiguracyjny

/etc/pam.d
    Katalog konfiguracji Linux-PAM. Generalnie, jeśli katalog ten jest obecny, to plik /etc/pam.conf jest ignorowany.

/usr/lib/pam.d
    Katalog konfiguracji Linux-PAM dostawcy. Pliki w /etc/pam.d przesłaniają pliki o tych samych nazwach w tym katalogu.

BŁĘDY

Typowe błędy generowane przez system Linux-PAM są zapisywane do syslog(3).

ZGODNE Z

DCE-RFC 86.0, Październik 1995. Zawiera dodatkowe właściwości, ale jest wstecznie kompatybilny z tym RFC.

ZOBACZ TAKŻE

pam(3), pam_authenticate(3), pam_sm_setcred(3), pam_strerror(3), PAM(8)

TŁUMACZENIE
Tłumaczenie niniejszej strony podręcznika: Przemek Borys <pborys@dione.ids.pl> i Michał Kułach <michal.kulach@gmail.com>

Niniejsze tłumaczenie jest wolną dokumentacją. Bliższe informacje o warunkach licencji można uzyskać zapoznając się z GNU General Public License w wersji 3 (https://www.gnu.org/licenses/gpl-3.0.html) lub nowszej. Nie przyjmuje się ŻADNEJ ODPOWIEDZIALNOŚCI.

Błędy w tłumaczeniu strony podręcznika prosimy zgłaszać na adres listy dyskusyjnej manpages-pl-list@lists.sourceforge.net.