我有一台运行 Windows Server 2008 的主机服务器,在这台服务器上我有一个运行 Windows Server 2003 的虚拟服务器(使用 Hyper-V)。虚拟服务器专门托管网站。我试图在它们(主机和虚拟服务器)上使用 Windows 防火墙来保护它们,以防我的硬件防火墙再次出现故障。我需要启用 RDP 并仅允许特定 IP。我在主机上已经成功了。但是,当我对虚拟服务器执行相同的过程时,RDP 并不局限于特定的 IP。这意味着我仍然可以从不在列表中的 IP 访问虚拟服务器。所以我的问题是,虚拟服务器的防火墙处理方式与主机有何不同/相关?
答案1
答案在很大程度上取决于您如何配置 Hyper-V 来进行网络连接。设置来宾操作系统时,通常会配置虚拟 NIC(虚拟网卡),您在那里选择的设置将影响您的 PC 如何处理网络流量。通常,您可以选择几个常见选项:
- NAT
- 桥接网络
- 内部网络
NAT 将成为默认设置,因此您现在可能正在运行该设置。它允许您连接到网络外部以进行访问互联网等操作,但如果不进行额外调整,它不会允许您建立入站连接。在此模式下,客户操作系统会正常发送流量,但您的数据包会在网关处被重写,以显示来自主机系统。由于您正在运行 Web 服务器,因此您很可能需要一个桥接网络。
桥接网络的工作原理是将客户系统视为“真实”机器。虚拟机可以访问物理网络,并可以直接访问其上的任何服务。
最好的办法是配置第三个选项 - 即设置具有端口转发的 NAT。根据设计,这会阻止与客户操作系统的入站连接,因为它将位于单独的子网中(很可能它的 IP 为 10.XXX)。如果您在 3389 上运行 RDP - 您可以在物理路由器上以及 Hyper-V 中的 NAT 设置中设置规则,以将 3389 上的流量从主机适配器转发到虚拟适配器。