Informazioni sugli elenchi di controllo di accesso agli endpointWhat is an endpoint access control list?

Importante

Azure offre due modelli di distribuzione per creare e usare le risorse: Resource Manager e la distribuzione classica.Azure has two different deployment models for creating and working with resources: Resource Manager and classic. Questo articolo illustra l'uso del modello di distribuzione classica.This article covers using the classic deployment model. Microsoft consiglia di usare il modello di distribuzione Resource Manager per le distribuzioni più recenti.Microsoft recommends that most new deployments use the Resource Manager deployment model.

Un elenco di controllo di accesso (ACL) agli endpoint è un miglioramento della sicurezza disponibile per la distribuzione di Azure.An endpoint access control list (ACL) is a security enhancement available for your Azure deployment. Offre la possibilità di consentire o negare in modo selettivo il traffico per un endpoint di macchina virtuale.An ACL provides the ability to selectively permit or deny traffic for a virtual machine endpoint. Questa funzionalità di filtro per i pacchetti garantisce un ulteriore livello di sicurezza.This packet filtering capability provides an additional layer of security. È possibile specificare elenchi di controllo di accesso di rete solo per gli endpointYou can specify network ACLs for endpoints only. e non per una rete virtuale o una subnet specifica in essa contenuta.You can't specify an ACL for a virtual network or a specific subnet contained in a virtual network. È consigliabile usare i gruppi di sicurezza di rete invece degli elenchi di controllo di accesso, laddove possibile.It is recommended to use network security groups (NSGs) instead of ACLs, whenever possible. Per altre informazioni sui gruppi di accesso di rete, vedere Panoramica dei gruppi di sicurezza di rete.To learn more about NSGs, see Network security group overview

Gli elenchi di controllo di accesso possono essere configurati tramite PowerShell o il portale di Azure.ACLs can be configured by using either PowerShell or the Azure portal. Per configurare un elenco di controllo di accesso di rete usando PowerShell, vedere Gestione degli elenchi di controllo di accesso per gli endpoint tramite PowerShell.To configure a network ACL by using PowerShell, see Managing access control lists for endpoints using PowerShell. Per configurare un elenco di controllo di accesso di rete usando il portale di Azure, vedere Come configurare gli endpoint in una macchina virtuale.To configure a network ACL by using the Azure portal, see How to set up endpoints to a virtual machine.

Con gli elenchi di controllo di accesso di rete, è possibile effettuare le operazioni seguenti:Using Network ACLs, you can do the following:

  • Consentire o negare in modo selettivo il traffico in ingresso in base a un intervallo di indirizzi IPv4 di subnet remota in un endpoint di input di macchina virtuale.Selectively permit or deny incoming traffic based on remote subnet IPv4 address range to a virtual machine input endpoint.
  • Creare una blacklist di indirizzi IP.Blacklist IP addresses
  • Creare più regole per un endpoint di macchina virtuale.Create multiple rules per virtual machine endpoint
  • Usare l'ordinamento delle regole per assicurarsi che venga applicato il set di regole corretto per un endpoint specifico di macchina virtuale (dalla più bassa alla più alta).Use rule ordering to ensure the correct set of rules are applied on a given virtual machine endpoint (lowest to highest)
  • Specificare un elenco di controllo di accesso per un indirizzo IPv4 di una subnet remota specifica.Specify an ACL for a specific remote subnet IPv4 address.

Per i limiti degli elenchi di controllo di accesso, vedere l'articolo Limiti di Azure.See the Azure limits article for ACL limits.

Funzionamento degli elenchi di controllo di accessoHow ACLs work

Un elenco di controllo di accesso è un oggetto che contiene un elenco di regole.An ACL is an object that contains a list of rules. Quando si crea e si applica un elenco di controllo di accesso a un endpoint di macchina virtuale, viene eseguito il filtro dei pacchetti nel nodo host della macchina virtuale.When you create an ACL and apply it to a virtual machine endpoint, packet filtering takes place on the host node of your VM. Questo significa che il traffico proveniente dagli indirizzi IP remoti non viene filtrato nella macchina virtuale, bensì dal nodo host per la corrispondenza con le regole degli elenchi di controllo di accesso.This means the traffic from remote IP addresses is filtered by the host node for matching ACL rules instead of on your VM. In questo modo si evita che la macchina virtuale usi preziosi cicli della CPU per filtrare i pacchetti.This prevents your VM from spending the precious CPU cycles on packet filtering.

