如何使用仅主机网络从 VirtualBox 上的远程客户服务器通过 SSH 连接 Apache 用户?

如何使用仅主机网络从 VirtualBox 上的远程客户服务器通过 SSH 连接 Apache 用户?

我在 VirtualBox 上有两个 CentOS 虚拟机。其中一个假设为 CentOS-1 ,其中包含我的 Web 应用程序代码。第二个是 CentOS2。
我在这两台服务器之间有两个网络连接:桥接和仅主机。

CentOS-1:桥接连接的 IP 为:192.168.0.137
仅主机连接的 IP 为:192.168.1.137

CentOS-2:对于桥接连接,ip 为:192.168.0.101
对于仅主机连接,ip 为:192.168.1.101

当我尝试像这样 ssh 时,在我的 php 网页中:

 exec('ssh -p 22 [email protected] 2>&1 ',$output);

它正在工作,但是当我尝试 ssh 到仅主机网络 ip 时:

 exec('ssh -p 22 [email protected] 2>&1 ',$output);

我得到了这个作为输出:

ssh: connect to host 192.168.1.101 port 22: No route to host

我尝试重新生成 192.168.0.137 的公钥并将其复制到 192.168.0.101,但没有帮助。我还尝试授予 apache 用户权限:

在 CentOS-2 上:sudo -u apache ssh[电子邮件保护]“密码”
sudo -u apache ssh[电子邮件保护]“密码”

在 CentOS-1 上:

sudo -u apache ssh [email protected] "pwd"     
sudo -u apache ssh [email protected] "pwd"

这两种方法都不起作用。我是不是漏掉了什么?
ifconfig -a 的输出:

$ ifconfig -a                                                                                                     
eth0      Link encap:Ethernet  HWaddr 08:00:27:0B:56:0E                                                                               
          inet addr:192.168.0.101  Bcast:192.168.0.255  Mask:255.255.255.0                                                            
          inet6 addr: fe80::a00:27ff:fe0b:560e/64 Scope:Link                                                                          
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1                                                                          
          RX packets:5652 errors:0 dropped:0 overruns:0 frame:0                                                                       
          TX packets:4886 errors:0 dropped:0 overruns:0 carrier:0                                                                     
          collisions:0 txqueuelen:1000                                                                                                
          RX bytes:833395 (813.8 KiB)  TX bytes:769122 (751.0 KiB)                                                                    

eth1      Link encap:Ethernet  HWaddr 08:00:27:FA:C6:32                                                                               
          BROADCAST MULTICAST  MTU:1500  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:1000                                                                                                
          RX bytes:0 (0.0 b)  TX bytes:0 (0.0 b)                                                                                      

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:6315 errors:0 dropped:0 overruns:0 frame:0                                                                       
          TX packets:6315 errors:0 dropped:0 overruns:0 carrier:0                                                                     
          collisions:0 txqueuelen:0                                                                                                   
          RX bytes:878894 (858.2 KiB)  TX bytes:878894 (858.2 KiB)       

和路线输出:

$ sudo ifconfig eth1 inet 192.168.1.101 broadcast 192.168.1.255 netmask 255.255.255.0 up                          
[sudo] password for safaa:                                                                                                            

    [safaa@AMeS101 ~]$ route                                                                                                           
Kernel IP routing table                                                                                                               
Destination     Gateway         Genmask         Flags Metric Ref    Use Iface                                                         
192.168.1.0     *               255.255.255.0   U     0      0        0 eth1                                                          
192.168.0.0     *               255.255.255.0   U     0      0        0 eth0                                                          
link-local      *               255.255.0.0     U     1002   0        0 eth0                                                          
default         mbox.kds.local  0.0.0.0         UG    0      0        0 eth0       

提前致谢 。

答案1

您需要做一些事情。

假设从一台机器 ping 另一台机器导致相同的错误,请尝试运行此命令。设置路线

route

您很可能看不到任何规则。假设您已在正确的文件中设置了 IP 地址centos 网络信息

/etc/sysconfig/network

一旦网络和路由都设置好了,你们就可以互相交谈了。要测试是否有人没有发回数据,tcpdump 是你的好帮手。Tcpdump 帮助

答案2

答案如下:
在 CentOS1 上:

sudo ifconfig eth1 192.168.1.191 netmask 255.255.255.0 up

sudo touch /etc/sysconfig/network-scripts/ifcfg-eth1 

 sudo vi /etc/sysconfig/network-scripts/ifcfg-eth1  

DEVICE="eth1"
IPADDR=192.168.1.191
NETMASK=255.255.255.0
NETWORK=192.168.1.0
BROADCAST=192.168.1.255
NM_CONTROLLED="yes"
ONBOOT="yes"
TYPE="Ethernet"

sudo ifup eth1

CentOS1谁 ssh 到这个服务器:

sudo -u apache ssh [email protected]"pwd"

然后 apache 可以 ssh 到 192.168.1.191 并且你可以做任何你想做的事情:)

相关内容