Dela via


Skydda ett anpassat VNET i Azure Container Apps med nätverkssäkerhetsgrupper

Nätverkssäkerhetsgrupper (NSG:er) som behövs för att konfigurera virtuella nätverk liknar de inställningar som krävs av Kubernetes.

Du kan låsa ett nätverk via NSG:er med mer restriktiva regler än NSG-standardreglerna för att styra all inkommande och utgående trafik för Container Apps-miljön på prenumerationsnivå.

I miljön för arbetsbelastningsprofiler stöds användardefinierade vägar (UDR) och skydd av utgående trafik med en brandvägg . När du använder en miljö för externa arbetsbelastningsprofiler dirigeras inkommande trafik till Azure Container Apps via den offentliga IP-adressen som finns i den hanterade resursgruppen i stället för via ditt undernät. Det innebär att låsning av inkommande trafik via NSG eller brandvägg i en extern miljö för arbetsbelastningsprofiler inte stöds. Mer information finns i Nätverk i Azure Container Apps-miljöer.

I förbrukningsmiljön stöds inte expressvägar och anpassade användardefinierade vägar (UDR) har begränsat stöd. Mer information om nivån för UDR-stöd som är tillgängligt i en miljö med endast förbrukning finns i Vanliga frågor och svar.

NSG-tillåtna regler

I följande tabeller beskrivs hur du konfigurerar en samling NSG-tillåtna regler. De specifika regler som krävs beror på din miljötyp.

Inkommande

Kommentar

När du använder arbetsbelastningsprofiler gäller inkommande NSG-regler endast för trafik som går via ditt virtuella nätverk. Om dina containerappar är inställda på att acceptera trafik från det offentliga Internet går inkommande trafik via den offentliga slutpunkten i stället för det virtuella nätverket.

Protokoll Källa Källportar Mål Målportar beskrivning
TCP Dina klient-IP-adresser * Containerappens undernät1 80, 31080 Tillåt dina klient-IP-adresser att komma åt Azure Container Apps när du använder HTTP. 31080 är porten där Container Apps Environment Edge Proxy svarar på HTTP-trafiken. Den ligger bakom den interna lastbalanseraren.
TCP Dina klient-IP-adresser * Containerappens undernät1 443, 31443 Tillåt dina klient-IP-adresser att komma åt Azure Container Apps när du använder HTTPS. 31443 är porten där Container Apps Environment Edge Proxy svarar på HTTPS-trafiken. Den ligger bakom den interna lastbalanseraren.
TCP AzureLoadBalancer * Containerappens undernät 30000-327672 Tillåt att Azure Load Balancer avsöker serverdelspooler.

1 Den här adressen skickas som en parameter när du skapar en miljö. Exempel: 10.0.0.0/21
2 Det fullständiga intervallet krävs när du skapar dina Azure Container Apps som en port inom intervallet genom att dynamiskt allokeras. När de nödvändiga portarna har skapats är de två oföränderliga, statiska värdena, och du kan uppdatera dina NSG-regler.

Utgående

Protokoll Källa Källportar Mål Målportar beskrivning
TCP Containerappens undernät * MicrosoftContainerRegistry 443 Det här är tjänsttaggen för Microsoft Container Registry för systemcontainrar.
TCP Containerappens undernät * AzureFrontDoor.FirstParty 443 Det här är ett beroende av MicrosoftContainerRegistry tjänsttaggen.
Alla Containerappens undernät * Containerappens undernät * Tillåt kommunikation mellan IP-adresser i containerappens undernät.
TCP Containerappens undernät * AzureActiveDirectory 443
Om du använder en hanterad identitet krävs det.
TCP Containerappens undernät * AzureMonitor 443 Krävs endast när du använder Azure Monitor. Tillåter utgående anrop till Azure Monitor.
TCP och UDP Containerappens undernät * 168.63.129.16 53 Gör att miljön kan använda Azure DNS för att matcha värdnamnet.

Obs! DNS-kommunikation till Azure DNS omfattas inte av NSG:er om inte tjänstens tagg används AzurePlatformDNS som mål. Om du vill blockera DNS-trafik skapar du en regel för utgående trafik för att neka trafik till AzurePlatformDNS tjänsttaggen.
TCP Containerappens undernät1 * Ditt containerregister Containerregistrets port Detta krävs för att kommunicera med ditt containerregister. När du till exempel använder ACR behöver AzureContainerRegistry du och AzureActiveDirectory för målet, och porten är containerregistrets port om du inte använder privata slutpunkter.2
TCP Containerappens undernät * Storage.<Region> 443 Krävs endast när du använder Azure Container Registry för att vara värd för dina avbildningar.

1 Den här adressen skickas som en parameter när du skapar en miljö. Exempel: 10.0.0.0/21
2 Om du använder Azure Container Registry (ACR) med NSG:er konfigurerade i ditt virtuella nätverk skapar du en privat slutpunkt på din ACR så att Azure Container Apps kan hämta avbildningar via det virtuella nätverket. Du behöver inte lägga till en NSG-regel för ACR när du konfigurerar med privata slutpunkter.

Att tänka på

  • Om du kör HTTP-servrar kan du behöva lägga till portar 80 och 443.
  • Neka inte uttryckligen Azure DNS-adressen 168.63.129.16 i de utgående NSG-reglerna, eller så fungerar inte Container Apps-miljön.