刚刚开始使用Ansible,我在客户端计算机上设置了一个Asible用户,并从OpenSSL创建了一组密钥.我在自己的帐户下运行Ansible.我在Ansible配置中指定了用户和私钥文件.我希望远程命令以此用户和该用户的身份运行,以执行需要提升的命令.
/etc/ansible/ansible.cfg
private_key_file = /etc/ansible/pka/confman.crt
remote_user = confman
这样的命令在初始输入密码后不要求密码短语:
ansible all -m ping
每次运行时都会出现以下密码短语提示:
ansible all -m ping -b
Enter passphrase for key '/etc/ansible/private_keys/confman.crt':
(success)
ansible all -m ping --sudo
Enter passphrase for key '/etc/ansible/private_keys/confman.crt':
(success)
ansible all -a "cat /etc/redhat-release"
Enter passphrase for key '/etc/ansible/private_keys/confman.crt':
(success)
为什么?
有没有办法设置密码?有更安全的方式吗?我计划远程运行ansible,通过cron和其他自动化工具,输入密码短语不是一个选项.
作为上下文,我从来不需要在Linux服务器之间进行SSH,总是来自使用putty,RoyalTS和mRemoteNG等工具的Windows机器,因此我的ssh知识是……稀疏的.我想我错过了一些明显的东西.