Windows /流浪汉/ Ubuntu
这是对我有用的方法,您可以通过在ssh客户端上运行它来快速确定它是否会起作用。
ssh vagrant@127.0.0.1 -p 2222 -v
-v会将其置于详细模式并显示调试信息...
$ ssh vagrant@127.0.0.1 -p 2222 -v
OpenSSH_7.1p1,OpenSSL 1.0.2e 2015年12月3日
debug1:连接到127.0.0.1 [127.0.0.1]端口
2222。debug1:已建立连接。
debug1:身份文件/home/Jamie/.ssh/id_rsa类型1
debug1:
身份文件/目录否debug1:身份文件/home/Jamie/.ssh/id_rsa-cert类型-1
debug1:key_load_public:无此类文件或目录目录
DEBUG1:标识文件/home/Jamie/.ssh/id_dsa类型-1
DEBUG1:key_load_public:没有这样的文件或目录
DEBUG1:标识文件/home/Jamie/.ssh/id_dsa-cert类型-1
DEBUG1:key_load_public:没有这样的文件或目录
debug1:标识文件/home/Jamie/.ssh/id_ecdsa类型-1
debug1:key_load_public:没有此类文件或目录
debug1:身份文件/home/Jamie/.ssh/id_ecdsa-cert类型-1
debug1:key_load_public:无此类文件或目录
debug1:身份文件/home/Jamie/.ssh/id_ed25519类型-1
debug1:key_load_public:无此类文件或目录
debug1:身份文件/home/Jamie/.ssh/id_ed25519-cert类型-1
debug1:为协议2.0
debug1 启用兼容模式:本地版本字符串SSH-2.0-OpenSSH_7.1
debug1 :远程协议版本2.0,远程软件版本OpenSSH_6.6.1p1 Ubuntu-2ubuntu2.6
debug1:匹配:OpenSSH_6.6.1p1 Ubuntu-2ubuntu2.6 pat OpenSSH_6.6.1 * compat 0x04000000
debug1:验证为127.0.0.1:2222为'vagrant '
debug1:SSH2_MSG_KEXINIT发送
连接被127.0.0.1关闭
所以... SSH2_MSG_KEXINIT表示正在交换密钥。这很快就失败了...
在这种情况下,我删除了我的密钥并在VM上重新生成它们。(http://ask.xmodulo.com/sshd-error-could-not-load-host-key.html)
$ ls -al / etc / ssh / ssh 键
$ sudo rm -r / etc / ssh / ssh键
$ sudo dpkg-reconfigure openssh-server
密钥重新生成后,我便可以通过SSH进入我的Vagrant Box。
ssh -p 2222 vagrant@localhost
)不会受到此影响。