Ansible - 建立初始SSH连接

时间:2016-12-11 07:24:42

标签: ssh ansible

我正在尝试将SSH公钥复制到新创建的VM:

- hosts: vm1
  remote_user: root
  tasks:
    - name: deploy ssh key to account
      authorized_key: user='root' key="{{lookup('file','/root/.ssh/id_rsa.pub')}}"

但是得到错误:

  

致命:[jenkins]:无法忍受! => {"更改":false," msg":"无法通过ssh连接到主机:权限被拒绝(publickey,gssapi-keyex,gssapi-with-mic,密码)。\ r \ n","无法访问":true}

所以建立SSH我首先需要建立SSH?

如何自动为新创建的KVM建立SSH,无需手动密钥复制。

host_key_checking = False中的ancible.cfg

2 个答案:

答案 0 :(得分:2)

假设目标计算机允许使用密码进行root登录(从错误消息中看起来确实如此),您必须为您的剧本提供凭据:

ansible-playbook playbook.yml --extra-vars "ansible_ssh_user=root ansible_ssh_pass=password"

答案 1 :(得分:0)

当我遇到同样的问题时,我尝试过(并且有效)的东西:

ansible target-server-name -m command -a "whatever command" -k

-k 提示您输入目标服务器的ssh密码。

/ etc / ansible / hosts 文件中添加以下更改:

[target-server-name]
target_server_ip

示例:

ansible target-server-name -m ping -k
相关问题