安装在主机10.0.0.23 lamp-vm IP地址为10.0.0.23本地stream量计算机。
这会产生一个错误
$ ssh vagrant @ lamp-vm -v -v
- 如何将DNS别名转发到主机名:端口?
- 将本地端口或套接字文件转发到远程套接字文件
- 如何将端口80转发到同一机器上的另一个端口?
- 我可以使用ufw设置端口吗?
- 为什么我不能在Ubuntu 9.04服务器上从外部访问我的CouchDB实例?
debug1:连接到地址10.0.0.23端口22:连接超时
ssh:连接主机灯-vm端口22:连接超时
我的/etc/hosts文件包含10.0.0.23 lamp-vm 。
我的.ssh / config文件看起来像
主灯 – 虚拟主机
用户stream浪者
IdentityFile〜/ .ssh / vagrant
我已经尝试了带/不带-i /path/to/.sh/identity_file的ssh命令。
如何使用SSH连接到我的Vagrant虚拟机?
我也遇到了这个问题,这是我的最终configuration,允许我从主机的任何地方进入我的stream浪机器。
Vagrantfile:
... # Setting up private_network to have virtual host config.vm.network :private_network, ip: "192.168.33.10" # Enable ssh forward agent config.ssh.forward_agent = true ...
ssh进入机器:
ssh [email protected]
你会被提示input密码(默认是stream浪):
[email protected]'s password:
而繁荣,你在!
PS *您可以在主机中的任何地方使用scp:
scp /path/to/src/file [email protected]:/path/to/destination/file
此行为是devise使然。
Vagrant使用VirtualBox NAT模式 ,这意味着使用端口转发。
您无法使用NAT模式直接SSH连接到您的虚拟机。
使用“stream浪ssh”意味着stream浪者会为你做端口转发,所以你不必担心。 我想它会默认连接到2222端口上的本地主机,但它也会尝试排除任何端口号码冲突。
如果您需要直接SSH到您的虚拟机,请将虚拟机切换到仅主机或桥接networking模式。
我会添加这个作为评论,但我目前没有足够的代表这样做。 我已经写了一个如何将您的虚拟机设置为桥接模式:
我希望你觉得这个有用!
Windows / Vagrant / Ubuntu
这对我来说是很有效的,你可以通过在ssh客户端上运行这个工具来快速找出这个工作是否正常。
ssh [email protected] -p 2222 -v
-v会将其置于详细模式并显示debugging信息…
$ ssh [email protected] -p 2222 -v
OpenSSH_7.1p1,OpenSSL 1.0.2e 2015年12月3日
debug1:连接到127.0.0.1 [127.0.0.1]端口2222。
debug1:build立连接。
debug1:身份文件/home/Jamie/.ssh/id_rsatypes1
debug1:key_load_public:没有这样的文件或目录
debug1:身份文件/home/Jamie/.ssh/id_rsa-certtypes-1
debug1:key_load_public:没有这样的文件或目录
debug1:身份文件/home/Jamie/.ssh/id_dsatypes-1
debug1:key_load_public:没有这样的文件或目录
debug1:身份文件/home/Jamie/.ssh/id_dsa-certtypes-1
debug1:key_load_public:没有这样的文件或目录
debug1:身份文件/home/Jamie/.ssh/id_ecdsatypes-1
debug1:key_load_public:没有这样的文件或目录
debug1:身份文件/home/Jamie/.ssh/id_ecdsa-certtypes-1
debug1:key_load_public:没有这样的文件或目录
debug1:身份文件/home/Jamie/.ssh/id_ed25519types-1
debug1:key_load_public:没有这样的文件或目录
debug1:身份文件/home/Jamie/.ssh/id_ed25519-certtypes-1
debug1:启用协议2.0的兼容模式
debug1:本地版本stringSSH-2.0-OpenSSH_7.1
debug1:远程协议版本2.0,远程软件版本OpenSSH_6.6.1p1 Ubuntu-2ubuntu2.6
debug1:match:OpenSSH_6.6.1p1 Ubuntu-2ubuntu2.6 pat OpenSSH_6.6.1 * compat 0x04000000
debug1:authentication为127.0.0.1:2222为“stream浪”
debug1:发送SSH2_MSG_KEXINIT
连接由127.0.0.1closures
所以… SSH2_MSG_KEXINIT意味着密钥正在被交换。 这很快就会失败
在这种情况下,我删除了我的密钥,并在虚拟机上重新生成密钥。 ( 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进入我的stream浪者箱子。
这是旧的,但没有答案,我会提供一个。 命令:
vagrant ssh
是等价的
ssh vagrant@localhost -p 2222 -i .vagrant/machines/default/virtualbox/private_key
这是默认行为,如果你适当地改变了一些改变命令。 首先,stream浪者将在您的访客信箱中创buildstream浪用户,并且您将使用该用户ssh。 正如前面的人们所说的那样,默认情况下(默认情况下,当你看到消息被显示时),它会将来自主机端口2222的stream量转发给客户端的端口22。 最后,Vagrant为ssh会话创build密钥,所以您不必这样做,所以当通过ssh连接时需要提供公钥作为参数。
如果还有什么需要请告诉我。
销毁虚拟机
重新加载虚拟机
一切正常
不知道为什么,但明显的东西没有正确加载第一次供应。
看看这个评论: https : //github.com/mitchellh/vagrant/issues/1936#issuecomment-21139674
基本上,即使在使用私人networking时,stream浪者仍然在127.0.0.1上执行ssh。 试试这个ssh命令@ 127.0.0.1而不是你的私有ip /主机名。