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, można wszystko konfigurować pojedynczymi plikami konfiguracyjnymi, zlokalizowanymi w katalogu /etc/pam.d/. Obecność tego katalogu spowoduje, że Linux-PAM zignoruje /etc/pam.conf.
Vendor-supplied PAM configuration files might be installed in the system directory /usr/lib/pam.d/ instead of the machine configuration directory /etc/pam.d/. If no machine configuration file is found, the vendor-supplied file is used. All files in /etc/pam.d/ override files with the same name in /usr/lib/pam.d/.
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
the Linux-PAM vendor configuration directory. Files in /etc/pam.d override files with the same name in this directory.
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(7)
TŁUMACZENIE
Autorami polskiego tłumaczenia niniejszej strony podręcznika są: Przemek Borys <pborys [AT] dione.pl> i Michał Kułach <michal.kulach [AT] 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 lub nowszej. Nie przyjmuje się ŻADNEJ ODPOWIEDZIALNOŚCI.
Błędy w tłumaczeniu strony podręcznika prosimy zgłaszać na adres <manpages-pl-list [AT] lists.net>.