Dela via


Kontrollera utgående trafik i Azure Container Apps med användardefinierade vägar

Kommentar

Den här funktionen stöds endast för miljötypen för arbetsbelastningsprofiler.

Den här artikeln visar hur du använder användardefinierade vägar (UDR) med Azure Firewall för att låsa utgående trafik från dina Container Apps till Azure-resurser i serverdelen eller andra nätverksresurser.

Azure skapar en standardrutttabell för dina virtuella nätverk vid skapande. Genom att implementera en användardefinierad routningstabell kan du styra hur trafiken dirigeras i det virtuella nätverket. I den här guiden konfigurerar du UDR i det virtuella Container Apps-nätverket för att begränsa utgående trafik med Azure Firewall.

Du kan också använda en NAT-gateway eller andra tredjepartsinstallationer i stället för Azure Firewall.

Mer information finns i konfigurera UDR med Azure Firewall i nätverk i Azure Container Apps.

Förutsättningar

  • Miljö för arbetsbelastningsprofiler: En miljö för arbetsbelastningsprofiler som är integrerad med ett anpassat virtuellt nätverk. Mer information finns i guiden för hur du skapar en containerappmiljö i arbetsbelastningsprofilmiljön.

  • curl support: Containerappen måste ha en container som stöder curl kommandon. I den här instruktionen använder curl du för att kontrollera att containerappen har distribuerats korrekt. Om du inte har en containerapp med curl distribuerad kan du distribuera följande container som stöder curl, mcr.microsoft.com/k8se/quickstart:latest.

Skapa brandväggsundernätet

Ett undernät med namnet AzureFirewallSubnet krävs för att distribuera en brandvägg till det integrerade virtuella nätverket.

  1. Öppna det virtuella nätverk som är integrerat med din app i Azure Portal.

  2. På menyn till vänster väljer du Undernät och sedan + Undernät.

  3. Ange följande värden:

    Inställning Åtgärd
    Namn Ange AzureFirewallSubnet.
    Adressintervall för undernätet Använd standardvärdet eller ange ett undernätsintervall /26 eller större.
  4. Välj Spara

Distribuera brandväggen

  1. På menyn Azure Portal eller på startsidan väljer du Skapa en resurs.

  2. Sök efter brandväggen.

  3. Välj Brandvägg.

  4. Välj Skapa.

  5. På sidan Skapa en brandvägg konfigurerar du brandväggen med följande inställningar.

    Inställning Åtgärd
    Resursgrupp Ange samma resursgrupp som det integrerade virtuella nätverket.
    Namn Ange ett valfritt namn
    Region Välj samma region som det integrerade virtuella nätverket.
    Brandväggsprincip Skapa en genom att välja Lägg till ny.
    Virtuellt nätverk Välj det integrerade virtuella nätverket.
    Offentlig IP-adress Välj en befintlig adress eller skapa en genom att välja Lägg till ny.
  6. Välj Granska + skapa. När valideringen är klar väljer du Skapa. Verifieringssteget kan ta några minuter att slutföra.

  7. När distributionen är klar väljer du Gå till Resurs.

  8. På brandväggens översiktssida kopierar du den privata IP-adressen för brandväggen. Den här IP-adressen används som nästa hoppadress när du skapar routningsregeln för det virtuella nätverket.

Dirigera all trafik till brandväggen

