Condividi tramite


Distribuzione del gateway applicazione privato (anteprima)

Introduzione

In passato, gli SKU v2 del gateway applicazione e, in un certo modo i v1, hanno richiesto indirizzi IP pubblici per abilitare la gestione del servizio. Questo requisito ha imposto diverse limitazioni nell'uso di controlli granulari nei gruppi di sicurezza di rete e nelle tabelle di route. In particolare, sono state osservate le sfide seguenti:

  • Tutte le distribuzioni di gateway applicazione v2 devono contenere la configurazione IP front-end pubblico per abilitare la comunicazione con il tag del servizio Gateway Manager.
  • Le associazioni del gruppo di sicurezza di rete richiedono regole per consentire l'accesso in ingresso da GatewayManager e l'accesso in uscita a Internet.
  • Quando si introduce una route predefinita (0.0.0.0/0) per inoltrare il traffico in qualsiasi punto diverso da Internet, metriche, monitoraggio e aggiornamenti del gateway, si verifica un errore.

Il gateway applicazione v2 può ora risolvere ognuno di questi elementi per eliminare ulteriormente il rischio di esfiltrazione dei dati e controllare la privacy della comunicazione dall'interno della rete virtuale. Queste modifiche includono le funzionalità seguenti:

  • Configurazione IP front-end solo indirizzo IP privato
    • Nessuna risorsa indirizzo IP pubblico necessaria
  • Eliminazione del traffico in ingresso dal tag del servizio GatewayManager tramite il gruppo di sicurezza di rete
  • Possibilità di definire una regola Nega tutto per il gruppo di sicurezza di rete in uscita (NSG) per limitare il traffico in uscita verso Internet
  • Possibilità di eseguire l'override della route predefinita a Internet (0.0.0.0/0)
  • Risoluzione DNS tramite resolver definiti nella rete virtuale Altre informazioni, incluse le zone DNS private di collegamento privato.

Ognuna di queste funzionalità può essere configurata in modo indipendente. Ad esempio, un indirizzo IP pubblico può essere usato per consentire il traffico in ingresso da Internet ed è possibile definire una regola Nega tutto in uscita nella configurazione del gruppo di sicurezza di rete per impedire l'esfiltrazione dei dati.

Eseguire l'onboarding nell'anteprima pubblica

Le funzionalità dei nuovi controlli della configurazione front-end IP privato, il controllo sulle regole del gruppo di sicurezza di rete e il controllo sulle tabelle di route sono attualmente in anteprima pubblica. Per partecipare all'anteprima pubblica, è possibile acconsentire esplicitamente all'esperienza usando il portale di Azure, PowerShell, l'interfaccia della riga di comando o l'API REST.

Quando si partecipa all'anteprima, tutti i nuovi gateway applicazione effettuano il provisioning con la possibilità di definire qualsiasi combinazione delle funzionalità di NSG, tabella di route o di configurazione IP privata. Se si vuole rifiutare esplicitamente la nuova funzionalità e tornare alla funzionalità disponibile a livello generale corrente del gateway applicazione, è possibile annullare la registrazione dall'anteprima.

Per altre informazioni sulle funzionalità di anteprima, vedere Configurare le funzionalità di anteprima nella sottoscrizione di Azure

Registrarsi all'anteprima

Usare la procedura seguente per eseguire la registrazione nell'anteprima pubblica per i controlli di rete del gateway applicazione avanzati tramite il portale di Azure:

  1. Accedere al portale di Azure.

  2. Nella casella di ricerca immettere sottoscrizioni e selezionare Sottoscrizioni.

    Screenshot di una ricerca nel portale di Azure.

  3. Selezionare il collegamento per il nome della sottoscrizione.

    Screenshot della selezione dell'abbonamento di Azure.

  4. Nel menu a sinistra, in Impostazioni selezionare Funzionalità di anteprima.

    Screenshot del menu delle funzionalità di anteprima.

  5. Viene visualizzato un elenco delle funzionalità di anteprima disponibili e lo stato di registrazione corrente.

    Screenshot dell'elenco delle funzionalità di anteprima nel portale di Azure.

  6. In Anteprima funzionalità digitare nella casella di filtro EnableApplicationGatewayNetworkIsolation, selezionare la funzionalità e fare clic su Registra.

    Screenshot del filtro delle funzionalità di anteprima nel portale di Azure.

