错误原因
vagrant up执行日志:
vagrant管理了一个官方的keypair, 预先放在box中一个公钥,私钥被vagrant管理着。vagrant up的时候,第一次登录虚拟机就是使用这个官方提供的keypair.
当登录入虚拟机前,vagrant在宿主机生成一个新的keypair, 然后将虚拟机中的公钥替换为新的这个,然后私钥放在宿主机。
之所以有这个替换公钥的过程。是为了安全考虑,如果都使用官方的公钥,那么虚拟机可以被其他人登录。很不安全。
不安全的authorized_keys:
安全的authorized_keys:
当制作box的时候,这个里面的公钥已经是安全的那个,所有制作后的box载vagrant ssh的时候自然认证不了。
解决方式
从virtualbox软件进入虚拟机,虽然认证错误,但是虚拟机已经启动起来了,只是没有ssh登录进去,可以通过密码登录(用户:vagrant 密码:vagrant 但是虚拟机的sshd_config配置不能使用