在我的笔记本电脑上,我在virtualbox上运行两台Ubuntu服务器作为guest虚拟机。 它们通过具有“192.168.56.1”IP地址的主机专用适配器连接,两个访客服务器的IP地址设置为“192.168.56.101”和“192.168.56.102”。 每个人都可以ping另一个,但不是ssh到它。 当我尝试ssh到另一个客人时,我得到以下错误:
ssh: connection to host 192.168.56.102 port 22: Connection refused
令人困惑的事情(对我来说)是我可以在主机笔记本电脑上的主机专用适配器ssh使用:
ssh [email protected]
我不确定接下来要做什么。 我试着重新安装ssh / sshd。 这只是给了我一大堆的错误,但我在想,如果我可以在networking上ssh一个东西,我应该可以ssh到其他的东西吧? 但无论如何,我绝对忽略了一些东西。
我试图禁用客人和主机使用iptables
sudo ufw disable
然后在其中一个客人使用
ssh [email protected]
得到了
ssh: connect to host 192.268.56.101 port 22: Connection refused
<-update->
ssh -v [email protected]
给我以下输出:
OpenSSH_5.9p1 Debian-5ubuntu1, OpenSSL1.0.1 14 Mar 1012 debug1: Reading configuration data /etc/ssh/ssh_config debug1: /etc/ssh/ssh_config line 19: Applying options for * debug1: Connecting to 192.168.56.101 [192.268.56.101] port 22. debug1: connect to address 192.168.56.101 port 22: Connection refused ssh: connect to host 192.168.56.101 port 22: Connection refused
<-update->
我的/ etc / hosts文件看起来像所有的客人:
127.0.0.1 localhost 127.0.1.1 ubuntu # The following lines are desirable for IPv6 capable hosts ::1 ip6-localhost ip6-loopback fe00::0 ip6-localnet ff00::0 ip6-mcastprefix ff02::1 ip6-allnodes ff02::2 ip6-allrouters
这两个guest虚拟机没有/etc/hosts.allow&/etc/hosts.deny文件。
ifconfig -a给我:
eth0 Link encap:Ethernet HWaddr 08:00:27:63:c5:71 inet addr:192.168.56.102 Bcast:192.168.56.255 Mask:255.255.255.0 inet6 addr: fe80::a00:27ff:fe63:c571/64 Scope:Link UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1 RX packets:15 errors:0 dropped:0 overruns:0 frame:0 TX packets:15 errors:0 dropped:0 overruns:0 carrier:0 collisions:0 txqueuelen:1000 RX bytes:4658 (4.6 KB) TX bytes:1790 (1.7 KB) lo Link encap:Local Loopback inet addr:127.0.0.1 Mask:255.0.0.0 inet6 addr: ::1/128 Scope:Host UP LOOPBACK RUNNING MTU:16436 Metric:1 RX packets:0 errors:0 dropped:0 overruns:0 frame:0 TX packets:0 errors:0 dropped:0 overruns:0 carrier:0 collisions:0 txqueuelen:0 RX bytes:0 (0.0 B) TX bytes:0 (0.0 B)
和
eth0 Link encap:Ethernet HWaddr 08:00:27:ce:7c:1e inet addr:192.168.56.101 Bcast:192.168.56.255 Mask:255.255.255.0 inet6 addr: fe80::a00:27ff:fece:7c1e/64 Scope:Link UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1 RX packets:16 errors:0 dropped:0 overruns:0 frame:0 TX packets:15 errors:0 dropped:0 overruns:0 carrier:0 collisions:0 txqueuelen:1000 RX bytes:4718 (4.7 KB) TX bytes:1790 (1.7 KB) lo Link encap:Local Loopback inet addr:127.0.0.1 Mask:255.0.0.0 inet6 addr: ::1/128 Scope:Host UP LOOPBACK RUNNING MTU:16436 Metric:1 RX packets:16 errors:0 dropped:0 overruns:0 frame:0 TX packets:16 errors:0 dropped:0 overruns:0 carrier:0 collisions:0 txqueuelen:0 RX bytes:1184 (1.1 KB) TX bytes:1184 (1.1 KB)
<-update->
sudo netstat -pant |grep :22
没有输出
<-update->
另外,当我试图获得一个框太SSH的自我我得到相同的端口22:连接拒绝错误。
由于事实上,你正在得到一个被拒绝的消息,我可以假设你实际上看到数据包击中另一台服务器,我怀疑ssh没有安装。
在两台服务器上运行:
sudo apt-get install openssh-server
一旦安装了ssh服务器,它应该可以正常工作。
< – 编辑 – >
我已经看到,你已经确认服务安装,所以忽略上述,它可能是iptables,但它不应该在Ubuntu上默认configuration。 如果您正在运行12.04,则可以通过键入以下命令临时禁用防火墙:
sudo ufw disable
看看是否有帮助。
另外,“整个错误”是什么意思? 你尝试安装有或没有sudo?
尝试使用ssh -v ip地址 ,以便在连接期间看到可能的错误!
<< – 编辑 – >>
在主机101上使用这个命令,并发布结果
sudo netstat -plant | grep ssh
基本上这个命令显示您的机器上的所有networking连接,我想看看ssh运行在不同的端口方面22
你确定你的ssh_config文件中没有代理命令或类似的东西吗?
通过查看您的输出,在debugging输出和错误消息中的IP地址有问题:而不是192.168.xxx.xxx,您有192。2 68.xxx.xxx
你应该检查你的networkingconfiguration:
我相信“仅主机”选项会在来宾和服务器之间创build专用链接,而使用仅主机连接的虚拟机应该无法在networking上看到对方。
你要么必须在linux中连接它们,要么使用另一个networking选项。
我相信,如果将两个VM的networking选项更改为“内部networking”,并为两个VM使用相同的名称,则可以完成所要实现的任务。
编辑:根据virtualbox文档“主机只”选项应该允许虚拟机互相沟通,但仍然 – 试试看。
编辑2:噢 – 我有点错过了这个机器能够互相ping通的事实。 在这种情况下,我上面写的是无关紧要的。