【发布时间】:2018-05-20 03:20:00
【问题描述】:
我有一本通过 crontab 中的条目每天运行一次的剧本。对于剧本中定义的一些任务,我需要成为目标机器上的 root。因此我使用become 和ansible_become_pass 来获得sudo 权限。当我将它作为 cronjob 运行时,我无法使用 --ask-become-pass。另一方面,我不想将 sudo 密码以纯文本形式存储在我的 ansible hosts 文件中。我可以以某种方式将加密密码传递给 ansible 吗?
【问题讨论】:
-
但这不只是转移问题吗?最后我需要打电话给
--ask-vault-pass,这是我不能用cron做的 -
如果您按照 fernandezcuesta 的建议使用 ansible-vault,您可以生成一个变量并将其设置在您的 playbook 或加密的 vars 文件中。然后当你运行你的剧本时,你会发送一个额外的参数,其中包含同样加密的保险库密码文件路径,然后保险库将管理哈希......
-
ansible-vault将适合您的要求。请查看链接**docs.ansible.com/ansible/2.4/vault.html