Почему sudo timestamp не обновляется при установке NOPASSWD?

Я установил sudo, чтобы не запрашивать пароль, редактируя файл sudoers:

myuser ALL=(ALL:ALL) NOPASSWD: ALL 

И он отлично работает, работает sudo без подсказки пароля. Но при входе в sudo -v я заметил, что он запрашивал пароль, только один раз. Я знаю, что sudo -v делает, из руководства:

Если задан параметр -v (validate), sudo будет обновлять отметку времени пользователя, запрашивая пароль пользователя, если это необходимо. Это продлит время ожидания sudo еще на 15 минут (или независимо от того, установлен ли тайм-аут в sudoers), но не выполняет команду.

И я знаю, что мне все равно не нужно его использовать (или я ошибаюсь?).

Вопрос в том, почему sudo -v запрашивал пароль при настройке sudo, чтобы не запрашивать у пользователя пароль? И особенно когда sudo -v запускается после этого другой командой sudo: почему временная метка не обновляется, если sudo -v не выполняется явно?

На моем компьютере работает Ubuntu Server 11.10, если это имеет значение.

EDIT: запуск sudo sudo -v требует пароля, но, похоже, не обновляет метку времени, потому что, когда сразу после нее следует sudo -v , он снова запрашивает пароль.

Каков механизм, используемый при обновлении временной метки sudo? Почему временная метка не обновляется при запуске любой команды sudo, а затем выполняется sudo -v ??

2 Solutions collect form web for “Почему sudo timestamp не обновляется при установке NOPASSWD?”

Почти наверняка, потому что параметр аутентификации по умолчанию установлен на . На странице man sudoers:

authenticate Если установлено, пользователи должны пройти аутентификацию через пароль, прежде чем они смогут запускать команды. Это значение по умолчанию может быть переопределено тегами PASSWD и NOPASSWD. По умолчанию этот флаг включен.

Другими словами, ваш флаг NOPASSWD отменяет требование пароля, но только для указанных команд. В любом другом случае требуется пароль. Это значение по умолчанию было добавлено, чтобы закрыть лазейку безопасности, вызванную командой sudo -l .

Учитывая, что файл sudoers – это что-то, что можно изменить, удаление параметра NOPASSWORD у вашего пользователя – это вариант, который может произойти в течение 15 минут после вашего вызова -v, поэтому для создания файла временной метки (который не существует / не является если вы вводите пароль), вас попросят ввести пароль.

Если вы хотите проверить, можете ли вы что-то запустить, я рекомендую вам запустить программу, чтобы проверить ее, например, идентификатор, тест или все, что подходит вашему прецеденту.

Редактирование: если вы запускаете sudo -v под sudo или любой другой командой в sudo, тот факт, что вы успешно выполнили команду sudo, не считается аутентификацией, только если вы ввели пароль или аутентифицировали с помощью PAM другим способом (отпечаток пальца, смарт-карта, закрытый ключ и т. д.).
В последних версиях Ubuntu (возможно, в других дистрибутивах) root может запускать sudo без пароля по умолчанию.

  • Копирование только новых файлов
  • Как я могу увидеть историческое время изменения файла?
  • Каков наиболее эффективный способ добавления миллисекунд к этому коду?
  • Почему прикосновение может меняться только все время, или ничего, если не владелец
  • find-cnewer сломан на NTFS-3g?
  • Временная отметка файла на установленном диске показывает 1 час отставания
  • Как мне выполнить ls, а затем отсортировать результаты по дате?
  • Изменение измененной даты файла в зависимости от даты в имени файла
  • Calc добавляет '(апостроф) при импорте времени из CSV
  • Изменение времени изменения файла для доступа к времени в массовом порядке
  • Возможно ли обновлять измененные времена только без копирования файлов при использовании rsync?
  • Interesting Posts

    rsync не перезаписывает новые файлы

    разархивировать в папку

    Почему добавление двоеточия нарушает этот шаблон grep?

    Где хранятся дистрибутивные пакеты Python во FreeBSD?

    Как я могу использовать DD для переноса данных со старого диска на новый диск?

    Как работает `env X = '() {(a) => \' sh -c" эхо-дата "?

    Как скрипт bash обнаруживает, работает ли он в фоновом режиме?

    объясните параметры команды readlink

    Почему я не могу разбить WV-файл?

    SSH Подключение к хостам с помощью туннеля

    Может ли суперпользователь (с «корневым» доступом) манипулировать данными в базе данных, установленной на сервере?

    Задача, не выполняемая crontab

    Возможно ли смоделировать установку пакетов Debian, по-прежнему маркируя их установленными?

    Почему ln -s не говорит, что сбой при создании символической ссылки на существующий символический каталог?

    Когда awk обрабатывает символ новой строки как `;`, а когда нет?

    Linux и Unix - лучшая ОС в мире.