我正在尝试通过 SSH 连接,但是我Connection timed out
在互联网上找不到有关此主题的任何信息。
我尝试连接的 Linux 发行版是 Debian:
SSH 监听的端口是默认端口:22
据我所知没有防火墙:
ip addr
输出:
nmap 10.0.2.15 -Pn
输出:
ssh [email protected]
输出:
答案1
VBox NATted 网络不会暴露给您的主机。
您可以使用 ipconfig 和 route 进行检查 - 没有 10.0.2.x IP/路由 - 因此来自您主机的流量将转到默认网关并使用默认路由丢失(最有可能到达您的路由器然后到互联网)
来自我的 Mac OS VirtualBox 的屏幕截图。
解决- 您有两个选择:
- 创建 HostOnly 网络进行访问:
因此,您可以在 VBox Host Network Manager 中创建一个 HostOnly 网络,它将在您的主机上创建一个网络适配器,通过该适配器您将能够访问主机。在我的示例中,我使用了启用了 DHCP 的 192.168.56.x/24。
第一个 NAT 适配器(在您的 VM 上):
然后使用创建的网络向虚拟机添加第二个适配器,并选择 HostOnly 和您创建的网络:
添加 vmnic 后,您可能需要对其进行配置。请参阅我的 ifconfig:
第一个适配器 - 10.0.2.4
第二个适配器 - 192.168.56.104 - 在屏幕截图顶部您可以看到我使用这个 IP 来连接 ssh。
- 从主机到虚拟机的端口转发
另一个选择是将流量从主机端口转发到虚拟机的 IP
恕我直言: 第一个选项比较简单,因为您将能够使用默认端口,而第二个选项意味着主机上的一个非默认空闲端口到每个虚拟机的端口 22。
答案2
当您使用端口转发时,您需要连接到本地主机。这很明显,但我需要一些时间来弄清楚;)
ssh [email protected] -p 10001 <-- The Host-Port you configured