ansible - зашифровать ansible_become_pass - PullRequest
0 голосов
/ 18 мая 2018

У меня есть книга игр, которая запускается один раз в день через запись в crontab.Для выполнения некоторых задач, описанных в playbook, мне нужно стать пользователем root на целевой машине.Таким образом я использую become вместе с ansible_become_pass, чтобы получить привилегии sudo.Поскольку я запускаю его как cronjob, я не могу использовать --ask-become-pass.С другой стороны, я не хочу хранить пароль sudo в виде обычного текста в моем файле ansible hosts.Можно ли как-нибудь передать зашифрованный пароль на ansible?

1 Ответ

0 голосов
/ 19 мая 2018

У меня была похожая проблема, и мое лучшее решение состояло в том, чтобы создать скрипт (на Python), который будет запрашивать пароль ansible-valut каждый раз, когда он запускался (я помещал скрипт в crontab @reboot).Когда я ввел пароль, он был бы сохранен в переменной, поэтому он присутствовал в памяти, пока программа работала в фоновом режиме (для запуска в фоновом режиме она разветвлялась и перенаправляла stdout и STDERR ).Затем сценарий будет использовать «дочерний» модуль Python для выполнения заданной книги воспроизведения (или команды) и автоматической отправки пароля хранилища.После каждого выполнения ANSI программа спала 24 часа.

Я просто хотел дать вам представление о возможном обходном пути.Технически это не сервис / демон, но он не очень отличается.

...