Dela via


Distribution av privat Application Gateway

Introduction

Tidigare har Application Gateway v2 SKU:er, och i viss utsträckning v1, krävt offentliga IP-adresser för att möjliggöra hantering av tjänsten. Det här kravet har infört flera begränsningar när det gäller att använda detaljerade kontroller i nätverkssäkerhetsgrupper och routningstabeller. Mer specifikt har följande utmaningar observerats:

  • Alla Application Gateways v2-distributioner måste innehålla offentlig frontend IP-konfiguration för att möjliggöra kommunikation till gatewayhanterarens tjänsttagg.
  • Nätverkssäkerhetsgruppassociationer kräver regler för att tillåta inkommande åtkomst från GatewayManager och Utgående åtkomst till Internet.
  • När du introducerar en standardväg (0.0.0.0/0) för att vidarebefordra trafik någon annanstans än Internet resulterar mått, övervakning och uppdateringar av gatewayen i en misslyckad status.

Application Gateway v2 kan nu hantera vart och ett av dessa objekt för att ytterligare eliminera risken för dataexfiltrering och kontrollera kommunikationens integritet inifrån det virtuella nätverket. Dessa ändringar omfattar följande funktioner:

  • IP-konfiguration för endast privat IP-adress på frontend
    • Ingen offentlig IP-adressresurs krävs
  • Eliminering av inkommande trafik från GatewayManager-tjänsttagg via nätverkssäkerhetsgrupp
  • Möjlighet att definiera en Neka alla-regel i en utgående nätverkssäkerhetsgrupp (NSG) för att begränsa trafik utgående till Internet.
  • Möjlighet att åsidosätta standardvägen till Internet (0.0.0.0/0)
  • DNS-upplösning via definierade lösare i det virtuella nätverket Läs mer, inklusive privata DNS-zoner för privata länkar.

Var och en av dessa funktioner kan konfigureras separat. Till exempel kan en offentlig IP-adress användas för att tillåta inkommande trafik från Internet och du kan definiera regeln Neka alla utgående trafik i nätverkssäkerhetsgruppens konfiguration för att förhindra dataexfiltrering.

Registrera dig för funktionen

Funktionerna i de nya kontrollerna för konfiguration av privata IP-klientdelar, kontroll över NSG-regler och kontroll över routningstabeller är allmänt tillgängliga och stöds i produktion. Om du vill använda funktionerna måste du välja att använda Azure-portalen, PowerShell, CLI eller REST API.

När de registreras etablerar alla nya Application Gateways med möjlighet att definiera valfri kombination av NSG, Routningstabell eller privata IP-konfigurationsfunktioner. Om du vill avregistrera dig från de nya funktionerna kan du göra det genom att avregistrera dig från funktionen.

Registrera funktionen

Använd följande steg för att registrera dig för funktionen för de förbättrade Application Gateway-nätverkskontrollerna via Azure-portalen:

  1. Logga in på Azure-portalen.

  2. I sökrutan anger du prenumerationer och väljer Prenumerationer.

    Skärmbild av Azure Portal sökning.

  3. Välj länken för prenumerationens namn.

    Skärmbild av att välja Azure-prenumerationen.

  4. Välj Förhandsversionsfunktioner under Inställningarden vänstra menyn.

    Skärmbild av menyn Med Azure-funktioner.

  5. Du ser en lista över tillgängliga funktioner och din aktuella registreringsstatus.

    Skärmbild av Azure Portal lista över förhandsgranskningsfunktioner.

  6. Från Förhandsgranskningsfunktioner skriver du i filterrutan EnableApplicationGatewayNetworkIsolation, markerar funktionen och klickar på Registrera.

    Skärmbild av Azure Portal filterförhandsgranskningsfunktioner.

Note

Funktionsregistrering kan ta upp till 30 minuter att övergå från Registrering till Registrerad status.

Avregistrera funktionen

