Настройка по вводу пароля Sudo для каждой команды в Linux для пользователей.
Как вы, возможно, уже знаете, когда пользователь вводит команду с привилегиями sudo, пароль sudo запоминается на короткий промежуток времени.
По умолчанию пароль запоминается на 15 минут.
В течение этого времени пользователям не нужно вводить пароль для последующих команд, выполняемых вскоре после первой команды sudo, даже если они требуют привилегий sudo.
Что если вы хотите заставить пользователей постоянно вводить пароль sudo?
Этому мы сейчас и будем учиться.
Принудительная аутентификация по паролю в Sudo
Мы можем сделать это глобально для всех пользователей или применить это правило только для определенных пользователей.
Сначала рассмотрим глобальный способ.
Принудительная проверка подлинности пароля в Sudo глобально для всех пользователей
1. Отредактируйте файл /etc/sudoers, используя стандартный редактор:
$ sudo visudo
Мой текстовый редактор по умолчанию – nano.
2. Найдите следующую строку:
Defaults env_reset
И добавьте timestamp_timeout=0 рядом со строкой Defaults env_reset, как показано ниже:
Defaults env_reset, timestamp_timeout=0
Сохраните файл и закройте его.
Если ваш текстовый редактор – nano, нажмите CTRL+O и ENTER, а затем CTRL+X, чтобы сохранить файл и закрыть его. Е
сли это редактор Vi/Vim, нажмите ESC, введите :wq и нажмите ENTER, чтобы сохранить и закрыть файл.
Выйдите из текущей сессии и снова войдите в систему.
С этого момента все пользователи должны будут вводить пароль sudo каждый раз для каждой команды с префиксом sudo.
Как я уже сказал, это относится ко всем пользователям в системе.
Однако вы можете применить эту настройку только для определенных пользователей, как описано ниже.
Принудительная аутентификация Sudo по паролю для определенных пользователей
Вместо того чтобы заставлять всех пользователей постоянно вводить пароль для всех команд sudo, вы можете заставить только определенных пользователей вводить пароль для каждой команды sudo, добавив локальное содержимое в каталог /etc/sudoers.d/. Это лучший подход для принудительной аутентификации пароля sudo на основе каждого пользователя.
1. Перейдите в “/etc/sudoers.d/”:
$ cd /etc/sudoers.d/
2. Создайте файл конфигурации для каждого пользователя с помощью команды:
$ sudo visudo -f itsecforu
Замените “itsecforu” на свое имя пользователя в приведенной выше команде.
3. Добавьте в нее следующую строку:
Defaults timestamp_timeout=0
Сохраните файл и закройте его.
Выйдите из системы и снова войдите, чтобы применить изменения.
С этого момента пользователь “itsecforu” должен каждый раз вводить пароль для каждой команды sudo.
Однако другим пользователям в системе не нужно вводить пароль sudo.
Для других пользователей пароль по умолчанию запоминается на 15 минут.
Только через 15 минут пользователям придется вводить пароль для каждой команды sudo.
Заключение
В этом кратком руководстве мы рассмотрели простой, но полезный совет, как заставить всех пользователей или определенного пользователя вводить пароль sudo при выполнении команд в Linux.
Обратите внимание, что в некоторых случаях это может раздражать, так как пользователь вынужден вводить пароль для каждой операции sudo.
Используйте этот совет только в случае крайней необходимости.
см. также:
- 🐧 Запуск команд от имени другого пользователя через Sudo в системах Linux
- 🐧 Как отключить доступ ‘su’ для пользователей Sudo
- 🐧 Как восстановить привилегии Sudo для пользователя Ubuntu/ Debian
- 🐧 Как включить запись логов ввода-вывода sudo
- 👥 Как разрешить только определенные команды с помощью sudo на Linux
- 🔐 Добавление изюминки в сеанс sudo с помощью файла lecture на Linux или Unix