Nota

La registrazione delle funzionalità può richiedere fino a 30 minuti per passare dalla registrazione allo stato registrato.

Per altre informazioni sulle funzionalità di anteprima, vedere Configurare le funzionalità di anteprima nella sottoscrizione di Azure

Annullare la registrazione dall'anteprima

Per rifiutare esplicitamente l'anteprima pubblica per i controlli di rete del gateway applicazione avanzati tramite il portale, seguire questa procedura:

  1. Accedere al portale di Azure.

  2. Nella casella di ricerca immettere sottoscrizioni e selezionare Sottoscrizioni.

    Screenshot di una ricerca nel portale di Azure.

  3. Selezionare il collegamento per il nome della sottoscrizione.

    Screenshot della selezione dell'abbonamento di Azure.

  4. Nel menu a sinistra, in Impostazioni selezionare Funzionalità di anteprima.

    Screenshot del menu delle funzionalità di anteprima.

  5. Viene visualizzato un elenco delle funzionalità di anteprima disponibili e lo stato di registrazione corrente.

    Screenshot dell'elenco delle funzionalità di anteprima nel portale di Azure.

  6. In Anteprima funzionalità digitare nella casella di filtro EnableApplicationGatewayNetworkIsolation, selezionare la funzionalità e fare clic su Annulla registrazione.

    Screenshot del filtro delle funzionalità di anteprima nel portale di Azure.

Aree e disponibilità

L'anteprima del gateway applicazione privato è disponibile per tutte le aree cloud pubbliche in cui è supportato lo SKU v2 del gateway applicazione.

Configurazione dei controlli di rete

Dopo la registrazione nell'anteprima pubblica, è possibile eseguire la configurazione del front-end NSG, della tabella di route e dell'indirizzo IP privato usando qualsiasi metodo. Ad esempio: API REST, modello ARM, distribuzione Bicep, Terraform, PowerShell, interfaccia della riga di comando o portale. Con questa anteprima pubblica non vengono introdotte modifiche all'API o ai comandi.

Modifiche di risorsa

Dopo il provisioning del gateway, viene assegnato automaticamente un tag di risorsa con il nome EnhancedNetworkControl e il valore True. Vedere l'esempio seguente:

Screenshot del tag EnhancedNetworkControl.

Il tag di risorsa è cosmetico e serve a confermare che è stato effettuato il provisioning del gateway con le funzionalità per configurare qualsiasi combinazione delle funzionalità del gateway privato. La modifica o l'eliminazione del tag o del valore non modifica alcun funzionamento del gateway.

Suggerimento

Il tag EnhancedNetworkControl può essere utile quando i gateway applicazione esistenti sono stati distribuiti nella sottoscrizione prima dell'abilitazione delle funzionalità e si vuole distinguere il gateway che può usare la nuova funzionalità.

Subnet del gateway applicazione

La subnet del gateway applicazione è la subnet all'interno della rete virtuale in cui saranno distribuite le risorse del gateway applicazione. Nella configurazione IP privato front-end è importante che questa subnet possa raggiungere privatamente le risorse che vogliono connettersi all'app o al sito esposto.

Connettività Internet in uscita

Le distribuzioni del gateway applicazione che contengono solo una configurazione IP front-end privata (non hanno una configurazione front-end IP pubblico associata a una regola di gestione delle richieste) non sono in grado di inoltrare il traffico in uscita destinato a Internet. Questa configurazione influisce sulla comunicazione con le destinazioni back-end accessibili pubblicamente tramite Internet.

Per abilitare la connettività in uscita dal gateway applicazione a una destinazione back-end con connessione Internet, è possibile usare NAT di rete virtuale o inoltrare il traffico a un'appliance virtuale che ha accesso a Internet.

