Protezione di una rete virtuale personalizzata nelle app contenitore di Azure con gruppi di sicurezza di rete

I gruppi di sicurezza di rete (NSG) necessari per configurare le reti virtuali sono simili alle impostazioni richieste da Kubernetes.

È possibile bloccare una rete tramite gruppi di sicurezza di rete con regole più restrittive rispetto alle regole predefinite del gruppo di sicurezza di rete per controllare tutto il traffico in ingresso e in uscita per l'ambiente app contenitore a livello di sottoscrizione.

Nell'ambiente dei profili di carico di lavoro sono supportate route definite dall'utente e protezione del traffico in uscita con un firewall . Quando si usa un ambiente di profili di carico di lavoro esterno, il traffico in ingresso verso App Contenitore di Azure viene instradato tramite l'indirizzo IP pubblico presente nel gruppo di risorse gestite anziché tramite la subnet. Ciò significa che il blocco del traffico in ingresso tramite un gruppo di sicurezza di rete o un firewall in un ambiente di profili di carico di lavoro esterno non è supportato. Per altre informazioni, vedere Rete negli ambienti di App Azure Container.

Nell'ambiente Solo consumo, route definite dall'utente personalizzate. Nell'ambiente Solo consumo le route rapide non sono supportate e le route definite dall'utente personalizzate hanno un supporto limitato. Per altre informazioni sul livello di supporto della route definita dall'utente disponibile nell'ambiente solo a consumo, vedere le domande frequenti.

Regole di autorizzazione del gruppo di sicurezza di rete

Le tabelle seguenti descrivono come configurare una raccolta di regole di autorizzazione dei gruppi di sicurezza di rete. Le regole specifiche necessarie dipendono dal tipo di ambiente.

In entrata

Nota

Quando si usano i profili di carico di lavoro, le regole del gruppo di sicurezza di rete in ingresso si applicano solo per il traffico che attraversa la rete virtuale. Se le app contenitore sono impostate per accettare il traffico dalla rete Internet pubblica, il traffico in ingresso passa attraverso l'endpoint pubblico anziché la rete virtuale.

Protocollo Origine Porte di origine Destinazione Porte di destinazione Descrizione
TCP Indirizzi IP client * Subnet 1 dell'appcontenitore 80, 31080 Consentire agli indirizzi IP client di accedere alle app di Azure Container quando si usa HTTP. 31080 è la porta in cui il proxy Edge dell'ambiente delle app contenitore risponde al traffico HTTP. Si trova dietro il servizio di bilanciamento del carico interno.
TCP Indirizzi IP client * Subnet 1 dell'appcontenitore 443, 31443 Consentire agli indirizzi IP client di accedere alle app di Azure Container quando si usa HTTPS. 31443 è la porta in cui il proxy Edge dell'ambiente delle app contenitore risponde al traffico HTTPS. Si trova dietro il servizio di bilanciamento del carico interno.
TCP AzureLoadBalancer * Subnet dell'app contenitore 30000-327672 Consentire ad Azure Load Balancer di eseguire il probe dei pool back-end.

1 Questo indirizzo viene passato come parametro quando si crea un ambiente. Ad esempio: 10.0.0.0/21.
2 L'intervallo completo è necessario quando si creano le app contenitore di Azure come porta all'interno dell'intervallo verrà allocato in modo dinamico. Dopo la creazione, le porte necessarie sono due valori statici non modificabili ed è possibile aggiornare le regole del gruppo di sicurezza di rete.

In uscita

Protocollo Origine Porte di origine Destinazione Porte di destinazione Descrizione
TCP Subnet dell'app contenitore * MicrosoftContainerRegistry 443 Questo è il tag del servizio per il registro contenitori Microsoft per i contenitori di sistema.
TCP Subnet dell'app contenitore * AzureFrontDoor.FirstParty 443 Si tratta di una dipendenza del tag del MicrosoftContainerRegistry servizio.
Any Subnet dell'app contenitore * Subnet dell'app contenitore * Consentire la comunicazione tra indirizzi IP nella subnet dell'app contenitore.
TCP Subnet dell'app contenitore * AzureActiveDirectory 443 Se si usa l'identità gestita, è necessario.
TCP Subnet dell'app contenitore * AzureMonitor 443 Obbligatorio solo quando si usa Monitoraggio di Azure. Consente chiamate in uscita a Monitoraggio di Azure.
TCP e UDP Subnet dell'app contenitore * 168.63.129.16 53 Consente all'ambiente di usare DNS di Azure per risolvere il nome host.
TCP Subnet 1 dell'appcontenitore * Registro Contenitori Porta del registro contenitori Questa operazione è necessaria per comunicare con il registro contenitori. Ad esempio, quando si usa Registro Azure Container, è necessario AzureContainerRegistry e AzureActiveDirectory per la destinazione e la porta sarà la porta del registro contenitori, a meno che non usi endpoint privati.2
TCP Subnet dell'app contenitore * Storage.<Region> 443 Obbligatorio solo quando si usa Azure Container Registry per ospitare le immagini.

1 Questo indirizzo viene passato come parametro quando si crea un ambiente. Ad esempio: 10.0.0.0/21.
2 Se si usa Registro Azure Container (ACR) con gruppi di sicurezza di rete configurati nella rete virtuale, creare un endpoint privato nel Registro Azure Container per consentire alle app di Azure Container di eseguire il pull delle immagini attraverso la rete virtuale. Non è necessario aggiungere una regola del gruppo di sicurezza di rete per Registro Azure Container quando è configurata con endpoint privati.

Considerazioni

  • Se si eseguono server HTTP, potrebbe essere necessario aggiungere porte 80 e 443.
  • Non negare in modo esplicito l'indirizzo 168.63.129.16 DNS di Azure nelle regole del gruppo di sicurezza di rete in uscita o l'ambiente app contenitore non sarà in grado di funzionare.