我正在寻找一种在 ansible 中安全处理密码的方法。基本上,我想避免每次在远程机器上需要 root 或管理员访问权限时都输入我的密码,但要保持一些安全性(我知道任何解决方案都会稍微降低安全性,但在进行大量开发工作时这是一个不错的权衡)。
类似于 ssh-agent 的东西会很完美,我可以在其中输入一次密码(在开始开发工作或登录时),然后在我保持登录状态时它不会再次提示。理想情况下,该解决方案将同时支持 Linux 和 Windows。
我知道我可以ansible_password
在配置文件中设置,或者在 Linux 机器上设置 NOPASSWD,但是这些选项都不是很安全,而且后者不适用于 Windows。
也许某种可以解密一次并存储在 ansible 可以访问的内存中安全(ish)位置的加密保险库?
您的大部分秘密数据都应该使用ansible vault进行加密。然后,您只需在运行时提供保管库密码。
由于您不想在每次运行时都输入密码,因此您可以在互联网上找到几个有关如何执行此操作的示例,但您基本上可以
vault_password_file =
在 ansible.xml 中设置 a。 cfg 指向一个脚本。在该脚本中,您可以使用 GPG 代理暂时存储您的保管库凭据。