2.9.9.15 Ограничение ресурсов пользователя
Окружение
- Версия ОС: 7.3
- Конфигурация ОС: Рабочая станция
- Редакция ОС: Все
Для ограничения ресурсов, доступных пользователю, используется конфигурационный файл /etc/security/limits.conf. Для включения лимитов необходимо добавить библиотеку PAM pam_limits.so в соответствующий модуль. Например, в файле /etc/pam.d/login:
sudo nano /etc/pam.d/login
должна присутствовать строка:
session required pam_limits.so
Для изменения лимитов отредактируйте файл /etc/security/limits.conf. Формат записи должен иметь вид:
<группа/пользователь> <лимит>(жёсткий/мягкий) <параметр> <значение>
Вместо <группа/пользователь> можно использовать:
-
*— для всех пользователей; -
@имя_группы— для группы пользователей (например,@users).
Описание лимитов:
hard— жесткий лимит (пользователь не может превысить это значение);soft— мягкий лимит (пользователь может временно увеличить его в пределах жесткого лимита);-
-— ограничивает одновременно и мягкий, и жесткий лимит одинаковым значением (если указать тип «-», но не задать параметр и значение, модуль не будет применять никаких ограничений для указанного пользователя или группы).
Описание параметров:
core— размер core-файлов (KB);data— максимальный размер данных (KB);fsize— максимальный размер файла (KB);memlock— максимальное заблокированное адресное пространство (KB);nofile— максимальное количество открытых файлов;rss— максимальный размер памяти для резидент-программ (KB);stack— максимальный размер стека (KB);cpu— максимальное процессорное время (MIN);nproc— максимальное количество процессов;as— ограничение адресного пространства (KB);maxlogins— максимальное число одновременных регистраций в системе;maxsyslogins— максимальное количество учётных записей;priority— приоритет запущенных процессов;locks— максимальное количество блокируемых файлов пользователем;sigpending— максимальное количество сигналов, которые можно передать процессу;msgqueue— максимальный размер памяти для очереди POSIX-сообщений (bytes);nice— максимальный приоритет, который можно выставить: [-20, 19];rtprio— максимальный приоритет времени выполнения.
После внесения изменений в PAM-файлы необходимо выйти из сеанса и войти заново.
Ограничение полномочий пользователей по использованию виртуальных терминалов
Ограничение полномочий пользователей по использованию виртуальных терминалов можно настроить следующим образом:
Откройте файл /etc/security/limits.conf на редактирование:
sudo nano /etc/security/limits.conf
и добавьте строку:
petrov hard maxlogins 2
Добавить строку можно следующей командой:
sudo sh -c 'echo "petrov hard maxlogins 2" >> /etc/security/limits.conf'
где petrov — имя пользователя, которому необходимо ограничить число запускаемых виртуальных терминалов.
Для ограничения количества запускаемых виртуальных терминалов для группы пользователей добавьте в файл /etc/security/limits.conf следующую строку:
@users hard maxlogins 2
где @users — это название группы пользователей (для обозначения группы перед её названием используется символ '@').
После добавления правила, ограничивающего число сеансов для пользователя petrov равным 2, при попытке открыть 3 сеанс в виртуальном терминале возникает ошибка вида:
Too many logins for 'petrov'.
Permission denied
Для ограничения количества допустимых tty (в том числе и отключение их) для всех пользователей в файле /etc/systemd/logind.conf:
sudo nano /etc/systemd/logind.conf
необходимо раскомментировать строку NAutoVTs= и указать число 1:
NAutoVTs=1
после перезагрузки доступ к остальным tty будет закрыт, вы увидите только черный экран.
Дата последнего изменения: 09.04.2026
Если вы нашли ошибку, пожалуйста, выделите текст и нажмите Ctrl+Enter.