Таймаут запроса пароля при выполнении sudo. Linux статьи
Написать статью
Войдите, чтобы писать статьи

Таймаут запроса пароля при выполнении sudo

1

При выполнении команд через sudo при первом запуске запрашивается пароль. Последующие команды выполняются уже без пароля. Через какой-то промежуток времени пароль запрашивается снова. По умолчанию время sudo-сессии 15 минут.

Рассмотрим, как изменить время запроса пароля для sudo, а также, как запрашивать пароль при каждом выполнении sudo.

Изменение времени сессии sudo

Необходимо изменить настройки sudo. Для этого выполните команду:

sudo visudo

Откроется текстовый редактор (обычно это nano) с конфигурационным файлом.
sudo visudo

Найдите строку:

Defaults env_reset

Допишите в конце строки через запятую следующую опцию timestamp_timeout=x. Должно получиться:

Defaults env_reset, timestamp_timeout=10

Здесь 10 — это и есть время в минутах через которое sudo будет запрашивать пароль.

sudo timeout

Сохрание изменения и закройте редактор:

  • Для этого нажмите сочетание клавиш Ctrl+X.
  • Появится сообщение «Сохранить измененный буфер?» (Save modified buffer?), нажмите клавишу Y, чтобы сохранить изменения или N, чтобы отменить изменения.
  • Если на предыдущем шаге вы нажали Y, то появится сообщение «Имя фала для записи: /etc/sudoers.tmp» (File Name to Write: /etc/sudoers.tmp) — просто нажмите клавишу Enter.
timestamp_timeout — определяет время в минутах, которое должно пройти, чтобы при выполнении sudo снова запросился пароль. Время можно вводить целым или десятичным числом. Например, чтобы задать таймаут равным 2 с половиной минуты, нужно указать timestamp_timeout=2.5.

Запрос пароля при каждом выполнении sudo

Если timestamp_timeout указать равным 0, то пароль будет запрашиваться при каждом выполнении команды sudo.
sudo timeout 0

Прервать sudo сессию

Если, например, вы уже ввели sudo пароль и вам необходимо сделать так, чтобы пароль был запрошен снова при следующем выполнении sudo, то можно прервать sudo сессию. Для этого используется ключ -k. Выполните команду:

sudo -k

Теперь при следующем выполнении sudo, вновь будет запрошен пароль.

Войти в терминал как root

Предположим, вы открыли окно терминала и вам нужно выполнять какой-то набор команд от имени суперпользователя. Можно перед каждой командой вводить sudo, а можно внутри терминала запустить shell от имени root’а. Для этого используется ключ -s. Выполните команду:

sudo -s

Обратите внимание, что теперь вы работаете от имени пользователя root, поэтому пока вы работаете в данном окне терминала, пароль для sudo вводите не нужно. Чтобы выйти из sudo-сессии (закрыть root-shell) выполните команду exit. sudo -s эквивалентно выполнению команды echo $SHELL.

sudo linux root shell

Видео:

Лайков: +2
войдите, чтобы ставить лайки
1
  • Опубликовано: 22.11.2018

Комментарии

pondogor
22.11.2018
14:21
Постоянная ссылка на комментарийПостоянная ссылка на комментарий
+3
войдите, чтобы ставить лайки
Ещё кое чего, в эмуляторе терминала при вводе пароля sudo, совсем не видно сколько символов было введено, так как вовсе ничего не отображается...
Разговор/рассуждение зачем и почему, удобно/полезно оно или нет, так было сделано оставим в стороне, давайте просто добавим отображение звёздочек (примерно как в диалогах gksu), тем кому этого хочется...
Как и в теме, делается это добавлением в файл /etc/sudoers строчки:
Defaults env_reset,pwfeedback
Добавьте в тему, типа как бонус...

Написать комментарий

Ваше имя:
Текст комментария:
  • Уважать других.
  • Не ругаться.
  • Без оскорблений.
  • Без грубости.
  • Не переходить на личности.
  • Писать на русском языке.
  • Без политики.
  • Без флуда.
Правила