当使用同步功能时,Ansible会提示输入密码

18

我正在以下方式使用ansible:

ansible-playbook -f 1 my-play-book.yaml --ask-pass --ask-sudo-pass

之后会要求输入ssh和sudo密码(两个密码相同)。

在我的playbook文件中,我正在使用同步任务:

synchronize: mode=push src=rel/path/myfolder/ dest=/abs/path/myfolder/

对于每个主机,我被提示输入远程主机的ssh密码(与开始运行playbook时输入的相同)

如何避免执行同步任务时输入密码?


1
你能否设置SSH密钥来代替密码,或者密码是必需的? - Mxx
1
我尝试设置密钥,可以手动通过SSH登录而无需输入密码。但是当我尝试使用Ansible时,被要求输入密码。 - Mizh
1
即使您删除 --ask-pass 参数,也是这样吗? - Mxx
1个回答

1
如果您在主机上正确设置了ssh密钥,则以下内容应该可以正常工作。
ansible all -m synchronize -a "mode=push src=rel/path/myfolder/ dest=/abs/path/myfolder/" -i <host>, -vvv

我能够在没有任何密码提示的情况下使上述内容工作。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接