Kommentar
Åtkomst till den här sidan kräver auktorisering. Du kan prova att logga in eller ändra kataloger.
Åtkomst till den här sidan kräver auktorisering. Du kan prova att ändra kataloger.
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:
- Endast privat frontend-IP-konfiguration
- 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.
Tips/Råd
Mer detaljerad vägledning om hur du konfigurerar DNS för Application Gateway finns i Application Gateway DNS-upplösning.
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
Den här artikeln behandlar privat Application Gateway-distribution för Application Gateway v2-SKU:er. Den stöder två distributionslägen: en privat frontend-IP-konfiguration och en kombinerad konfiguration som använder både en publik och en privat frontend-IP-konfiguration. Inställningarna för privat frontend-IP-konfiguration, regelhantering för nätverkssäkerhetsgrupper (NSG) och konfiguration av routningstabeller är allmänt tillgängliga och stöds i produktion.
För att använda dessa funktioner måste du välja att delta i upplevelsen genom att använda Azure-portalen, PowerShell, CLI eller REST API. Denna opt-in-mekanism ger också flexibilitet om du behöver återgå till traditionell applikationsgatewayfunktionalitet när det behövs (till exempel för att aktivera Private Link).
Tips/Råd
Gatewayer fungerar med de funktioner som är tillgängliga när de etableras. Om du avregistrerar från funktionen fortsätter befintliga gatewayer att fungera med de funktioner som aktiverades när de skapades.
Registrera funktionen
Note
I Azure Portal-upplevelsen är funktionsregistreringsprocessen märkt som förhandsversion. Den här upplevelsen är dock allmänt tillgänglig, stöds fullt ut för produktionsarbetsbelastningar och omfattas av de publicerade serviceavtalen för Application Gateway.
Använd följande steg för att registrera funktionen för privat Application Gateway-distribution via Azure-portalen:
Logga in på Azure-portalen.
I sökrutan anger du prenumerationer och väljer Prenumerationer.
Välj länken för prenumerationens namn.
Välj Förhandsversionsfunktioner under Inställningar på den vänstra menyn.
Du ser en lista över tillgängliga funktioner och din aktuella registreringsstatus.
Från Förhandsgranskningsfunktioner skriver du i filterrutan EnableApplicationGatewayNetworkIsolation, markerar funktionen och klickar på Registrera.
Note
Funktionsregistrering kan ta upp till 30 minuter att övergå från Registrering till Registrerad status.
Avregistrera funktionen
För att välja bort funktionen för privat Application Gateway-distribution via portalen, använd följande steg:
Logga in på Azure-portalen.
I sökrutan anger du prenumerationer och väljer Prenumerationer.
Välj länken för prenumerationens namn.
Välj Förhandsversionsfunktioner under Inställningar på den vänstra menyn.
Du ser en lista över tillgängliga funktioner och din aktuella registreringsstatus.
Från Förhandsgranskningsfunktioner skriver du i filterrutan EnableApplicationGatewayNetworkIsolation, markerar funktionen och klickar på Avregistrera.
Konfiguration av nätverkskontroller
Efter att du registrerat funktionen kan du konfigurera NSG, routtabellen och den privata frontend-IP-konfigurationen för en privat applikationsgateway-distribution med valfri metod. Använd till exempel REST API, ARM-mall, Bicep-distribution, Terraform, PowerShell, CLI eller Azure-portalen.
Note
Om din klientapplikation ansluter till Application Gateway via en privat IP-adress, kräver en inaktiv timeout på mer än fyra minuter och inte kan initiera TCP-keepalives, skicka in ett supportärende för att begära att aktivera det nödvändiga keepalive-beteendet på Application Gateway.
Application Gateway-undernät
Application Gateway-subnätet är subnätet inom det virtuella nätverket där du distribuerar Application Gateway-resurserna. I en privat Application Gateway-distribution som använder en enbart privat frontend-IP-konfiguration måste detta subnät privat nå de resurser som vill ansluta till din exponerade app eller plats.
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
I en privat Application Gateway-distribution kan Application Gateway v2-distributioner som använder en endast privat IP-konfiguration i klientdelen (de har ingen konfiguration med offentlig IP i klientdelen som är associerad med en regel för begäranderoutning) inte skicka ut trafik med internet som mål. 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
Detta avsnitt beskriver nätverkssäkerhetsgruppskontroll (NSG) för Application Gateway v2-subnätet i en privat Application Gateway-distribution. Efter att du registrerat funktionen kräver nätverkssäkerhetsgrupper kopplade till ett Application Gateway-subnät 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.
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:
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.
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.
Associera NSG till undernätet
Det sista steget är att associera nätverkssäkerhetsgruppen med det undernät som innehåller din Application Gateway.
Result:
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
Detta avsnitt beskriver styring av rutttabellen (användardefinierad rutt) för Application Gateway v2-subnätet i en privat Application Gateway-utplacering. För distributioner av Application Gateway som inte är registrerade för funktionen för privat Application Gateway-distribution kan du inte associera en routningstabell som innehåller en route av typen 0.0.0.0/0 med en virtuell installation som nästa hopp. Denna begränsning säkerställer korrekt hantering av applikationsgatewayen.
Important
En standardrutt (0.0.0.0/0) som Application Gateway-subnätet lär sig via BGP från en ExpressRoute- eller VPN-anslutning fungerar som tvingad tunnling. Den åsidosätter systemets standardrutt och skickar gatewayens managementplan-trafik via den lokala vägen. Eftersom Application Gateway v2 kräver symmetrisk routing för hanteringstrafik, bryter denna rutt anslutningen till managementplanet och kan orsaka provisioneringsfel och InternalServerError. För att återställa anslutningen, lägg till en användardefinierad rutt för 0.0.0.0/0 med ett nästa internethopp till en rutttabell dedikerad till Application Gateway-subnätet, eller sluta annonsera standardrutten till subnätet. För steg-för-steg-diagnostik, se Felsök Application Gateway-implementering, skalning och raderingsfel.
Efter att du registrerat funktionen kan du vidarebefordra trafik till en virtuell enhet genom att definiera en 0.0.0.0/0 rutt med en virtuell enhet vid nästa hopp.
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
Bild 1: Utgående internetåtkomst via virtuell installation
Så här skapar du en routningstabell och associerar den med Application Gateway-undernätet:
- 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:
- Välj Undernät och associera routningstabellen till Application Gateway-undernätet:
- Kontrollera att trafiken passerar genom den virtuella installationen.
Begränsningar/kända problem
Följande begränsningar gäller:
Private Link-konfiguration
Application Gateway stöder inte privat länkkonfiguration för att tunnla trafik genom privata endpoints när du använder en privat frontend-IP-konfiguration.
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
Du måste använda AGIC v1.7 för att konfigurera en privat frontend-IP-konfiguration.
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 subnät delar Application Gateway v2-distributioner som du skapade både före och efter att du aktiverade funktionen för privat Application Gateway-distribution, kan du använda Network Security Group (NSG) och Route Table-funktionalitet endast med den tidigare gateway-distributionen. För att aktivera nätverkssäkerhetsgruppen och routtabellsfunktionerna måste du antingen återställa applikationsgateways som du skapat innan du aktiverade funktionen, eller skapa nya gateways i ett annat subnät.
- Om en gateway som du distribuerade innan du aktiverade funktionen finns i subnätet, kan du se fel så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 poster i routningstabellen. - 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.