NAT di rete virtuale offre il controllo sull'indirizzo IP o sul prefisso da usare, nonché sul timeout di inattività configurabile. Per configurare, creare un nuovo gateway NAT con un indirizzo IP pubblico o un prefisso pubblico e associarlo alla subnet contenente il gateway applicazione.

Se per internet è necessaria un'appliance virtuale, vedere la sezione controllo tabella di route in questo documento.

Scenari comuni in cui è necessario l'utilizzo di indirizzi IP pubblici:

  • Comunicazione con l'insieme di credenziali delle chiavi senza usare endpoint privati o endpoint di servizio
    • La comunicazione in uscita non è necessaria per i file pfx caricati direttamente nel gateway applicazione
  • Comunicazione con destinazioni back-end tramite Internet
  • Comunicazione con gli endpoint CRL o OCSP con connessione Internet

Controllo del gruppo di sicurezza di rete

I gruppi di sicurezza di rete associati a una subnet del gateway applicazione non richiedono più regole in ingresso per GatewayManager e non richiedono l'accesso in uscita a Internet. L'unica regola necessaria è Consentire l'ingresso da AzureLoadBalancer per garantire che i probe di integrità possano raggiungere il gateway.

La configurazione seguente è un esempio del set più restrittivo di regole in ingresso, che nega tutto il traffico tranne i probe di integrità di Azure. Oltre alle regole definite, vengono definite delle regole esplicite per consentire al traffico client di raggiungere il listener del gateway.

Screenshot delle regole del gruppo di sicurezza in ingresso.

Nota

Il gateway applicazione visualizzerà un avviso che chiede di assicurarsi che l'opzione Consenti LoadBalanceRule sia specificata se una regola DenyAll limita inavvertitamente l'accesso ai probe di integrità.

Scenario di esempio

Questo esempio illustra la creazione di un gruppo di sicurezza di rete usando il portale di Azure con le regole seguenti:

  • Consentire il traffico in ingresso alla porta 80 e 8080 al gateway applicazione dalle richieste client provenienti da Internet
  • Negare tutto il traffico in ingresso
  • Consentire il traffico in uscita verso una destinazione back-end in un'altra rete virtuale
  • Consentire il traffico in uscita verso una destinazione back-end accessibile da Internet
  • Negare tutto il traffico in uscita

Prima di tutto, creare un gruppo di sicurezza di rete. Questo gruppo di sicurezza contiene le regole in ingresso e in uscita.

Regole in ingresso

È già stato effettuato il provisioning di tre regole in ingresso predefinite nel gruppo di sicurezza. Vedere l'esempio seguente:

Screenshot delle regole del gruppo di sicurezza predefinite.

Creare quindi le quattro nuove regole di sicurezza in ingresso seguenti:

  • Consentire la porta in ingresso 80, tcp, da Internet (qualsiasi)
  • Consentire la porta in ingresso 8080, tcp, da Internet (qualsiasi)
  • Consentire l'ingresso da AzureLoadBalancer
  • Nega eventuali connessioni in ingresso

Per creare queste regole:

  • Selezionare Regole di sicurezza in ingresso
  • Seleziona Aggiungi
  • Immettere le informazioni seguenti per ogni regola nel riquadro Aggiungi regola di sicurezza in ingresso.
  • Dopo aver immesso le informazioni, selezionare Aggiungi per creare la regola.
  • La creazione di ogni regola richiede un attimo.
N. regola Origine Tag del servizio di origine Intervalli porte di origine Destinazione Servizio Intervalli di porte Dest Protocollo Azione Priorità Nome
1 Qualsiasi * Qualsiasi HTTP 80 TCP Consenti 1028 AllowWeb
2 Qualsiasi * Qualsiasi Personalizzazione 8080 TCP Consenti 1029 AllowWeb8080
3 Tag del servizio AzureLoadBalancer * Any Personalizzazione * Qualsiasi Consenti 1045 AllowLB
4 Qualsiasi * Qualsiasi Personalizzazione * Qualsiasi Nega 4095 DenyAllInbound

