远程SSH到Ubuntu VM

Modified on: Sat, 09 Jun 2018 06:38:23 +0800

我在网络或Linux方面没有太多经验,但我正在尝试从家庭网络外部进入Ubuntu虚拟机。 Ubuntu虚拟机(VirtualBox)在Debian桌面上运行。我做了一些研究,发现我必须将端口22从路由器转发到虚拟机。

  • 我将VM上的网络设置更改为桥接。
  • 我正在将端口转发到VM。
  • 我检查了(http://www.yougetsignal.com/)以显示该端口是开放的

但是当我尝试连接时,它仍然无法正常工作。 ssh username @ - 连接被拒绝

我是否需要在虚拟机内执行任何操作以允许传入连接?或转发任何港口?

有什么我做错了,任何帮助都会非常感激!!

最佳答案

默认情况下,VirtualBox在“NAT”模式下工作,这意味着它构建了一个“虚拟”网络并转换了来自VM的网络访问,因此对于外部世界,它们似乎来自您的实际计算机。

VirtualBox使VM认为它已连接到网络,但实际上VirtualBox正在提供网络服务,包括一个小型DHCP服务器。然后,VirtualBox“代表”VM进行网络访问,使其显示为PC上运行的另一个应用程序。

然而,这意味着外界并不真正了解虚拟机,也无法直接访问虚拟机。

我认为您所做的端口重定向是从家用路由器到PC,而不是VM。您可能缺少VirtualBox端的某些配置。如果您已经这样做了,请道歉,但您的问题并不清楚。

基本上,您必须更改VM的网络配置并将其设置为“Bridged”。它的作用是,它在您的PC上创建一个虚拟接口,并使VM使用它来访问外部世界;进入或进入该界面的任何内容都会通过管道传输到VM。因此,无论您的PC连接到哪个网络,VM都可以看作是另一台机器(它甚至有自己的MAC地址!)。

然后,根据您的网络配置,VM可能会像连接到路由器的任何其他PC一样获得DHCP地址,或者您可能需要为其配置静态IP地址。这取决于您的网络设置方式。

一旦VM具有“真实”地址,您就可以在路由器上按照找到的将端口22路由到VM的IP地址的说明进行操作。这应该按照您的预期工作。

如果没有:

  • 查看VM的防火墙配置(iptables -L -n)。它阻止了什么吗?
  • 在本地网络上设置另一台计算机,并尝试通过SSH连接到VM的IP地址。如果可以,那么您需要仔细检查路由器中的转发配置。如果不能,则需要重新检查VM的SSH和防火墙配置。
作者:,roadmr

相关问答

添加新评论