O que é uma lista de controle de acesso de ponto de extremidade?What is an endpoint access control list?

Importante

O Azure tem dois modelos de implantação diferentes para criar e trabalhar com recursos: Resource Manager e clássico.Azure has two different deployment models for creating and working with resources: Resource Manager and classic. Este artigo cobre a utilização do modelo de implementação clássica.This article covers using the classic deployment model. A Microsoft recomenda que a maioria das implantações novas usem o modelo de implantação do Gerenciador de recursos.Microsoft recommends that most new deployments use the Resource Manager deployment model.

Uma ACL (lista de controle de acesso) de ponto de extremidade é um aprimoramento de segurança disponível para sua implantação do Azure.An endpoint access control list (ACL) is a security enhancement available for your Azure deployment. Uma ACL fornece a capacidade de permitir ou negar seletivamente o tráfego para um ponto de extremidade de máquina virtual.An ACL provides the ability to selectively permit or deny traffic for a virtual machine endpoint. Esse recurso de filtragem de pacotes fornece uma camada adicional de segurança.This packet filtering capability provides an additional layer of security. Você pode especificar ACLs de rede somente para pontos de extremidade.You can specify network ACLs for endpoints only. Você não pode especificar uma ACL para uma rede virtual ou uma sub-rede específica contida em uma rede virtual.You can't specify an ACL for a virtual network or a specific subnet contained in a virtual network. É recomendável usar NSGs (grupos de segurança de rede) em vez de ACLs, sempre que possível.It is recommended to use network security groups (NSGs) instead of ACLs, whenever possible. Ao usar NSGs, a lista de controle de acesso do ponto de extremidade será substituída e não mais imposta.When using NSGs, endpoint access control list will be replaced and no longer enforced. Para saber mais sobre o NSGs, consulte visão geral do grupo de segurança de redeTo learn more about NSGs, see Network security group overview

As ACLs podem ser configuradas usando o PowerShell ou o portal do Azure.ACLs can be configured by using either PowerShell or the Azure portal. Para configurar uma ACL de rede usando o PowerShell, consulte Gerenciando listas de controle de acesso para pontos de extremidade usando o PowerShell.To configure a network ACL by using PowerShell, see Managing access control lists for endpoints using PowerShell. Para configurar uma ACL de rede usando o portal do Azure, consulte como configurar pontos de extremidade para uma máquina virtual.To configure a network ACL by using the Azure portal, see How to set up endpoints to a virtual machine.

Usando ACLs de rede, você pode fazer o seguinte:Using Network ACLs, you can do the following:

  • Permitir ou negar seletivamente o tráfego de entrada com base no intervalo de endereços IPv4 da sub-rede remota para um ponto de extremidade de entrada da máquina virtual.Selectively permit or deny incoming traffic based on remote subnet IPv4 address range to a virtual machine input endpoint.
  • Endereços IP de lista negraBlacklist IP addresses
  • Criar várias regras por ponto de extremidade de máquina virtualCreate multiple rules per virtual machine endpoint
  • Usar a ordenação de regra para garantir que o conjunto correto de regras seja aplicado em um determinado ponto de extremidade da máquina virtual (mais baixo ao mais alto)Use rule ordering to ensure the correct set of rules are applied on a given virtual machine endpoint (lowest to highest)
  • Especifique uma ACL para um endereço IPv4 de sub-rede remota específica.Specify an ACL for a specific remote subnet IPv4 address.

Consulte o artigo limites do Azure para obter limites de ACL.See the Azure limits article for ACL limits.

Como as ACLs funcionamHow ACLs work

Uma ACL é um objeto que contém uma lista de regras.An ACL is an object that contains a list of rules. Quando você cria uma ACL e a aplica a um ponto de extremidade de máquina virtual, a filtragem de pacotes ocorre no nó de host da VM.When you create an ACL and apply it to a virtual machine endpoint, packet filtering takes place on the host node of your VM. Isso significa que o tráfego de endereços IP remotos é filtrado pelo nó de host para as regras de ACL correspondentes em vez de em sua VM.This means the traffic from remote IP addresses is filtered by the host node for matching ACL rules instead of on your VM. Isso impede que sua VM gaste os preciosos ciclos de CPU na filtragem de pacotes.This prevents your VM from spending the precious CPU cycles on packet filtering.