Om du vill välja bort funktionen för de förbättrade Application Gateway-nätverkskontrollerna via portalen använder du följande steg:

  1. Logga in på Azure-portalen.

  2. I sökrutan anger du prenumerationer och väljer Prenumerationer.

    Skärmbild av Azure Portal sökning.

  3. Välj länken för prenumerationens namn.

    Skärmbild av att välja Azure-prenumeration.

  4. Välj Förhandsversionsfunktioner under Inställningarden vänstra menyn.

    Skärmbild av menyn Med Azure-funktioner.

  5. Du ser en lista över tillgängliga funktioner och din aktuella registreringsstatus.

    Skärmbild av azure-portalens lista över funktioner.

  6. Från Förhandsgranskningsfunktioner skriver du i filterrutan EnableApplicationGatewayNetworkIsolation, markerar funktionen och klickar på Avregistrera.

    Skärmbild av azure-portalens filterfunktioner.

Konfiguration av nätverkskontroller

När du har registrerat funktionen kan konfigurationen av NSG, Routningstabell och klientdelskonfigurationen för privata IP-adresser utföras med alla metoder. Till exempel: REST API, ARM Template, Bicep deployment, Terraform, PowerShell, CLI eller Portal.

Application Gateway-undernät

Application Gateway-undernätet är undernätet i det virtuella nätverket där Application Gateway-resurserna ska distribueras. I klientdelens privata IP-konfiguration är det viktigt att det här undernätet kan nå de resurser som vill ansluta till din exponerade app eller webbplats privat.

Note

Från och med den 5 maj 2025 kräver Private Application Gateway-distributionerna, både nya och befintliga, undernätsdelegering till Microsoft.Network/applicationGateways. Följ de här stegen för att konfigurera delegering av undernät.

Utgående Internetanslutning

Application Gateway-distributioner som endast innehåller en privat IP-fronkonfiguration (har inte en offentlig IP-fronkonfiguration som är kopplad till en routningsregel för begäran) kan inte skicka utgående trafik till Internet. Den här konfigurationen påverkar kommunikationen till backendmål som är publikt tillgängliga via Internet.

Om du vill aktivera utgående anslutning från din Application Gateway till ett Internetuppkopplat serverdelsmål kan du använda NAT för virtuellt nätverk eller vidarebefordra trafik till en virtuell installation som har åtkomst till Internet.

NAT för virtuella nätverk ger kontroll över vilken IP-adress eller prefix som ska användas samt konfigurerbar tidsgräns för inaktivitet. För att konfigurera skapar du en ny NAT Gateway med en offentlig IP-adress eller ett offentligt prefix och associerar den med undernätet som innehåller Application Gateway.

Om en virtuell installation krävs för utgående Internet kan du läsa avsnittet routningstabellkontroll i det här dokumentet.

Vanliga scenarier där offentlig IP-användning krävs:

  • Kommunikation till nyckelvalvet utan användning av privata slutpunkter eller tjänstslutpunkter
    • Utgående kommunikation krävs inte för pfx-filer som laddas upp direkt till Application Gateway
  • Kommunikation mot backend-system via Internet
  • Kommunikation till internetuppkopplade CRL- eller OCSP-slutpunkter

Kontroll av nätverkssäkerhetsgrupp

Nätverkssäkerhetsgrupper som är associerade med ett Application Gateway-undernät kräver inte längre inkommande regler för GatewayManager, och de kräver inte utgående åtkomst till Internet. ** Den enda obligatoriska regeln är Tillåt inkommande trafik från AzureLoadBalancer för att säkerställa att hälsoundersökningar kan nå gateway.

Följande konfiguration är ett exempel på den mest restriktiva uppsättningen inkommande regler som nekar all trafik utom Azure-hälsoavsökningar. Förutom de definierade reglerna definieras explicita regler för att tillåta klienttrafik att nå gatewayens lyssnare.

Skärmbild av reglerna för inkommande säkerhetsgrupper.

Note

Application Gateway visar en avisering som ber om att se till att Allow LoadBalanceRule anges om en DenyAll-regel oavsiktligt begränsar åtkomsten till hälsoavsökningar.

Exempelscenario

Det här exemplet går igenom skapandet av en NSG med hjälp av Azure Portal med följande regler:

  • Tillåt inkommande trafik till port 80 och 8080 till Application Gateway från klientbegäranden från Internet
  • Neka all övrig inkommande trafik
  • Tillåt utgående trafik till ett serverdelsmål i ett annat virtuellt nätverk
  • Tillåt utgående trafik till ett backendmål som är tillgängligt på Internet
  • Neka all annan utgående trafik

