Ansible:权限被拒绝(公钥,密码)

Ansible:权限被拒绝(公钥,密码)

我无法在 Ansible 中连接到主机。这是错误:

192.168.1.12 | UNREACHABLE! => { "changed": false, "msg": "错误!SSH 在连接过程中遇到未知错误。我们建议您使用 -vvvv 重新运行该命令,这将启用 SSH 调试输出以帮助诊断问题", "unreachable": true }

这是我的hosts文件:

[test]
192.168.1.12

这是临时指令:

ansible all -m ping

我可以通过原始连接ssh

答案1

它返回的错误说明了一切,主机无法访问,因为 ssh 不起作用。看看命令在 ansible 中执行:

ping - 尝试连接到主机,验证可用的 python 并在成功时返回 pong。

如果您可以执行原始 ssh,则不能确保 ansible 也可以。您需要设置基于密钥的 ssh 或添加密码选项:

ansible all -m ping --ask-pass

与远程机器对话时,Ansible 默认假定您正在使用 SSH 密钥。我们鼓励使用 SSH 密钥,但也可以在需要时通过提供选项来使用密码验证--ask-pass。如果使用 sudo 功能并且 sudo 需要密码,也请提供 --ask-sudo-pass

参考: http://docs.ansible.com/ansible/intro_getting_started.html

答案2

通过删除 /etc/ansible/hosts 文件中的 ansible_become=true 来解决。

相关内容