Ansible可以使用流浪不安全的公钥

时间:2017-11-24 10:00:49

标签: vagrant ansible ansible-inventory

我在osx上使用Ansible 2.4.1.0和Vagrant 2.0.1与VirtualBox,虽然我的流浪盒配置工作正常,但是当我尝试ping时,我得到了一个无法访问的错误:

➜  ansible all -m ping
vagrant_django | UNREACHABLE! => {
    "changed": false, 
    "msg": "Failed to connect to the host via ssh: Permission denied (publickey,password).\r\n", 
    "unreachable": true
}

针对类似问题提供的解决方案对我来说并不起作用(比如在我的ansible配置中添加vagrant不安全的pub键)。我只是无法让它与流氓不安全的公钥一起使用。

Fwiw,这是我的ansible.cfg文件:

[defaults]
host_key_checking = False
inventory = ./ansible/hosts
roles_path = ./ansible/roles
private_key_file = ~/.vagrant.d/insecure_private_key

这是我的ansible / hosts文件(ansible inventory):

[vagrantboxes]
vagrant_vm ansible_ssh_user=vagrant ansible_ssh_host=192.168.10.100 ansible_ssh_port=22 ansible_ssh_private_key_file=~/.vagrant.d/insecure_private_key

做了什么工作是使用我自己的SSH公钥。当我将它添加到我的流浪盒上的authorized_keys时,我可以回答ping:

➜  ansible all -m ping       
vagrant_django | SUCCESS => {
    "changed": false, 
    "failed": false, 
    "ping": "pong"
}

我也无法通过ssh进行连接,因此这似乎是潜在的问题。通过将我自己的pub键添加到authorized_hosts中的vagrant框来解决这个问题。

我很想知道为什么它不能使用流浪的不安全密钥。有谁知道吗?

PS:澄清一下,虽然根本原因与this other question类似,但症状和背景不同。我可以使用ansible来配置我的盒子,但是无法对它进行ping操作。这证明了另一个问题imho。

0 个答案:

没有答案