Должны ли мы действительно использовать chef для управления файлом sudoers?

Это мой вопрос. Я обеспокоен тем, что если Chef что-то сломает в файле sudoers, возможно, пользователем Chef, который неправильно использует кулинарную книгу, то сервер будет полностью недоступен.

Я не хотел бы, чтобы мы полностью потеряли производственный сервер для клиента, потому что мы испортили файл sudoers и больше не можем ssh в коробке.

1 ответ

Решение

Шеф-повар имеет функцию, чтобы помочь с этим, верификаторы. Вы можете настроить verifies на вашем шаблоне sudoer вот так:

template '/etc/sudoers' do
  source 'whatever.erb
  verify 'visudo -c -f %{path}'
end

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

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