Skapa först en nätverkssäkerhetsgrupp. Den här säkerhetsgruppen innehåller dina regler för inkommande och utgående trafik.

Regler för inkommande trafik

Tre inkommande standardregler har redan etablerats i säkerhetsgruppen. Se följande exempel:

Skärmbild av standardreglerna för säkerhetsgrupper.

Skapa sedan följande fyra nya regler för inkommande säkerhet:

  • Tillåt inkommande port 80, tcp, från Internet (valfritt)
  • Tillåt inkommande port 8080, tcp, från Internet (valfritt)
  • Tillåt inkommande trafik från AzureLoadBalancer
  • Neka inkommande trafik

Så här skapar du följande regler:

  • Välj Inkommande säkerhetsregler
  • Välj Lägg till
  • Ange följande information för varje regel i fönstret Lägg till inkommande säkerhetsregel .
  • När du har angett informationen väljer du Lägg till för att skapa regeln.
  • Det tar en stund att skapa varje regel.
Regel # Source Källtjänsttagg Källportintervall Destination Service Dest-portintervall Protocol Action Priority Name
1 Any * Any HTTP 80 TCP Allow 1028 AllowWeb
2 Any * Any Custom 8080 TCP Allow 1029 AllowWeb8080
3 Servicekod AzureLoadBalancer * Any Custom * Any Allow 1045 AllowLB
4 Any * Any Custom * Any Deny 4095 DenyAllInbound

Välj Uppdatera för att granska alla regler när etableringen är klar.

Skärmbild av exempel på regler för inkommande säkerhetsgrupper.

Regler för utgående trafik

Tre standardregler för utgående trafik med prioritet 65000, 65001 och 65500 har redan etablerats.

Skapa följande tre nya utgående säkerhetsregler:

  • Tillåt TCP 443 från 10.10.4.0/24 till backend-mål 203.0.113.1
  • Tillåt TCP 80 från källa 10.10.4.0/24 till mål 10.13.0.4
  • NekaAlla trafikregler

Dessa regler tilldelas en prioritet på 400, 401 respektive 4096.

Note

  • 10.10.4.0/24 är Application Gateway-undernätets adressutrymme.
  • 10.13.0.4 är en virtuell dator i ett peer-kopplat virtuellt nätverk.
  • 203.0.113.1 är en virtuell serverdelsmåldator.

Så här skapar du följande regler:

  • Välj Utgående säkerhetsregler
  • Välj Lägg till
  • Ange följande information för varje regel i fönstret Lägg till utgående säkerhetsregel .
  • När du har angett informationen väljer du Lägg till för att skapa regeln.
  • Det tar en stund att skapa varje regel.
Regel # Source Källans IP-adress/CIDR-intervall Källportintervall Destination Mål-IP-adresser/CIDR-intervall Service Dest-portintervall Protocol Action Priority Name
1 IP-adresser 10.10.4.0/24 * IP-adresser 203.0.113.1 HTTPS 443 TCP Allow 400 AllowToBackendTarget
2 IP-adresser 10.10.4.0/24 * IP-adresser 10.13.0.4 HTTP 80 TCP Allow 401 AllowToPeeredVnetVM
3 Any * Any Custom * Any Deny 4096 DenyAll

Välj Uppdatera för att granska alla regler när etableringen är klar.

Skärmbild av utgående säkerhetsregler för programgateway.

Associera NSG till undernätet

Det sista steget är att associera nätverkssäkerhetsgruppen med det undernät som innehåller din Application Gateway.

Skärmbild av det associerade NSG till ett undernät.

Result:

Skärmbild av NSG-översikten.

Important

Var försiktig när du definierar DenyAll-regler , eftersom du oavsiktligt kan neka inkommande trafik från klienter som du tänker tillåta åtkomst till. Du kan också oavsiktligt blockera utgående trafik till backend-målet, vilket leder till att hälsotillståndet för backend blir dåligt och resulterar i 5XX-svar.

Routningstabellkontroll

I det aktuella erbjudandet för Application Gateway stöds inte associationen av en routningstabell med en regel (eller skapande av regel) som definierats som 0.0.0.0/0 med ett nästa hopp eftersom den virtuella installationen inte stöds för att säkerställa korrekt hantering av Application Gateway.

