linux – 如何记住/缓存或指定Ansible的私钥密码
发布时间:2020-12-14 02:29:59 所属栏目:Linux 来源:网络整理
导读:刚刚开始使用Ansible,我在客户端计算机上设置了一个Asible用户,并从OpenSSL创建了一组密钥.我在自己的帐户下运行Ansible.我在Ansible配置中指定了用户和私钥文件.我希望远程命令以此用户和该用户的身份运行,以执行需要提升的命令. /etc/ansible/ansible.cfgp
刚刚开始使用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知识是……稀疏的.我想我错过了一些明显的东西. 解决方法
该功能称为ssh-agent:
$eval `ssh-agent` # you might have agent already running so this might not be needed $ssh-add /etc/ansible/private_keys/confman.crt 现在ansible应该能够在代理中找到密钥并进行身份验证,而不必每次都要求密码. From: Documentation: Your first commands (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |