从 Internet 连接到 ESXi 主机上的虚拟机

从 Internet 连接到 ESXi 主机上的虚拟机

我有一台安装了 ESXi 5.5 的 Dell PowerEdge R710 服务器。服务器连接到交换机,交换机连接到路由器,路由器可以访问互联网。在 ESXi 上,我有一台虚拟机,Windows Server,IP:10.0.0.11/24。我的虚拟机可以访问互联网,但我该怎么做才能从互联网访问我的 Windows Server(ESXI 主机上的虚拟机)(例如进行远程桌面连接)?

答案1

假设您可以从 LAN 内通过 RDP 访问服务器,您所要做的就是在路由器上设置端口转发。默认 RDP 端口为 3389。有时 ISP 在外部设有防火墙,在这种情况下,您需要将另一个更可能开放的传入端口(例如 443)转发到内部服务器。

这个挑战实际上与虚拟机或 ESXi 无关。

答案2

端口转发确实是可行的方法。我在运行 ESXi 的 R710 上进行了类似的设置。

  • 首先,我有一个端口转发规则来公开 iDRAC,以便我可以从任何地方远程管理服务器。出于安全原因,请远离端口 80 和 443。
  • 其次,您可能还想使用相同的技术来公开 EXSi 控制台。
  • 第三,对于在 ESXi 上运行的 CentOS 服务器场,我为每个 VM 的特定端口设置了 SSH。
  • 第四,为每个设置端口转发规则,以便我可以通过相同的外部 IP 联系它们。
  • 在这种情况下,使用免费服务将您的 IP 映射到虚拟域名变得非常方便。我使用 noip.com。免费且可靠。

更新:使用较新的路由器,无需在每个客户虚拟机上设置自定义 SSH 端口。您可以在路由器上设置规则,重定向端口 222 上接收的流量(作为示例)并根据 IP 或主机名将传入流量重定向到端口 22(默认 SSH 端口)上的特定客户机。管理起来更容易!

答案3

为了设置所需的内容,您需要为每台虚拟机设置端口转发规则(我假设您手头没有一组静态 IP)。这还包括更改启用了远程桌面的每台虚拟机的侦听端口。

如果您希望访问您的主机操作系统,请连接到您的路由器(默认网关)管理页面并在指向您的主机内部 IP 的端口 3389 上设置转发规则。

在您的第一台虚拟机中,照常启用远程桌面,但现在您需要更改监听端口。由于您没有指定虚拟机的操作系统,我将假设 Microsoft 与您的主机匹配。如果没有,请告诉我。要更改您的监听端口,请按照以下步骤操作:

1. Start Registry Editor.
2. Locate and then click the following registry subkey:
3. HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\TerminalServer\WinStations\RDP-Tcp\PortNumber
4. On the Edit menu, click Modify, and then click Decimal.
5. Type the new port number, and then click OK.
6. Quit Registry Editor.
7. Restart the computer.

显然,您可以随意更改端口。因此,一个合理的方法是将每个服务器的端口使用量增加 1。再次进入路由器,使用新端口和虚拟机的 IP 地址设置端口转发规则(每台机器一个)。

我以前曾使用此方法在 Windows Server 2008 RT 主机上的两个 Windows VM 中设置远程桌面,没有任何意外。

来源

免责声明:我知道该参考适用于 XP,但它似乎可以在我的 Windows 7 机器上运行,而且您再次没有指定您的操作系统,因此请根据需要添加其他信息以获得更新的答案。

答案4

我知道这篇文章已经是几个月前的帖子了。但以防万一,这是我的方法。我在 ESXi 服务器上将 1443 端口转发到 443(如果您不使用 443 端口进行其他服务,您可以直接将 443 端口转发到 443 端口)。这是为了让 vSphere 访问 ESXi 服务器本身。要访问虚拟机本身,您还需要将 902 端口转发。然后只需输入MY_DOMAIN:1443“IP 地址/名称”字段即可登录。因为我运行多个虚拟机,所以我发现这是一个简单的解决方案,因为我只需要为每个 ESXi 服务器转发 2 个端口。

相关内容