Quando uma máquina virtual é criada, uma ACL padrão é colocada em vigor para bloquear todo o tráfego de entrada.When a virtual machine is created, a default ACL is put in place to block all incoming traffic. No entanto, se um ponto de extremidade for criado para (porta 3389), a ACL padrão será modificada para permitir todo o tráfego de entrada para esse ponto de extremidade.However, if an endpoint is created for (port 3389), then the default ACL is modified to allow all inbound traffic for that endpoint. O tráfego de entrada de qualquer sub-rede remota é permitido para esse ponto de extremidade e nenhum provisionamento de firewall é necessário.Inbound traffic from any remote subnet is then allowed to that endpoint and no firewall provisioning is required. Todas as outras portas são bloqueadas para tráfego de entrada, a menos que os pontos de extremidade sejam criados para essas portas.All other ports are blocked for inbound traffic unless endpoints are created for those ports. O tráfego de saída é permitido por padrão.Outbound traffic is allowed by default.

Exemplo de tabela ACL padrãoExample Default ACL table

Régua #Rule # Sub-rede remotaRemote Subnet EndpointEndpoint Permitir/negarPermit/Deny
100100 0.0.0.0/00.0.0.0/0 33893389 OferecemPermit

Permitir e negarPermit and deny

Você pode permitir ou negar seletivamente o tráfego de rede para um ponto de extremidade de entrada da máquina virtual criando regras que especificam "permitir" ou "negar".You can selectively permit or deny network traffic for a virtual machine input endpoint by creating rules that specify "permit" or "deny". É importante observar que, por padrão, quando um ponto de extremidade é criado, todo o tráfego é permitido para o ponto de extremidade.It's important to note that by default, when an endpoint is created, all traffic is permitted to the endpoint. Por esse motivo, é importante entender como criar regras de permissão/negação e colocá-las na ordem de precedência apropriada se você quiser um controle granular sobre o tráfego de rede que você escolher para permitir o acesso ao ponto de extremidade da máquina virtual.For that reason, it's important to understand how to create permit/deny rules and place them in the proper order of precedence if you want granular control over the network traffic that you choose to allow to reach the virtual machine endpoint.

Pontos a considerar:Points to consider:

  1. Sem ACL – Por padrão, quando um ponto de extremidade é criado, permitimos todos para o ponto de extremidade.No ACL – By default when an endpoint is created, we permit all for the endpoint.
  2. Permitir- Ao adicionar um ou mais intervalos de "permissão", você está negando todos os outros intervalos por padrão.Permit - When you add one or more "permit" ranges, you are denying all other ranges by default. Somente os pacotes do intervalo IP permitido poderão se comunicar com o ponto de extremidade da máquina virtual.Only packets from the permitted IP range will be able to communicate with the virtual machine endpoint.
  3. Negar- Ao adicionar um ou mais intervalos de "negação", você está permitindo todos os outros intervalos de tráfego por padrão.Deny - When you add one or more "deny" ranges, you are permitting all other ranges of traffic by default.
  4. Combinação de permitir e negar- Você pode usar uma combinação de "permitir" e "negar" quando desejar que um intervalo de IP específico seja permitido ou negado.Combination of Permit and Deny - You can use a combination of "permit" and "deny" when you want to carve out a specific IP range to be permitted or denied.

Regras e precedência de regraRules and rule precedence

As ACLs de rede podem ser configuradas em pontos de extremidade de máquina virtual específicos.Network ACLs can be set up on specific virtual machine endpoints. Por exemplo, você pode especificar uma ACL de rede para um ponto de extremidade RDP criado em uma máquina virtual que bloqueia o acesso a determinados endereços IP.For example, you can specify a network ACL for an RDP endpoint created on a virtual machine which locks down access for certain IP addresses. A tabela a seguir mostra uma maneira de conceder acesso a IPs virtuais públicos (VIPs) de um determinado intervalo para permitir o acesso ao RDP.The table below shows a way to grant access to public virtual IPs (VIPs) of a certain range to permit access for RDP. Todos os outros IPs remotos são negados.All other remote IPs are denied. Seguimos uma ordem de regra de precedência mais baixa .We follow a lowest takes precedence rule order.

