Ограничение использования консолей
Модуль pam_access обеспечивает управление входом в систему. Этот модуль может использоваться для принятия решения о том, каким пользователям разрешен вход в систему. Так как PAM имеет средства аутентификации по сети, то контролируется не только кто может или не может зайти, но и откуда.
По умолчанию правила управления доступом берутся из файла конфигурации /etc/security/access.conf.
Чтобы ограничить консольный доступ для пользователей/групп с помощью модуля pam_access.so необходимо внести изменения в файл /etc/security/access.conf.
Чтобы ограничить локальный доступ для всех пользователей, кроме пользователя 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 localhost
Далее необходимо сконфигурировать стек PAM для использования модуля pam_access.so для ограничения доступа на основе ограничений, определенных в файле /etc/security/access.conf. Для этого дописать в файл /etc/pam.d/system-auth-local строку account required pam_access.so
после строки account required pam_tcb.so
:
auth required pam_tcb.so shadow fork prefix=$2y$ count=8 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 prefix=$2y$ count=8 nullok write_to=tcb
session required pam_tcb.so
session required pam_mktemp.so
session required pam_limits.so
Документация:
man access.conf