加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 综合聚焦 > 服务器 > Linux > 正文

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

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读