Изменить время ожидания пароля sudo по умолчанию

18

Когда я запускаю sudoи ввожу свой пароль, последующий вызов в sudoтечение нескольких минут не потребует повторного ввода пароля.

Как изменить время ожидания по умолчанию для повторного запроса пароля?

Том Хейл
источник

Ответы:

28

man sudoers говорит:

Как только пользователь прошел аутентификацию, [...] пользователь может использовать sudo без пароля в течение короткого периода времени (5 минут, если он не отменен этой timestamp_timeoutопцией).

Чтобы изменить время ожидания, запустите sudo visudoи добавьте строку:

Defaults        timestamp_timeout=30

где 30новый тайм-аут в минутах.

Чтобы всегда запрашивать пароль, установите на 0. Чтобы установить бесконечное время ожидания, установите значение как отрицательное.

Чтобы полностью отключить запрос пароля для пользователя ravi:

Defaults:ravi      !authenticate
Том Хейл
источник
3

Вам нужно отредактировать / etc / sudoers. Для тех, кто не использует vi, вы должны отредактировать этот файл (в некоторых версиях Linux) с помощью команды терминала, например:

sudo EDITOR=gedit visudo

Затем добавьте или измените timestamp_timeout:

# After authenticating, this is the amount of time after which
# sudo will prompt for a password again in the same terminal
Defaults    timestamp_timeout=30
Qwertie
источник
Правильным способом избежать viбудет установка $EDITORпеременной на что-то другое. Идея visudoсостоит не в том, чтобы звонить vi, а в том, чтобы люди не могли заблокировать себя (и кого-либо еще в зависимости от sudo) из своей rootучетной записи путем 1) копирования /etc/sudoersво временный файл, 2) обращения $EDITORк этому файлу, 3) запуска проверки синтаксиса этого файл и 4) со временем замена /etc/sudoersна обновленную версию.
Андреас Визе
visudoДокументация гласит: «Как правило, visudo не учитывает переменные среды VISUAL или EDITOR, если они не содержат редактора в вышеупомянутом списке редакторов» - и в списке по умолчанию используется только значение vi, при этом любой редактор считается дырой в безопасности. Но я могу утверждать, что это sudo EDITOR=gedit visudoработает на моей коробке CentOS 7.2. Проверка синтаксиса, которую он предоставляет, безусловно, является хорошей вещью.
Qwertie
Ах, да, спасибо за (дальнейшее) разъяснение, я пропустил это. Но IIRC вы также можете изменить редактор по умолчанию sudoersсам по себе - только для записи. Я уверен, что проверка синтаксиса скажет. ;)
Андреас Визе
3

sudo visudo это изменить файл конфигурации по умолчанию напрямую, но в файле есть предложение ниже

Пожалуйста, рассмотрите возможность добавления локального контента в /etc/sudoers.d/ вместо прямой модификации этого файла.

Таким образом, лучший способ это

cd /etc/sudoers.d
sudo visudo -f user_name

Добавить контент

Defaults timestamp_timeout=(number)

(number)это новый тайм-аут в минутах .

timestamp_timeout (человек 5 sudoers)

Количество минут, которое может пройти, прежде чем sudo снова запросит пароль. Тайм-аут может включать дробный компонент, если мелкая детализация недостаточна, например 2,5. По умолчанию установлено значение 15. Установите 0, чтобы всегда запрашивать пароль. Если задано значение меньше 0, отметка времени пользователя не истечет до перезагрузки системы. Это можно использовать, чтобы позволить пользователям создавать или удалять свои собственные метки времени через «sudo -v» и «sudo -k» соответственно.

Сохраните файл, нажав Ctrl+ Oи нажмите enter, и выйдите, используя Ctrl+ X.

Ключ Шан
источник