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

Материал из ALT Linux Wiki

Модуль pam_access обеспечивает управление входом в систему. Этот модуль может использоваться для принятия решения о том, каким пользователям разрешен вход в систему. Так как PAM имеет средства аутентификации по сети, то контролируется не только кто может или не может зайти, но и откуда.

По умолчанию правила управления доступом берутся из файла конфигурации /etc/security/access.conf.

Чтобы ограничить консольный доступ для пользователей с помощью модуля pam_access.so необходимо внести изменения в файл /etc/security/access.conf.

Примечание: Чтобы ограничить консольный доступ для пользователей/групп можно также воспользоваться модулем ЦУС Блокировка терминала.


Примечание: Формат файла /etc/security/access.conf:
permission:users:origins
  • permission — знак «+» (плюс) — предоставление доступа, или знак «-» (минус) — отказ в доступе;
  • users — список пользователей или групп пользователей или ключевое слово ALL;
  • origins — список TTY (для локального доступа), имен хостов, доменных имен, IP-адресов, ключевое слово ALL или LOCAL.


Чтобы ограничить локальный доступ для всех пользователей, кроме пользователя root, следует внести следующие изменения:

# vim /etc/security/access.conf
-:ALL EXCEPT root: ALL localhost

Чтобы ограничить доступ для всех пользователей, кроме пользователя root, на всех текстовых консолях следует внести следующие изменения:

# vim /etc/security/access.conf
-:ALL EXCEPT root: tty2 tty3 tty4 tty5 tty6 localhost

Доступ может быть ограничен для конкретного пользователя:

# vim /etc/security/access.conf
-:user: tty2 tty3 tty4 tty5 tty6 localhost

Доступ может быть ограничен для группы, содержащей несколько пользователей:

# vim /etc/security/access.conf
-:group:tty1 tty2 tty3 tty4 tty5 tty6 LOCAL

Далее необходимо сконфигурировать стек PAM для использования модуля pam_access.so для ограничения доступа на основе ограничений, определенных в файле /etc/security/access.conf. Для этого дописать в файл /etc/pam.d/system-auth-local-only строку account required pam_access.so после строки account required pam_tcb.so:

auth            required        pam_tcb.so shadow fork nullok
account         required        pam_tcb.so shadow fork
account         required        pam_access.so
password        required        pam_passwdqc.so config=/etc/passwdqc.conf
password        required        pam_tcb.so use_authtok shadow fork nullok write_to=tcb
session         required        pam_tcb.so

Документация:

man access.conf