Netwerkbeveiligingsgroepen voor het configureren van een virtueel netwerk in Azure Container Apps

Netwerkbeveiligingsgroepen (NSG's) die u nodig hebt voor het configureren van virtuele netwerken lijken op de instellingen die Kubernetes nodig heeft.

U kunt een netwerk beveiligen via NSG's met meer beperkende regels dan de standaard NSG-regels om al het inkomende en uitgaande verkeer voor de Azure Container Apps-omgeving op abonnementsniveau te beheren.

In de omgeving van het workloadprofiel worden door de gebruiker gedefinieerde routes (UDR's) en het beveiligen van uitgaand verkeer met een firewall ondersteund. Zie Besturingselement voor uitgaand verkeer in Azure Container Apps met door de gebruiker gedefinieerde routes voor een handleiding over het instellen van een UDR voor Container Apps om uitgaand verkeer met Azure Firewall te beperken.

Wanneer u een omgeving met een extern workloadprofiel gebruikt, wordt binnenkomend verkeer naar Container Apps gerouteerd via het openbare IP-adres dat bestaat in de beheerde resourcegroep in plaats van via uw subnet. Deze beperking betekent dat het vergrendelen van inkomend verkeer via NSG of firewall in een omgeving met een extern workloadprofiel niet wordt ondersteund.

In de verouderde omgeving met alleen verbruik wordt Azure ExpressRoute niet ondersteund en bieden aangepaste UDR's beperkte ondersteuning. Zie de veelgestelde vragen voor meer informatie over het niveau van UDR-ondersteuning die beschikbaar is in een omgeving met alleen verbruik.

NSG-regels toestaan

In de volgende tabellen wordt beschreven hoe u een verzameling NSG-regels voor toestaan configureert. De specifieke regels die u nodig hebt, zijn afhankelijk van uw omgevingstype.

Inkomend

Notitie

Wanneer u workloadprofielen gebruikt, zijn binnenkomende NSG-regels alleen van toepassing op verkeer dat via uw virtuele netwerk gaat. Als u instelt dat uw container-apps verkeer van het openbare internet accepteren, gaat binnenkomend verkeer via het openbare eindpunt in plaats van het virtuele netwerk.

protocol Bron Bronpoorten Bestemming Doelpoorten Beschrijving
TCP Uw client-IP's * Subnet1 van uw container-app 80, 31080 Sta toe dat uw client-IP's toegang hebben tot Container Apps wanneer u HTTP gebruikt. 31080 is de poort waarop de Edge-proxy van de Container Apps-omgeving reageert op het HTTP-verkeer. Deze bevindt zich achter de interne load balancer.
TCP Uw client-IP's * Subnet1 van uw container-app 443, 31443 Sta toe dat uw client-IP-adressen toegang hebben tot Container Apps wanneer u HTTPS gebruikt. 31443 is de poort waarop de Edge-proxy van de Container Apps-omgeving reageert op het HTTPS-verkeer. Deze bevindt zich achter de interne load balancer.
TCP Azure-belastingsverdeling * Het subnet van uw container-app 30000-32767 2 Sta Azure Load Balancer toe om back-endpools te testen.
TCP Uw client-IP's * Het subnet van uw container-app Weergegeven poorten en 30000-327672 Deze regel is alleen van toepassing op TCP-apps. Dit is niet vereist voor HTTP-apps.

1 U geeft dit adres door als parameter wanneer u een omgeving maakt. Bijvoorbeeld: 10.0.0.0/21.

2 U hebt het volledige bereik nodig bij het maken van uw container-apps als een poort binnen het bereik, wordt dynamisch toegewezen. Nadat u de container-apps hebt gemaakt, zijn de vereiste poorten twee onveranderbare, statische waarden en kunt u uw NSG-regels bijwerken.

Uitgaand

protocol Bron Bronpoorten Bestemming Doelpoorten Beschrijving
TCP Het subnet van uw container-app * MicrosoftContainerRegistry 443 Deze servicetag vertegenwoordigt Microsoft Artifact Registry voor systeemcontainers.
TCP Het subnet van uw container-app * AzureFrontDoor.FirstParty 443 Deze servicetag is een afhankelijkheid van de MicrosoftContainerRegistry servicetag.
Alle Het subnet van uw container-app * Het subnet van uw container-app * Met deze regel kan communicatie tussen IP-adressen in het subnet van uw container-app worden toegestaan.
TCP Het subnet van uw container-app * AzureActiveDirectory 443 Als u een beheerde identiteit gebruikt, is dit vereist.
TCP Het subnet van uw container-app * AzureMonitor 443 Deze regel is alleen vereist wanneer u Azure Monitor gebruikt. Hiermee kunnen uitgaande oproepen naar Azure Monitor.
TCP en UDP Het subnet van uw container-app * 168.63.129.16 53 Met deze regel kan de omgeving Azure DNS gebruiken om de hostnaam op te lossen.

DNS-communicatie naar Azure DNS is niet onderworpen aan NSG's, tenzij deze is gericht via de servicetag AzurePlatformDNS. Als u DNS-verkeer wilt blokkeren, maakt u een uitgaande regel om verkeer naar de AzurePlatformDNS servicetag te weigeren.
TCP Subnet1 van uw container-app * Uw containerregister Poort van uw containerregister Deze regel is vereist om te communiceren met uw containerregister. Wanneer u bijvoorbeeld Azure Container Registry gebruikt, hebt u AzureContainerRegistry en AzureActiveDirectory nodig voor de bestemming. De poort is de poort van uw containerregister, tenzij u privé-eindpunten gebruikt. 2
TCP Het subnet van uw container-app * Storage.<Region> 443 Deze regel is alleen vereist wanneer u Container Registry gebruikt om uw installatiekopieën te hosten.

1 U geeft dit adres door als parameter wanneer u een omgeving maakt. Bijvoorbeeld: 10.0.0.0/21.

2 Als u Container Registry gebruikt met NSG's die zijn geconfigureerd in uw virtuele netwerk, maakt u een privé-eindpunt in uw containerregister zodat Container Apps installatiekopieën kan ophalen via het virtuele netwerk. U hoeft geen NSG-regel toe te voegen voor Container Registry wanneer deze is geconfigureerd met privé-eindpunten.

Overwegingen

  • Als u HTTP-servers gebruikt, moet u mogelijk poorten 80 toevoegen en 443.
  • Weiger het Azure DNS adres niet expliciet 168.63.129.16 in de uitgaande NSG-regels. Als u dit doet, werkt uw Container Apps-omgeving niet.