Процедура выполнения запроса в соответствии с листингом 5.6. Когда Мэри выполняет команду passwd, вызывается ядро Linux-PAM. Оно читает файл /etc/pam/d/passwd и активизирует все перечисленные в нем модули. Сначала Мэри получает приглашение на ввод старого пароля для аутентификации.
/etc/pam.d/passwd
Это происходит из-за наличия записи pam_unix типа auth. Далее вызывается модуль pam_unix типа account, который проверяет параметры учетной записи Мэри (в частности, не устарел ли ее пароль). Затем Мэри предлагается ввести новый пароль (модуль pam_cracklib типа password). Наконец, после успешного ввода нового пароля модуль pam_unix типа password обновляет соответствующую базу данных паролей, Теперь у Мэри новый пароль.
Примечание
Суперпользователь не связан никакими ограничениями и может поменять пароль любого пользователя
Файл login
Файл /etc/pam. d/login читается системой при вызове программы /bin/login. Пример этого файла показан в листинге 5.11. Его суть должна быть в общих чертах понятна читателям. Мы проанализируем этот файл по типам модулей.
Листинг 5.11. Файл /etc/pam. d/login
auth required /lib/security/pam_securetty.so
auth required /lib/security/pam_unix.so
auth required /lib/security/pam_nologin.so
account required /lib/security/pam_unix.so
password required /lib/security/pam_cracklib.so minlen=20\
retry=3 type= =SECRET
password required /lib/security/pam_unix.so md5 use_authtok
session required /lib/security/pam_unix.so