Кэширование учетных данных sudo по умолчанию

Просто установил минимальный Ubuntu 12.04, затем установил xfce4 и xinit из командной строки после первой загрузки. Абсолютно ванильная инсталляция afaik.

Я замечаю, что sudo кеширует пароль до тех пор, пока не введу sudo -k для его очистки.

Это неожиданное поведение в моей голове. Я раньше запускал xfce4 и не помню, чтобы было включено кэширование учетных данных, и я не испытывал этого во многих предыдущих установках Ubuntu, которые у меня были за эти годы.

Это новая функция Ubuntu? Это результат минимальной установки? Это xfce по умолчанию, который был добавлен недавно?

4
задан 19 September 2012 в 00:20

1 ответ

На самом деле он кэширует право поднять, но не ваш пароль, и делал это довольно давно. Тем не менее, он делает это только в течение пятнадцати минут , по умолчанию. Это по замыслу:

Из http://linux.die.net/man/8/sudo :

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

и в качестве замечания по безопасности от man sudoers :

sudo проверит принадлежность своего каталога отметок времени (/ var / db / sudo по умолчанию) и игнорировать содержимое каталога, если оно не принадлежит пользователю root или доступно для записи пользователю, отличному от root. В системах, которые позволяют пользователям без полномочий root отдавать файлы с помощью chown (2), если каталог меток времени находится в каталоге, доступном для записи кем-либо (например, / tmp), пользователь может создать каталог меток времени до запуска sudo. Однако, поскольку sudo проверяет владение и режим каталога и его содержимого, единственное, что можно сделать, это «скрыть» файлы, поместив их в метку времени dir. Это вряд ли произойдет, так как, если dir метки времени принадлежит root и недоступен любому другому пользователю, пользователь, размещающий файлы, не сможет их вернуть. Чтобы обойти эту проблему, вы можете использовать каталог, который не доступен для записи для меток времени (например, / var / adm / sudo) или создать / var / db / sudo с соответствующим владельцем (root) и разрешениями (0700) в файлах запуска системы.

и с той же страницы:

Поскольку файлы меток времени находятся в файловой системе, они могут пережить сеанс входа пользователя в систему. В результате пользователь может войти в систему, выполнить команду с sudo после аутентификации, выйти из системы, снова войти в систему и запустить sudo без аутентификации, если время изменения файла метки времени составляет 5 минут (или любое другое время ожидания установлено). в sudoers). Когда опция tty_tickets включена в sudoers, отметка времени имеет значительную степень детализации, но все же может пережить сеанс пользователя. В системах Linux, где используется файловая система devpts, в системах Solaris с файловой системой устройств, а также в других системах, использующих файловую систему devfs, которые монотонно увеличивают число inode-устройств при их создании (например, Mac OS X), sudo может определить, является ли файл отметки времени на основе tty устаревшим, и будет игнорировать его. Администраторы не должны полагаться на эту функцию, так как она не всегда доступна.

Как видно из здесь , такое поведение сохраняется в течение длительного времени.

Если вы хотите изменить это, используйте visudo, чтобы установить опцию timestamp_timeout.

0
ответ дан 19 September 2012 в 00:20

Другие вопросы по тегам:

Похожие вопросы: