Linux PAM

Назад к статьям

Пример использования Linux PAM.

Рассмотрим пример использования Linux PAM. Для демонстрации, буду использовать операционную систему openSUSE Linux 15.2.


Linux PAM


Задача: запрет перехода под пользователя, посредством команды su.

Перехожу в директорию pam.d

cd /etc/pam.d
Смотрю содержимое

ls


Команда ls отображает содержимое директории pam.d


Нужно отредактировать файл su находящийся в /etc/pam.d

sudo nano su

Добавляю комментарий

#I add

затем, ниже, две строки

auth required pam_listfile.so \
onerr=succeed item=user sense=access file=/etc/myblockusers


Linux PAM


  • pam_listfile.so - модуль, позволяет ограничить доступ для пользователей на основе файла со списком. В openSUSE Linux от расположен в директории /lib64/securit
  • onerr=succeed - опция и значение, доступ разрешить если возникает ошибка
  • item=user - файл конфигурации содержит имена пользователей
  • sense=deny либо sense=access - если имя пользователя содержится в файле. то запретить либо разрешить. В зависимости от значения sense=
  • file=/etc/myblockusers - файл с именами пользователей


Файл pam_listfile.so в /lib64/security/


Создам тестового пользователя myuser

sudo useradd -m -G users myuser


Добавление нового пользователя командой useradd


Задам пароль пользователю myuser

passwd myuser

Создам файл myblockusers и добавлю в него строку с именем пользователя myuser. Для этого, перейду под root и зайду в директорию /etc

echo 'myuser' > myblockusers


Имена пользователей хранятся в файле, создаю его


Пробую зайти в систему под пользователем myuser

su myuser


Пользователь авторизовался


Успешно.

А теперь изменю значение sense= на deny

sudo nano su

Сохраняю изменения в файле и выхожу

Пробую теперь

su myuser

Результат: Сбой при проверке подлинности

Не удачная попытка авторизации