Dina virtuella nätverk i Azure har standardroutningstabeller på plats när du skapar nätverket. Genom att implementera en användardefinierad routningstabell kan du styra hur trafiken dirigeras i det virtuella nätverket. I följande steg skapar du en UDR för att dirigera all trafik till Azure Firewall.

  1. På menyn Azure Portal eller på startsidan väljer du Skapa en resurs.

  2. Sök efter Routningstabeller.

  3. Välj Routningstabeller.

  4. Välj Skapa.

  5. Ange följande värden:

    Inställning Åtgärd
    Region Välj regionen som ditt virtuella nätverk.
    Namn Ange ett namn.
    Sprida gatewayvägar Välj Nej
  6. Välj Granska + skapa. När valideringen är klar väljer du Skapa.

  7. När distributionen är klar väljer du Gå till Resurs.

  8. På menyn till vänster väljer du Vägar och sedan Lägg till för att skapa en ny routningstabell

  9. Konfigurera routningstabellen med följande inställningar:

    Inställning Åtgärd
    Adressprefix Ange 0.0.0.0/0
    Nästa hopp-typ Välj Virtuell installation
    Nästa hoppadress Ange den privata IP-adressen för brandväggen som du sparade i Distribuera brandväggen.
  10. Välj Lägg till för att skapa vägen.

  11. På menyn till vänster väljer du Undernät och sedan Associera för att associera routningstabellen med containerappens undernät.

  12. Konfigurera undernätet Associera med följande värden:

    Inställning Åtgärd
    Virtuellt nätverk Välj det virtuella nätverket för containerappen.
    Undernät Välj undernätet för containerappen.
  13. Välj OK.

Konfigurera brandväggsprinciper

Kommentar

När du använder UDR med Azure Firewall i Azure Container Apps måste du lägga till vissa FQDN- och tjänsttaggar i listan över tillåtna för brandväggen. Se konfigurera UDR med Azure Firewall för att avgöra vilka tjänsttaggar du behöver.

Nu dirigeras all utgående trafik från containerappen till brandväggen. För närvarande tillåter brandväggen fortfarande all utgående trafik. För att kunna hantera vilken utgående trafik som tillåts eller nekas måste du konfigurera brandväggsprinciper.

  1. I Azure Firewall-resursen på sidan Översikt väljer du Brandväggsprincip

  2. På menyn till vänster på sidan brandväggsprincip väljer du Programregler.

  3. Välj Lägg till en regelsamling.

  4. Ange följande värden för regelsamlingen:

    Inställning Åtgärd
    Namn Ange ett samlingsnamn
    Typ av regelsamling Välj program
    Prioritet Ange prioriteten, till exempel 110
    Regelinsamlingsåtgärd Välj Tillåt
    Regelsamlingsgrupp Välj DefaultApplicationRuleCollectionGroup
  5. Under Regler anger du följande värden

    Inställning Åtgärd
    Namn Ange ett namn för regeln
    Källtyp Välj IP-adress
    Source Ange *
    Protokoll Ange http:80,https:443
    Måltyp Välj FQDN.
    Mål Ange mcr.microsoft.com,*.data.mcr.microsoft.com. Om du använder ACR lägger du till din ACR-adress och *.blob.core.windows.net.
    Åtgärd Välj Tillåt

    Kommentar

    Om du använder Docker Hub-registret och vill komma åt det via brandväggen måste du lägga till följande FQDN i din regelmållista: hub.docker.com, registry-1.docker.io och production.cloudflare.docker.com.

  6. Markera Lägga till.

Kontrollera att brandväggen blockerar utgående trafik

Om du vill kontrollera att brandväggskonfigurationen är korrekt konfigurerad kan du använda curl kommandot från appens felsökningskonsol.

  1. Gå till din containerapp som har konfigurerats med Azure Firewall.

  2. På menyn till vänster väljer du Konsol och sedan din container som stöder curl kommandot.

  3. I kommandomenyn Välj start väljer du /bin/sh och väljer Anslut.

  4. Kör i konsolen curl -s https://mcr.microsoft.com. Du bör se ett lyckat svar när du har lagt mcr.microsoft.com till i listan över tillåtna brandväggsprinciper.

  5. Kör curl -s https://<FQDN_ADDRESS> för en URL som inte matchar någon av dina målregler, example.comtill exempel . Exempelkommandot skulle vara curl -s https://example.com. Du bör inte få något svar, vilket indikerar att brandväggen har blockerat begäran.

Nästa steg