虚拟机端口开放是如何工作的

Xia*_*lin 3 virtualization virtual-machines

我有一个关于 VM 端口的问题。

假设我有一个虚拟机和一个主机。主机上的开放端口仅为 80、22、443。如果我打开端口 80、22、443 虚拟机,它应该可以工作。但是,如果我在 VM 上打开端口 21,它会起作用吗?如果有效,是否意味着主机上的端口 21 也已打开?

我的理解是网络流量从 VM 的虚拟网络适配器到主机的物理网络适配器。所以这两个网络适配器上的端口应该匹配。我这样说对吗?

Fal*_*mot 5

通常,在虚拟机上打开端口不会导致它们在主机、网络防火墙或其他任何地方打开。但是,这取决于虚拟主机的网络设置。如果流量由主机 NAT 处理,则其防火墙可能会对其进行过滤。如果接口是桥接的(虚拟机看起来是网络上的实际主机),主机的防火墙不太可能过滤它。如果您使用的是仅主机网络,则打开 VM 上的任何端口都不会对外部世界产生任何影响,只是主机(可能还有该主机上的其他 VM)能够通过该端口连接到 VM。