Quando viene creata una macchina virtuale, viene creato anche un elenco di controllo di accesso predefinito per bloccare tutto il traffico in ingresso.When a virtual machine is created, a default ACL is put in place to block all incoming traffic. Se però viene creato un endpoint per la porta 3389, l'elenco di controllo di accesso predefinito viene modificato in modo da consentire tutto il traffico in ingresso per tale endpoint.However, if an endpoint is created for (port 3389), then the default ACL is modified to allow all inbound traffic for that endpoint. Il traffico in ingresso proveniente da una subnet remota verso tale endpoint viene quindi consentito e non è necessario il provisioning di alcun firewall.Inbound traffic from any remote subnet is then allowed to that endpoint and no firewall provisioning is required. Tutte le altre porte sono bloccate per il traffico in ingresso a meno che non vengano creati endpoint per tali porte.All other ports are blocked for inbound traffic unless endpoints are created for those ports. Il traffico in uscita è consentito per impostazione predefinita.Outbound traffic is allowed by default.

Tabella di esempio di elenco di controllo di accesso predefinitoExample Default ACL table

N. regolaRule # Subnet remotaRemote Subnet EndpointEndpoint Consenti/NegaPermit/Deny
100100 0.0.0.0/00.0.0.0/0 33893389 ConsentiPermit

Consentire e negarePermit and deny

È possibile consentire o negare in modo selettivo il traffico di rete per un endpoint di input di macchina virtuale creando regole che specificano "consenti" o "nega".You can selectively permit or deny network traffic for a virtual machine input endpoint by creating rules that specify "permit" or "deny". È importante notare che per impostazione predefinita, quando viene creato un endpoint, tutto il traffico per l'endpoint viene consentito.It's important to note that by default, when an endpoint is created, all traffic is permitted to the endpoint. Per questo motivo, è importante capire come creare regole di autorizzazione/rifiuto e posizionarle secondo un ordine di precedenza appropriato per esercitare un controllo granulare sul traffico di rete che si sceglie di consentire per l'endpoint della macchina virtuale.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.

Elementi da considerare:Points to consider:

  1. Nessun ACL : per impostazione predefinita quando viene creato un endpoint, tutto il traffico viene consentito.No ACL – By default when an endpoint is created, we permit all for the endpoint.
  2. Consenti : quando si aggiungono uno o più intervalli "Consenti", per impostazione predefinita tutti gli altri intervalli vengono negati.Permit - When you add one or more "permit" ranges, you are denying all other ranges by default. Solo i pacchetti provenienti dall'intervallo IP consentito saranno in grado di comunicare con l'endpoint della macchina virtuale.Only packets from the permitted IP range will be able to communicate with the virtual machine endpoint.
  3. Nega : quando si aggiungono uno o più intervalli "Nega", per impostazione predefinita tutti gli altri intervalli di traffico vengono consentiti.Deny - When you add one or more "deny" ranges, you are permitting all other ranges of traffic by default.
  4. Combinazione di Consenti e Nega : è possibile usare una combinazione di "Consenti" e "Nega" per definire un intervallo IP da consentire o negare.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.

Regole e relativa precedenzaRules and rule precedence

È possibile configurare elenchi di controllo di accesso di rete per endpoint di macchina virtuale specifici.Network ACLs can be set up on specific virtual machine endpoints. È ad esempio possibile specificare un elenco di controllo di accesso di rete per un endpoint RDP creato in una macchina virtuale che blocca l'accesso a determinati indirizzi 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. La tabella seguente illustra come concedere l'accesso a indirizzi IP virtuali pubblici (VIP) di un determinato intervallo per consentire l'accesso per RDP.The table below shows a way to grant access to public virtual IPs (VIPs) of a certain range to permit access for RDP. Tutti gli altri indirizzi IP remoti vengono negati.All other remote IPs are denied. L'ordine di precedenza adottato per le regole è la più bassa ha la precedenza .We follow a lowest takes precedence rule order.

