vagrant报错

作者: youngiyang_打码少年 | 来源:发表于2016-09-08 13:41 被阅读135次

    Warning Authentication failure. Retrying...

    问题现象:
    在导入别人的box或者自己制作的box之后,经常会出现认证失败的问题,如以下报错:


    问题原因:
    从字面意思上看是认证失败,其实根本原因是该box的私钥和vagrant的公钥不匹配

    解决思路:
    先排查私钥,查看vagrant配置私钥的路径以及文件名字
    在项目文件夹中执行以下命令(此时没有ssh到虚拟机里)
    $vagrant ssh-config

    Host default
      HostName 127.0.0.1
      User vagrant
      Port 2202
      UserKnownHostsFile /dev/null
      StrictHostKeyChecking no
      PasswordAuthentication no
      IdentityFile /Users/yangzhiqiang/.vagrant.d/insecure_private_key
      IdentitiesOnly yes
      LogLevel FATAL
    

    查看到私钥是insecure_private_key,但是如何去查看它是否和公钥匹配呢,我的做法是,先进入这个目录,删除掉私钥。
    重启虚拟机vagrant reload,
    私钥重新生成,如果问题仍然存在,那么肯定是公钥有问题。

    公钥有问题的解决办法:
    1.先进入虚拟机 vagrant ssh,因为认证失败,需要手动输入密码vagrant
    2.进入虚拟机之后,进入vagrant共享目录,重新下载公钥

    cd /home/vagrant
    sudo -u vagrant wget https://raw.githubusercontent.com/mitchellh/vagrant/master/keys/vagrant.pub -O .ssh/authorized_keys
    sudo -u vagrant chmod 700 .ssh
    sudo -u vagrant chmod 600 .ssh/authorized_keys
    sudo -u vagrant chown -R vagrant:vagrant .ssh
    

    重启vagrant,问题解决。

    相关文章

      网友评论

        本文标题:vagrant报错

        本文链接:https://www.haomeiwen.com/subject/vmmsettx.html