如何在ansible cli上传递密码?

时间:2018-05-18 09:46:18

标签: ansible

我正在运行以下命令,

ansible --args="top -b n1" --connection=ssh --inventory-file=xx.xx.xxx.xxx, all --extra-vars="ansible_user=devuser" --private-key /opt/hivecenter/keys/id_rsa_135
Enter passphrase for key '/opt/hivecenter/keys/id_rsa_135':

由于此密钥是密码短语保护,它会提示我提供密码短语,但我想在命令本身中提供密码短语。怎么做?

2 个答案:

答案 0 :(得分:1)

你真的需要密钥的密码吗?如果您的系统是安全的,则不一定需要密码。此外,建议不要在命令中以明文形式发送密码短语,因为在运行命令时,该命令将保存在命令行历史记录中。

This answer might be your best choice

另一种选择是使用Python和Pexpect模块来执行命令并自动发送密码。

答案 1 :(得分:0)

如果您正在使用Python(或者不介意使用它),您可以使用pexpect模块在后台执行Ansible命令并自动传递密码。