Regole multipleMultiple rules

Nell'esempio seguente se si desidera consentire l'accesso all'endpoint RDP solo da due intervalli di indirizzi IPv4 pubblici (65.0.0.0/8 e 159.0.0.0/8), è possibile specificare due regole Consenti .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. In questo caso poiché RDP viene creato per impostazione predefinita per una macchina virtuale, è possibile bloccare l'accesso alla porta RDP in base a una subnet 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. L'esempio seguente illustra come concedere l'accesso a indirizzi IP virtuali pubblici (VIP) di un determinato intervallo per consentire l'accesso per RDP.The example below shows a way to grant access to public virtual IPs (VIPs) of a certain range to permit access for RDP. Tutti gli altri indirizzi IP remoti vengono negati.All other remote IPs are denied. Questo processo funziona perché è possibile configurare elenchi di controllo di accesso di rete per un endpoint di macchina virtuale specifico e l'accesso viene negato per impostazione predefinita.This works because network ACLs can be set up for a specific virtual machine endpoint and access is denied by default.

Esempio: regole multipleExample – Multiple rules

N. regolaRule # Subnet remotaRemote Subnet EndpointEndpoint Consenti/NegaPermit/Deny
100100 65.0.0.0/865.0.0.0/8 33893389 ConsentiPermit
200200 159.0.0.0/8159.0.0.0/8 33893389 ConsentiPermit

Ordine delle regoleRule order

Poiché è possibile specificare più regole per un endpoint, è necessario trovare un modo per organizzare le regole per determinare quale ha la precedenza.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. L'ordine delle regole specifica la precedenza.The rule order specifies precedence. L'ordine di precedenza adottato per gli elenchi di controllo di accesso di rete è la più bassa ha la precedenza .Network ACLs follow a lowest takes precedence rule order. Nell'esempio seguente all'endpoint sulla porta 80 viene concesso l'accesso in modo selettivo solo a determinati intervalli di indirizzi IP A tale scopo, è necessaria una regola Nega (regola n.In the example below, the endpoint on port 80 is selectively granted access to only certain IP address ranges. 100) per gli indirizzi nello spazio #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. Una seconda regola viene quindi specificata con la precedenza 200 che consente l'accesso a tutti gli altri indirizzi in 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.

Esempio: precedenza delle regoleExample – Rule precedence

N. regolaRule # Subnet remotaRemote Subnet EndpointEndpoint Consenti/NegaPermit/Deny
100100 175.1.0.1/24175.1.0.1/24 8080 NegaDeny
200200 175.0.0.0/8175.0.0.0/8 8080 ConsentiPermit

Elenchi di controllo di accesso di rete e set con carico bilanciatoNetwork ACLs and load balanced sets

È possibile specificare elenchi di controllo di accesso di rete sull'endpoint di un set con carico bilanciato.Network ACLs can be specified on a load balanced set endpoint. Se per un set con carico bilanciato viene specificato un elenco di controllo di accesso, l'elenco di controllo di accesso di rete verrà applicato a tutte le macchine virtuali di tale set con carico bilanciato.If an ACL is specified for a load balanced set, the network ACL is applied to all virtual machines in that load balanced set. Se ad esempio viene creato un set con carico bilanciato con la "porta 80" e 3 macchine virtuali, l'elenco di controllo di accesso di rete creato sulla "porta 80" dell'endpoint di una macchina virtuale verrà applicato automaticamente alle altre macchine virtuali.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.

Elenchi di controllo di accesso di rete e set con carico bilanciato

Passaggi successiviNext Steps

Gestire elenchi di controllo di accesso di endpoint con PowerShellManage access control lists for endpoints using PowerShell