Selezionare Aggiorna per esaminare tutte le regole al termine del provisioning.

Screenshot delle regole del gruppo di sicurezza in ingresso di esempio.

Regole in uscita

È già stato effettuato il provisioning di tre regole in uscita predefinite con priorità 65000, 65001 e 65500.

Creare le tre nuove regole di sicurezza in uscita seguenti:

  • Consentire TCP 443 da 10.10.4.0/24 alla destinazione back-end 203.0.113.1
  • Consenti TCP 80 dall'origine 10.10.4.0/24 alla destinazione 10.13.0.4
  • Regola per negare tutto il traffico

Queste regole vengono assegnate rispettivamente a una priorità pari a 400, 401 e 4096.

Nota

  • 10.10.4.0/24 è lo spazio di indirizzi della subnet del gateway applicazione.
  • 10.13.0.4 è una macchina virtuale in una rete virtuale con peering.
  • 203.0.113.1 è una macchina virtuale di destinazione back-end.

Per creare queste regole:

  • Selezionare regole di sicurezza in uscita
  • Seleziona Aggiungi
  • Immettere le informazioni seguenti per ogni regola nel riquadro Aggiungi regola di sicurezza in uscita.
  • Dopo aver immesso le informazioni, selezionare Aggiungi per creare la regola.
  • La creazione di ogni regola richiede un attimo.
N. regola Origine Indirizzi IP/Intervalli CIDR di origine Intervalli porte di origine Destinazione Indirizzi IP/Intervalli CIDR di destinazione Servizio Intervalli di porte Dest Protocollo Azione Priorità Nome
1 Indirizzi IP 10.10.4.0/24 * Indirizzi IP 203.0.113.1 HTTPS 443 TCP Consenti 400 AllowToBackendTarget
2 Indirizzi IP 10.10.4.0/24 * Indirizzi IP 10.13.0.4 HTTP 80 TCP Consenti 401 AllowToPeeredVnetVM
3 Qualsiasi * Qualsiasi Personalizzazione * Qualsiasi Nega 4096 DenyAll

Selezionare Aggiorna per esaminare tutte le regole al termine del provisioning.

Screenshot delle regole di sicurezza in uscita per il gateway applicazione.

Associare un gruppo di sicurezza di rete alla subnet

L'ultimo passaggio consiste nell'associare il gruppo di sicurezza di rete alla subnet che contiene il gateway applicazione.

Screenshot del gruppo di sicurezza di rete associato alla subnet.

Risultato:

Screenshot delle panoramica del gruppo di sicurezza di rete.

Importante

Prestare attenzione quando si definiscono le regole di DenyAll, in quanto è possibile negare inavvertitamente il traffico in ingresso dai client a cui si intende consentire l'accesso. È anche possibile che si neghi inavvertitamente il traffico in uscita alla destinazione back-end, causando l'esito negativo dell'integrità del back-end e produrre delle risposte 5XX.

Controllo tabella di route

Nell'offerta corrente del gateway applicazione, l'associazione di una tabella di route con una regola (o creazione di regola) definita come 0.0.0.0/0 con un hop successivo come appliance virtuale non è supportata per garantire una corretta gestione del gateway applicazione.

Dopo la registrazione della funzionalità di anteprima pubblica, è ora possibile inoltrare il traffico a un'appliance virtuale tramite la definizione di una regola di tabella di route che definisce 0.0.0.0/0 con un hop successivo all'appliance virtuale.

Il tunneling forzato o l'apprendimento della route 0.0.0.0/0 tramite annunci BGP non influisce sull'integrità del gateway applicazione e viene rispettato per il flusso del traffico. Questo scenario può essere applicabile quando si usa VPN, ExpressRoute, Server di route o rete WAN virtuale.

Scenario di esempio

