Vagrant ssh提示“没有kex alg”,我无法连接到虚拟机

时间:2015-10-05 16:36:14

标签: node.js ubuntu ssh vagrant

我正按照官方流浪文档中的说明尝试使用命令 public function getOption_array() { return array('myAttribute' => $this->media_title); } 连接到流浪汉。之前我使用较旧的ubuntu作为虚拟机:vagrant ssh。在此期间,发出命令config.vm.box = "hashicorp/precise32"确实让我只用一个用户名和密码连接到机器。

现在我将流浪盒改为更新的盒子,因为我想要更新的vagrant ssh。目前,该框为:nodejs。现在使用此框,如果我运行vagrant,并尝试使用vagrant config.vm.box = "ubuntu/vivid32"连接到该计算机,它不会让我,但它会提示ssh。我读到了与使用密钥进行身份验证有关的地方。我怎么能用vagrant ssh连接到新的ubuntu?一种选择可能是定期连接到盒子。

3 个答案:

答案 0 :(得分:8)

我在几天内遇到了同样的问题,终于找到了解决这个问题的方法。我知道它是一个古老的话题,但只是让其他人会遇到同样的问题。这就是你如何解决它:

编辑你的sshd_config并添加:

KexAlgorithms diffie-hellman-group1-sha1

这就是为我解决的问题(显然在之后重启ssh)

答案 1 :(得分:1)

我猜这个盒子里出了问题 - 当你查看历史https://vagrantcloud.com/ubuntu/boxes/vivid32时,在短时间内发布了一些盒子。我今天刚刚下载了这个盒子,它按预期工作。

我建议您更新该框,您将获得最新版本

vagrant box update --box ubuntu/vivid32
Checking for updates to 'ubuntu/vivid32'
Box 'ubuntu/vivid32' (v20151001.0.0) is the latest version

答案 2 :(得分:0)

你应该使用腻子或任何东西去你的流浪汉

之后

sudo nano /etc/ssh/sshd_config

转到底线并输入

KexAlgorithms diffie-hellman-group1-sha1

之后ctrl + o并输入和ctrl + x

回到你的窗户并重新加载流浪汉

然后尝试

ssh vagrant@127.0.0.1 -p 2222

希望这能帮到你