sudo запрашивает пароль на некоторых серверах

sudo запрашивает пароль на некоторых серверах

У меня есть несколько правил sudo, настроенных для многих (виртуальных) серверов (в основном Debian), которые будут использоваться скриптами Zabbix:

zabbix ALL=NOPASSWD: /etc/init.d/exim4 restart

Файл конфигурации zabbix-agent и sudo ( /etc/sudoers.d/zabbix-agent) распространяется через ansible и является одинаковым для всех серверов.

Однако на некоторых серверах sudo запрашивает пароль. На других — нет. Это одинаково, запускаю ли я команду с помощью zabbix или локально:

# sudo -u zabbix sudo /etc/init.d/exim4 restart

Иногда это работает, а иногда запрашивает пароль.

Я изучил этот вопрос, и очевидный ответ, что для пользователя zabbix в конфигурации sudo есть другое правило, не соответствует действительности.

Какие еще факторы могут привести к тому, что система запросит пароль?

решение1

Итак, было два источника ошибок:

  1. Каталог sudoers.dне был включен в /etc/sudoers. В большинстве современных систем это значение по умолчанию, поэтому достаточно просто перетащить файл, но были некоторые старые системы, которые изначально были установлены с Debian Lenny и сохранили старый файл sudoers.
  2. Никакой exim не был установлен, поэтому /etc/init.d/exim4не существовал. Теперь это тоже ошибка пользователя в некотором роде, но это такжеочень паршивый отчет об ошибкахдля sudo. Я понимаю, что сообщение о попытке выполнить некоторые файлы может привести к утечке информации (однако в конфигурации sudo есть явное правило для этого исполняемого файла, поэтому я не совсем уверен, что это веская причина), но система сообщает об ошибке, если я ввожу правильный пароль.

Связанный контент