Nell'esempio seguente viene creata una tabella di route e la si associa alla subnet del gateway applicazione per garantire che l'accesso a Internet in uscita dalla subnet esca da un'appliance virtuale. A livello generale, la progettazione seguente è riepilogata nella figura 1:

  • Il gateway applicazione si trova nella rete virtuale spoke
  • Nella rete hub è presente un'appliance virtuale di rete (una macchina virtuale)
  • Una tabella di route con una route predefinita (0.0.0.0/0) all'appliance virtuale è associata alla subnet del gateway applicazione

Diagramma di una tabella di route di esempio.

Figura 1: Accesso a Internet in uscita tramite appliance virtuale

Per creare una tabella di route e associarla alla subnet del gateway applicazione:

  1. Creare una tabella di route:

Screenshot della tabella di ruote appena creata.

  1. Selezionare Route e creare la regola hop successiva per 0.0.0.0/0 e configurare la destinazione come indirizzo IP della macchina virtuale:

Screenshot dell'aggiunta della route predefinita all'applicazione virtuale di rete.

  1. Selezionare Subnet e associare la tabella di route alla subnet del gateway applicazione:

Screenshot dell'associazione della route alla subnet AppGW.

  1. Verificare che il traffico passi attraverso l'appliance virtuale.

Limitazioni e problemi noti

Durante l'anteprima pubblica, sono note le limitazioni seguenti.

Il supporto della configurazione del collegamento privato per il tunneling del traffico attraverso endpoint privati al gateway applicazione non è supportato con il gateway privato.

Limitazione della velocità WAF

Le regole personalizzate di limitazione della velocità per WAF v2 del gateway applicazione non sono attualmente supportate.

Configurazione front-end IP privato solo con AGIC

È necessario usare AGIC v1.7 per introdurre il supporto solo per l'indirizzo IP front-end privato.

Connettività dell'endpoint privato tramite peering reti virtuali globali

Se il gateway applicazione ha una destinazione back-end o un riferimento all'insieme di credenziali delle chiavi a un endpoint privato che si trova in una rete virtuale accessibile tramite peering di rete virtuale globale, il traffico viene eliminato, causando uno stato non integro.

Integrazione di Network Watcher

La risoluzione dei problemi di connessione e la diagnostica del gruppo di sicurezza di rete (NSG) restituiscono un errore durante l'esecuzione di test di controllo e diagnostica.

Gateway applicativi v2 coesistenti creati prima dell'abilitazione del controllo di rete avanzato

Se una subnet condivide le distribuzioni del gateway applicazione v2 create sia prima che dopo l'abilitazione della funzionalità di controllo di rete avanzata, la funzionalità gruppo di sicurezza di rete (NSG) e tabella di route è limitata alla distribuzione del gateway precedente. Dei gateway applicazione di cui è stato effettuato il provisioning prima dell'abilitazione della nuova funzionalità, deve essere rieffettuato il provisioning, oppure i gateway appena creati devono usare una subnet diversa per abilitare funzionalità avanzate del gruppo di sicurezza di rete e della tabella di route.

  • Se nella subnet è presente un gateway distribuito prima dell'abilitazione della nuova funzionalità, potrebbero verificarsi errori come: For routes associated to subnet containing Application Gateway V2, please ensure '0.0.0.0/0' uses Next Hop Type as 'Internet' quando si aggiungono voci della tabella di route.
  • Quando si aggiungono regole del gruppo di sicurezza di rete alla subnet, è possibile che venga visualizzato: 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.

Stato di integrità back-end sconosciuto

Se l'integrità back-end è Sconosciuta, potrebbe essere visualizzato l'errore seguente:

  • Impossibile recuperare lo stato di integrità back-end. Questo problema si verifica quando un NSG/una UDR/un firewall nella subnet di Gateway applicazione blocca il traffico sulle porte 65503-65534 se è presente lo SKU v1, e sulle porte 65200-65535 se è presente lo SKU v2, o se non è stato possibile risolvere in un indirizzo IP il FQDN configurato nel pool back-end. Per altre informazioni, vedere: https://aka.ms/UnknownBackendHealth.

Questo errore può essere ignorato e verrà spiegato in una versione futura.

Passaggi successivi