Várias regrasMultiple rules

No exemplo a seguir, se você quiser permitir o acesso ao ponto de extremidade RDP somente de dois intervalos de endereços IPv4 públicos (65.0.0.0/8 e 159.0.0.0/8), poderá conseguir isso especificando duas regras de permissão .In the example below, if you want to allow access to the RDP endpoint only from two public IPv4 address ranges (65.0.0.0/8, and 159.0.0.0/8), you can achieve this by specifying two Permit rules. Nesse caso, como o RDP é criado por padrão para uma máquina virtual, talvez você queira bloquear o acesso à porta RDP com base em uma sub-rede remota.In this case, since RDP is created by default for a virtual machine, you may want to lock down access to the RDP port based on a remote subnet. O exemplo a seguir mostra uma maneira de conceder acesso a IPs virtuais públicos (VIPs) de um determinado intervalo para permitir o acesso ao RDP.The example below shows a way to grant access to public virtual IPs (VIPs) of a certain range to permit access for RDP. Todos os outros IPs remotos são negados.All other remote IPs are denied. Isso funciona porque as ACLs de rede podem ser configuradas para um ponto de extremidade de máquina virtual específico e o acesso é negado por padrão.This works because network ACLs can be set up for a specific virtual machine endpoint and access is denied by default.

Exemplo – várias regrasExample – Multiple rules

Régua #Rule # Sub-rede remotaRemote Subnet EndpointEndpoint Permitir/negarPermit/Deny
100100 65.0.0.0/865.0.0.0/8 33893389 OferecemPermit
200200 159.0.0.0/8159.0.0.0/8 33893389 OferecemPermit

Ordem da regraRule order

Como várias regras podem ser especificadas para um ponto de extremidade, deve haver uma maneira de organizar regras para determinar qual regra tem precedência.Because multiple rules can be specified for an endpoint, there must be a way to organize rules in order to determine which rule takes precedence. A ordem da regra especifica a precedência.The rule order specifies precedence. As ACLs de rede seguem uma ordem de regra de precedência mais baixa .Network ACLs follow a lowest takes precedence rule order. No exemplo abaixo, o ponto de extremidade na porta 80 recebe acesso seletivo somente a determinados intervalos de endereços IP.In the example below, the endpoint on port 80 is selectively granted access to only certain IP address ranges. Para configurar isso, temos uma regra de negação ( # regra 100) para endereços no espaço espaço 175.1.0.1/24.To configure this, we have a deny rule (Rule # 100) for addresses in the 175.1.0.1/24 space. Uma segunda regra é especificada com a precedência 200 que permite o acesso a todos os outros endereços em 175.0.0.0/8.A second rule is then specified with precedence 200 that permits access to all other addresses under 175.0.0.0/8.

Exemplo – precedência de regraExample – Rule precedence

Régua #Rule # Sub-rede remotaRemote Subnet EndpointEndpoint Permitir/negarPermit/Deny
100100 175.1.0.1/24175.1.0.1/24 8080 NegarDeny
200200 175.0.0.0/8175.0.0.0/8 8080 OferecemPermit

ACLs de rede e conjuntos com balanceamento de cargaNetwork ACLs and load balanced sets

As ACLs de rede podem ser especificadas em um ponto de extremidade de conjunto com balanceamento de carga.Network ACLs can be specified on a load balanced set endpoint. Se uma ACL for especificada para um conjunto com balanceamento de carga, a ACL de rede será aplicada a todas as máquinas virtuais nesse conjunto de balanceamento de carga.If an ACL is specified for a load balanced set, the network ACL is applied to all virtual machines in that load balanced set. Por exemplo, se um conjunto com balanceamento de carga for criado com "porta 80" e o conjunto com balanceamento de carga contiver 3 VMs, a ACL de rede criada no ponto de extremidade "porta 80" de uma VM será aplicada automaticamente às outras VMs.For example, if a load balanced set is created with "Port 80" and the load balanced set contains 3 VMs, the network ACL created on endpoint "Port 80" of one VM will automatically apply to the other VMs.

ACLs de rede e conjuntos com balanceamento de carga

Próximos PassosNext Steps

Gerenciar listas de controle de acesso para pontos de extremidade usando o PowerShellManage access control lists for endpoints using PowerShell