Efter registreringen av funktionen är det nu möjligt att vidarebefordra trafik till en virtuell installation via definitionen av en routningstabellregel som definierar 0.0.0.0/0 med nästa hopp till Virtuell installation.

Tvingad tunneltrafik eller inlärning av 0.0.0.0/0-vägen via BGP-annonsering påverkar inte Application Gateway-hälsan och respekteras för trafikflödet. Det här scenariot kan vara tillämpligt när du använder VPN, ExpressRoute, Route Server eller Virtual WAN.

Exempelscenario

I följande exempel skapar vi en routningstabell och associerar den med Application Gateway-undernätet för att säkerställa att utgående Internetåtkomst från undernätet kommer ut från en virtuell installation. På hög nivå sammanfattas följande design i bild 1:

  • Application Gateway finns i ett virtuellt ekernätverk
  • Det finns en virtuell nätverksinstallation (en virtuell dator) i hubbnätverket
  • En routningstabell med en standardväg (0.0.0.0/0) till den virtuella installationen är associerad med Application Gateway-undernätet

Diagram till exempel routningstabell.

Bild 1: Utgående internetåtkomst via virtuell installation

Så här skapar du en routningstabell och associerar den med Application Gateway-undernätet:

  1. Skapa en routningstabell:

Skärmbild av den nyligen skapade routningstabellen.

  1. Välj Vägar och skapa nästa hoppregel för 0.0.0.0/0 och konfigurera målet som IP-adress för den virtuella datorn:

Skärmbild av att lägga till standardvägen till den virtuella nätverksinstallationen.

  1. Välj Undernät och associera routningstabellen till Application Gateway-undernätet:

Skärmbild av hur du kopplar vägen till AppGW-undernätet.

  1. Kontrollera att trafiken passerar genom den virtuella installationen.

Begränsningar/kända problem

Följande begränsningar gäller:

Konfigurationsstöd för privat länk för tunneltrafik via privata slutpunkter till Application Gateway stöds inte med endast privat gateway.

WAF-hastighetsbegränsning

Anpassade regler för hastighetsbegränsning för Application Gateway WAF v2 stöds inte för närvarande.

Konfiguration av privat IP-klientdel endast med AGIC

AGIC v1.7 måste användas för att införa stöd endast för privata frontend-IP-adresser.

Privat slutpunktsanslutning via global VNet-peering

Om Application Gateway har ett mål för backend eller en nyckelvalvsreferens till en privat slutpunkt i ett virtuellt nätverk som är tillgängligt via global VNet-peering, avbryts trafiken, vilket resulterar i en ohälsosam status.

Network Watcher-integrering

Anslutningsfelsökningar och NSG-diagnostik returnerar ett fel när du kör kontroll- och diagnostiktester.

Befintliga v2-applikationsgateways som skapades innan förbättrad nätverkskontroll aktiverades

Om ett undernät delar Application Gateway v2-distributioner som har skapats både före och efter aktiveringen av de förbättrade funktionerna för nätverkskontroll, begränsas funktionaliteten hos både nätverkssäkerhetsgruppen (NSG) och routningstabellen till den tidigare gatewaydistributionen. Programgatewayer som etableras innan de nya funktionerna aktiveras måste antingen återskapas eller så måste nyligen skapade gatewayer använda ett annat undernät för att aktivera förbättrade funktioner för nätverkssäkerhetsgrupp och routningstabell.

  • Om det finns en gateway som distribuerades före aktiveringen av de nya funktionerna i undernätet kan det uppstå fel som: For routes associated to subnet containing Application Gateway V2, please ensure '0.0.0.0/0' uses Next Hop Type as 'Internet' när du lägger till routningstabellposter.
  • När du lägger till regler för nätverkssäkerhetsgrupper i undernätet kan du se: Failed to create security rule 'DenyAnyCustomAnyOutbound'. Error: Network security group \<NSG-name\> blocks outgoing Internet traffic on subnet \<AppGWSubnetId\>, associated with Application Gateway \<AppGWResourceId\>. This isn't permitted for Application Gateways that have fast update enabled or have V2 Sku.

Nästa steg