Distribution av privat Application Gateway (förhandsversion)
Artikel
Introduktion
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-adress för privat ip-adress endast klientdels-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 NSG-regel (Neka alla utgående nätverkssäkerhetsgrupp) för att begränsa utgående trafik till Internet
Möjlighet att åsidosätta standardvägen till Internet (0.0.0.0/0)
DNS-matchning via definierade matchare 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.
Publicera till offentlig förhandsversion
Funktionerna i de nya kontrollerna för konfiguration av privata IP-klientdelar, kontroll över NSG-regler och kontroll över routningstabeller finns för närvarande i offentlig förhandsversion. Om du vill ansluta till den offentliga förhandsversionen kan du välja att använda Azure Portal, PowerShell, CLI eller REST API.
När du ansluter till förhandsversionen 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 och återgå till de aktuella allmänt tillgängliga funktionerna i Application Gateway kan du göra det genom att avregistrera dig från förhandsversionen.
Använd följande steg för att registrera dig i den offentliga förhandsversionen för de förbättrade Application Gateway-nätverkskontrollerna via Azure Portal:
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 förhandsgranskningsfunktioner och din aktuella registreringsstatus.
Från Förhandsgranskningsfunktioner skriver du i filterrutan EnableApplicationGatewayNetworkIsolation, markerar funktionen och klickar på Registrera.
Om du vill registrera dig i den offentliga förhandsversionen av de förbättrade Application Gateway-nätverkskontrollerna via Azure PowerShell kan du referera till följande kommandon:
Om du vill registrera dig i den offentliga förhandsversionen av de förbättrade Application Gateway-nätverkskontrollerna via Azure CLI kan du referera till följande kommandon:
az feature register --name EnableApplicationGatewayNetworkIsolation --namespace Microsoft.Network
Om du vill visa registreringsstatus för funktionen använder du cmdleten Get-AzProviderFeature.
Name RegistrationState
---------------------------------------------------------- -------------------
Microsoft.Network/EnableApplicationGatewayNetworkIsolation Registered
En lista över alla Azure CLI-referenser för Private Link-konfiguration på Application Gateway finns här: Azure CLI CLI – Private Link
Anteckning
Funktionsregistrering kan ta upp till 30 minuter att övergå från Registrering till Registrerad status.
Om du vill avanmäla dig från den offentliga förhandsversionen för de förbättrade Application Gateway-nätverkskontrollerna via portalen använder du följande steg:
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 förhandsgranskningsfunktioner och din aktuella registreringsstatus.
Från Förhandsgranskningsfunktioner skriver du i filterrutan EnableApplicationGatewayNetworkIsolation, markerar funktionen och klickar på Avregistrera.
Om du vill välja bort den offentliga förhandsversionen för de förbättrade Application Gateway-nätverkskontrollerna via Azure PowerShell kan du referera till följande kommandon:
Om du vill välja bort den offentliga förhandsversionen av de förbättrade Application Gateway-nätverkskontrollerna via Azure CLI kan du referera till följande kommandon:
az feature unregister --name EnableApplicationGatewayNetworkIsolation --namespace Microsoft.Network
Om du vill visa registreringsstatus för funktionen använder du cmdleten Get-AzProviderFeature.
Name RegistrationState
---------------------------------------------------------- -------------------
Microsoft.Network/EnableApplicationGatewayNetworkIsolation Unregistered
En lista över alla Azure CLI-referenser för Private Link-konfiguration på Application Gateway finns här: Azure CLI CLI – Private Link
Efter registreringen till den offentliga förhandsversionen kan konfigurationen av NSG, routningstabellen 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. Inga API- eller kommandoändringar introduceras med den här offentliga förhandsversionen.
Resursändringar
När din gateway har etablerats tilldelas en resurstagg automatiskt med namnet EnhancedNetworkControl och värdet True. Se följande exempel:
Resurstaggen är kosmetisk och bekräftar att gatewayen har etablerats med funktioner för att konfigurera alla kombinationer av de privata gatewayfunktionerna. Ändring eller borttagning av taggen eller värdet ändrar inte gatewayens funktionsfunktioner.
Tips
Taggen EnhancedNetworkControl kan vara till hjälp när befintliga Application Gateways distribuerades i prenumerationen före funktionsaktivering och du vill särskilja vilken gateway som kan använda de nya funktionerna.
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.
Utgående Internetanslutning
Application Gateway-distributioner som endast innehåller en privat IP-klientdelskonfiguration (har inte en offentlig IP-klientdelskonfiguration som är associerad med en routningsregel för begäran) kan inte utgående trafik till Internet. Den här konfigurationen påverkar kommunikationen till serverdelsmål som är offentligt 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.
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 till serverdelsmål 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älsoavsökningar kan nå gatewayen.
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.
Anteckning
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 annan inkommande trafik
Tillåt utgående trafik till ett serverdelsmål i ett annat virtuellt nätverk
Tillåt utgående trafik till ett serverdelsmål som är Tillgängligt via Internet
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 neka utgående trafik till serverdelsmålet, vilket gör att serverdelshälsan misslyckas och genererar 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 för offentlig förhandsversion ä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
Bild 1: Utgående internetåtkomst via virtuell installation
Så här skapar du en routningstabell och associerar den med Application Gateway-undernätet:
Konfiguration av privat IP-klientdel endast med AGIC
AGIC v1.7 måste endast användas för att införa stöd för ip-adressen för privata klientdelar.
Privat slutpunktsanslutning via global VNet-peering
Om Application Gateway har en referens för serverdelsmål eller nyckelvalv till en privat slutpunkt i ett virtuellt nätverk som är tillgängligt via global VNet-peering, avbryts trafiken, vilket resulterar i en status som inte är felfri.
Network Watcher-integrering
Anslutningsfelsökningar och NSG-diagnostik returnerar ett fel när du kör kontroll- och diagnostiktester.
Samexistera v2 Application Gateways som skapats innan förbättrad nätverkskontroll aktiveras
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 nätverkssäkerhetsgruppen (NSG) och routningstabellfunktionen 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.
Status för okänd serverdelshälsa
Om serverdelshälsan är Okänd kan följande fel visas:
Det gick inte att hämta serverdelens hälsostatus. Detta inträffar när en NSG/UDR/Firewall i programgatewayens undernät blockerar trafik på portarna 65503-65534 om det finns v1 SKU och portarna 65200-65535 om det finns v2 SKU eller om det FQDN som konfigurerats i serverdelspoolen inte kunde matchas till en IP-adress. Om du vill veta mer besök - https://aka.ms/UnknownBackendHealth.
Det här felet kan ignoreras och kommer att klargöras i en framtida version.