Come i gruppi di sicurezza di rete filtrano il traffico
È possibile usare un gruppo di sicurezza di rete di Azure per filtrare il traffico di rete da e verso le risorse di Azure in una rete virtuale di Azure. Un gruppo di sicurezza di rete contiene regole di sicurezza che consentono o rifiutano il traffico di rete in ingresso o in uscita da diversi tipi di risorse di Azure. Per ogni regola, è possibile specificare origine e destinazione, porta e protocollo.
È possibile distribuire le risorse di diversi servizi di Azure in una rete virtuale di Azure. Per un elenco completo, vedere Servizi distribuibili in una rete virtuale. È possibile associare zero o un gruppo di sicurezza di rete a ogni subnet e interfaccia di rete della rete virtuale in una macchina virtuale. Lo stesso gruppo di sicurezza di rete può essere associato a un numero qualsiasi di subnet e interfacce di rete.
L'immagine seguente illustra diversi scenari per l'implementazione dei gruppi di sicurezza di rete per consentire il traffico di rete da e verso Internet tramite la porta TCP 80:
Vedere l'immagine precedente e il testo seguente per comprendere come Azure elabora le regole in ingresso e in uscita per i gruppi di sicurezza di rete:
Traffico in ingresso
Per il traffico in ingresso, Azure elabora prima le regole in un gruppo di sicurezza di rete associato a una subnet, se presente, e quindi le regole in un gruppo di sicurezza di rete associato all'interfaccia di rete, se presente. Questo processo include anche il traffico all'interno della subnet.
VM1: le regole di sicurezza in NSG1 vengono elaborate, poiché è associata a Subnet1 e VM1 si trova in Subnet1. A meno che non sia stata creata una regola che consenta la porta 80 in ingresso, la regola di sicurezza predefinita DenyAllInbound nega il traffico. Questo traffico bloccato non viene quindi valutato da NSG2 perché è associato all'interfaccia di rete. Tuttavia, se NSG1 consente la porta 80 nella regola di sicurezza, NSG2 elabora il traffico. Per consentire la porta 80 alla macchina virtuale, sia NSG1 che NSG2 devono avere una regola che consenta la porta 80 da Internet.
VM2: le regole in NSG1 vengono elaborate perché VM2 si trova anche in Subnet1. Poiché VM2 non dispone di un gruppo di sicurezza di rete associato alla relativa interfaccia di rete, riceve tutto il traffico consentito attraverso NSG1 o le viene negato tutto il traffico negato da NSG1. Quando un gruppo di sicurezza di rete è associato a una subnet, il traffico è consentito o negato a tutte le risorse della stessa subnet.
VM3: poiché non è associato alcun gruppo di sicurezza di rete a Subnet2, il traffico è consentito nella subnet ed elaborato da NSG2, perché NSG2 è associato all'interfaccia di rete collegata a VM3.
VM4: il traffico viene bloccato verso VM4, perché un gruppo di sicurezza di rete non è associato a Subnet3 o all'interfaccia di rete nella macchina virtuale. Tutto il traffico di rete viene bloccato tramite una subnet e un'interfaccia di rete se non è associato un gruppo di sicurezza di rete.
Traffico in uscita
Per il traffico in uscita, Azure elabora prima le regole in un gruppo di sicurezza di rete associato a un'interfaccia di rete, se presente, e quindi le regole in un gruppo di sicurezza di rete associato alla subnet, se presente. Questo processo include anche il traffico all'interno della subnet.
VM1: vengono elaborate le regole di sicurezza presenti in NSG2. La regola di sicurezza predefinita AllowInternetOutbound in NSG1 e NSG2 consente il traffico a meno che non si crei una regola di sicurezza che nega la porta 80 in uscita verso Internet. Se NSG2 nega la porta 80 nella regola di sicurezza, viene negato il traffico e NSG1 non lo valuta mai. Per negare la porta 80 dalla macchina virtuale, uno o entrambi i gruppi di sicurezza di rete devono avere una regola che nega la porta 80 verso Internet.
VM2: tutto il traffico viene inviato tramite l'interfaccia di rete alla subnet, poiché l'interfaccia di rete collegata a VM2 non ha un gruppo di sicurezza di rete associato. Le regole in NSG1 vengono elaborate.
VM3: se NSG2 nega la porta 80 nella regola di sicurezza, nega il traffico. Se NSG2 non nega la porta 80, la regola di sicurezza predefinita AllowInternetOutbound in NSG2 consente il traffico perché non esiste alcun gruppo di sicurezza di rete associato a Subnet2.
VM4: tutto il traffico di rete è consentito da VM4 perché a Subnet3 o all'interfaccia di rete collegata alla macchina virtuale non è associato un gruppo di sicurezza di rete.
Traffico all'interno della subnet
È importante notare che le regole di sicurezza in un gruppo di sicurezza di rete associato a una subnet possono influire sulla connettività tra le macchine virtuali al suo interno. Per impostazione predefinita, le macchine virtuali nella stessa subnet possono comunicare in base a una regola del gruppo di sicurezza di rete predefinita che consente il traffico all'interno della subnet. Se si aggiunge una regola a NSG1 che nega tutto il traffico in ingresso e in uscita, VM1 e VM2 non saranno in grado di comunicare tra loro.
È possibile visualizzare facilmente le regole di aggregazione applicate a un'interfaccia di rete visualizzando le regole di sicurezza effettive per un'interfaccia di rete. È anche possibile usare la funzionalità di verifica del flusso IP in Azure Network Watcher per determinare se è consentita la comunicazione da o verso un'interfaccia di rete. È possibile usare la verifica del flusso IP per determinare se una comunicazione è consentita o negata. Usare inoltre la verifica del flusso IP per visualizzare l'identità della regola di sicurezza di rete responsabile dell'autorizzazione o del rifiuto del traffico.
Nota
I gruppi di sicurezza di rete sono associati a subnet o a macchine virtuali e servizi cloud distribuiti nel modello di distribuzione classico e a subnet o interfacce di rete nel modello di distribuzione Resource Manager. Per altre informazioni in proposito, vedere le informazioni sui modelli di distribuzione di Azure.
Suggerimento
A meno che non si disponga di un motivo specifico, è consigliabile associare un gruppo di sicurezza di rete a una subnet o a un'interfaccia di rete, ma non a entrambi. Dato che le regole di un gruppo di sicurezza di rete associato a una subnet possono entrare in conflitto con quelle di un gruppo di sicurezza di rete associato a un'interfaccia di rete, è possibile che si verifichino problemi di comunicazione imprevisti che devono essere risolti.
Passaggi successivi
Per informazioni sulle risorse di Azure che possono essere distribuite in una rete virtuale e sui gruppi di sicurezza di rete ad esse associati, vedere Integrazione della rete virtuale per i servizi di Azure.
Se non è mai stato creato un gruppo di sicurezza di rete, è possibile completare un'esercitazione rapida per crearne uno.
Se si ha familiarità con i gruppi di sicurezza di rete e si ha la necessità di gestirli, vedere Gestire un gruppo di sicurezza di rete.
Se si verificano problemi di comunicazione ed è necessario risolvere i problemi dei gruppi di sicurezza di rete, vedere Diagnosticare problemi di filtro del traffico di rete di una macchina virtuale.
Informazioni su come abilitare i log dei flussi dei gruppi di sicurezza di rete per analizzare il traffico di rete da e verso le risorse con un gruppo di sicurezza di rete associato.