Azure网络安全组无法正常工作? (附属于子网)

时间:2015-01-09 17:53:36

标签: azure azure-virtual-network

我正在尝试保护虚拟网络中的某些子网。

我的虚拟网络1包含子网A,B,C。

我在每个子网中都有一个具有默认端点(RDP和WinRM)的VM。

我使用以下命令创建网络安全组并将其连接到子网C:

$SGName = 'SecurityGroupC'
$location = 'West US'
$virtualNetwork = '1'
$subnet = 'C'

New-AzureNetworkSecurityGroup -Name $SGName -Location $Location -Label $SGName

Get-AzureNetworkSecurityGroup -Name $SGName | Set-AzureNetworkSecurityGroupToSubnet -VirtualNetworkName $VirtualNetwork -SubnetName $Subnet

我可以通过运行来查看默认规则:

Get-AzureNetworkSecurityGroup -Name $SGName -Detailed

显示了预期的默认规则:

Name  : SecurityGroupC
Rules : 

       Type: Inbound

    Name                 Priority  Action   Source Address  Source Port   Destination      Destination    Protocol
                                            Prefix          Range         Address Prefix   Port Range             
    ----                 --------  ------   --------------- ------------- ---------------- -------------- --------
    ALLOW VNET INBOUND   65000     Allow    VIRTUAL_NETWORK *             VIRTUAL_NETWORK  *              *       
    ALLOW AZURE LOAD     65001     Allow    AZURE_LOADBALAN *             *                *              *       
    BALANCER INBOUND                        CER                                                                   
    DENY ALL INBOUND     65500     Deny     *               *             *                *              *       


       Type: Outbound

    Name                 Priority  Action   Source Address  Source Port   Destination      Destination    Protocol
                                            Prefix          Range         Address Prefix   Port Range             
    ----                 --------  ------   --------------- ------------- ---------------- -------------- --------
    ALLOW VNET OUTBOUND  65000     Allow    VIRTUAL_NETWORK *             VIRTUAL_NETWORK  *              *       
    ALLOW INTERNET       65001     Allow    *               *             INTERNET         *              *       
    OUTBOUND                                                                                                      
    DENY ALL OUTBOUND    65500     Deny     *               *             *                *              *       

根据这些规则,我在子网C中的VM上的RDP端点应该停止工作。但是我仍然能够从互联网直接向我的VM发送RDP。有什么我想念的吗?

4 个答案:

答案 0 :(得分:0)

创建VM时,它将自动创建RDP端点。此设置似乎会覆盖您的网络安全组值。

我通常会为它添加一个ACL“0.0.0.0/0”“DENY”,所以如果需要,我可以重新启用它。

答案 1 :(得分:0)

根据网络安全组的功能: “网络安全组与基于端点的ACL不同。端点ACL仅在通过输入端点公开的公共端口上工作.NSG在一个或多个VM实例上工作,并控制VM上入站和出站的所有流量“。 第一个入站规则=“允许VNET INBOUND 65000允许VIRTUAL_NETWORK * VIRTUAL_NETWORK *”

这允许虚拟机内的所有流量。由于VM上没有端点ACL,并且启用了RDP端点,因此流量可以到达VM。

更新:你是对的。它不应该允许RDP访问。根据常见问题解答中的此链接:http://azure.microsoft.com/blog/2014/11/04/network-security-groups/

4。我已为我的VM定义了RDP端点,而我正在使用网络安全组我是否需要访问控制规则才能从Internet连接到RDP端口? 是的,Network Security Group中的默认规则不允许从Internet访问任何端口,用户必须创建特定规则以允许RDP流量。

答案 2 :(得分:0)

我刚刚发现了同样的事情。我还发现删除并重新创建端点然后允许NSG按预期运行,即看起来如果在端点之后创建/链接,它不起作用但是如果NSG是它首先完成,它确实!

答案 3 :(得分:0)

您必须应用更改,这就是您未获得预期行为的原因:

Set-AzureRmVirtualNetwork -VirtualNetwork $virtualNetwork 

希望这有帮助!