Модуль pam_access

Модуль pam_access напоминает модуль pam_listfile, поскольку тоже связан с контролем доступа. Но.есть и два отличия. Во-первых, это модуль типа account. Данное отличие означает, что есть два схожих механизма ограничения доступа для модулей типа auth (pam_listf ile) и account (pam_access). Это позволяет управлять приложениями, которые не поддерживают тот или иной тип модулей.

Во-вторых, модуль pam_access требует наличия конфигурационного файла /etc/ security/access . conf. Записи этого файла имеют следующий формат:

привилегия : пользователи : источники

Назначение полей описано в табл. 5.14. При вызове модуля pam_access в файле access . conf ищется первая запись с соответствующим значением имени пользователя и адреса его подключения. Если совпадение не найдено, доступ предоставляется.

Предположим, например, что доступ к системе необходимо разрешить лишь определенным пользователям, работающим за определенными компьютерами. Образец файла /etc/security/access . conf приведен в листинге 5.24. Номера строк проставлены для наглядности и не являются частью файла. В строке 2 запрещается любой доступ из доменов evil. com и spam. org. В строке 3 запрещается любой доступ с консоли, если Таблица 5.14. Поля файла /etc/security/access . conf Поле Описание

привилегия "+" — если доступ предоставляется, "-" — если доступ запрещен

пользователи Список разделенных пробелами имен пользователей, i-рупп пользователей или сетевых групп. Именам сетевых групп должен предшествовать символ. Поддерживаются специальные ключевые слова ALL (соответствует любому имени) и EXCEPT (позволяет создавать списки с условиями) источники Список разделенных пробелами имен терминалов, компьютеров, доменов (любое имя, начинающееся с точки) или сетевых адресов (сетевая часть IP-адреса, оканчивающаяся точкой). Поддерживаются ключевые слова ALL (соответствует любому имени), LOCAL (соответствует любому имени, которое не оканчивается точкой) и EXCEPT (позволяет создавать списки с условиями) только это не суперпользователь. В строке 4 разрешается доступ всем пользователям, кроме root, если запрос поступает из сети 172.17.0.0. В строке 5 разрешается доступ всем членам группы wheel, а также пользователю paul компьютера leghorn. В строке 6 запрещается весь остальной доступ.

Листинг 5.24. Образец файла /etc/security/access . conf

1. access.conf file

2. -:ALL:.evil.com .spam.org

3. -:ALL EXCEPT root: ttyl

4. +:ALL EXCEPT root:172.17.

5. +:wheel paul:leghorn

6. -:ALL:ALL

Далее следует добавить строку

account required /lib/security/pam_access.so

во все необходимые файлы каталога /etc/pam. d. В листинге 5.25 показан пример файла /etc/pam. d/login.

Листинг 5.25. Вызов модуля pam_access в файле /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

account required /lib/security/pam_access.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

Любые попытки доступа в систему из запрещенных компьютеров или сетей будут приводить к выдаче сообщения Permission denied, как в листинге 5.26, где пользователь paul пытается зарегистрироваться с консоли.

Листинг 5.26. Неудачная попытка регистрации из-за ограничений модуля pam_access

pyramid login: paul Password: Permission denied pyramid login:

Все неудачные попытки регистрации, запрещенные из-за установок модуля pam_access, фиксируются в файле /var/log/messages.


Ведете ли вы блог?

Да
Нет
Планирую


Результаты опроса

Новостной блок