我生成了ssh密钥,并将其复制到远程服务器。当我尝试SSH到该服务器时,一切正常:

ssh user@ip_address

用户不是root。如果我尝试ssh抛出ansible:
ansible-playbook -i hosts playbook.yml

与ansible剧本:
---
- hosts: web
  remote_user: user
  tasks:
    - name: test connection
      ping:

和主机文件:
[web]
192.168.0.103

我收到错误消息:
...
Permission denied (publickey,password)

有什么问题?

最佳答案

与您用于连接到该“网络”计算机的密钥相比,Ansible使用的密钥不同。

您可以通过以下方式显式配置ansible以使用特定的私钥:

private_key_file=/path/to/key_rsa

the docs中所述确保使用ssh-copy-id -i /path/to/key_rsa.pub user@webmachine_ip_address将可使用的密钥授权给远程计算机中的远程用户

07-24 09:38
查看更多