如何在Azure中阻止公共端口并允许Vnet内的端口?

如何在Azure中阻止公共端口并允许Vnet内的端口?,azure,virtual-machine,network-security-groups,Azure,Virtual Machine,Network Security Groups,我已经在Azure中设置了一个指向VPN的站点。 我想允许使用VPN客户端登录的用户使用端口3389、22、5432、8080,同时只允许此VM的公共IP上的端口8080。这些配置可以在NSG完成 我怎样才能做到这一点 在VM/Networking选项卡中,我可以看到连接到子网的NSG和连接到NIC的另一个NSG 首先,在可能的情况下,尽量不要将NSG分配给NIC—这并不是说会导致不良做法,而是会导致更大的管理难度。尽管在一些非常严密的安全场景中,这可能是必要的 您的点对点VPN将由VPN网关提

我已经在Azure中设置了一个指向VPN的站点。 我想允许使用VPN客户端登录的用户使用端口3389、22、5432、8080,同时只允许此VM的公共IP上的端口8080。这些配置可以在NSG完成 我怎样才能做到这一点


在VM/Networking选项卡中,我可以看到连接到子网的NSG和连接到NIC的另一个NSG

首先,在可能的情况下,尽量不要将NSG分配给NIC—这并不是说会导致不良做法,而是会导致更大的管理难度。尽管在一些非常严密的安全场景中,这可能是必要的

您的点对点VPN将由VPN网关提供服务,客户端将从客户端地址池获得IP地址

在您的场景中,您需要创建入站规则,以允许从VPN客户端连接到任何和所有NSG中的目标VM的内部IP地址,这些NSG应用于:

  • 网关子网
  • 虚拟机NIC的子网
  • 虚拟机的网卡
如果未将NSG应用于网关子网,则可以保持原样

您需要从VPN网关获取客户端地址池,并使用CIDR标记的网络地址填充源CIDR范围。示例如下:



确保已为规则指定了适当的优先级,以便在任何可能优先的拒绝操作规则之前处理该规则


您可能希望从该规则中排除8080,而是创建一个允许任何源地址访问它的单独规则。此规则需要存在于子网和NIC NSG上。

您需要的只是一个允许8080从internet进行通信的规则,NSG默认规则已经允许在包括VPN网关路由的virtualnetwork标记上进行通信


因此,我们基本上只是配置面向公共internet的NIC的NSG来响应此IP范围?客户端VPN流量通过网关子网->虚拟机子网->虚拟机NIC。因此,您应该在适用于这三个位置中任何一个的任何NSG中设置此规则。您可以在Azure Network Watcher中使用IP流验证来测试流,该流将突出显示任何阻塞或允许的NSG。NIC上的NSG是阻止公共IP流量的工具,对吗?我们可以在所有这些级别上设置Nsg,但归根结底是ip过滤保留在NIC上以阻止公共流量,对吗?如果是这样的话,那么使用vpn有什么好处吗?很抱歉问这么多,因为如果tats the case.lol的话,花费和设置vpn配置没有任何意义。塔塔就在我头上。谢谢你,伙计。我刚刚删除了NIC NSG上的所有入站限制。允许的Vnet访问。默认情况下,由于NIC中的拒绝规则,所有公共端口请求都被拒绝。为了使任何端口公开,我只需在NIC NSG中添加使其公开的例外。谢谢你的帮助。你这个笨蛋。谢谢你:P