Distribuzione gateway applicazione privata (anteprima)

Introduzione

Storicamente, gateway applicazione SKU v2 e fino a un certo punto 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:

  1. 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.
  2. 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.
  3. 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.

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:

  1. Configurazione IP front-end solo indirizzo IP privato
    • Nessuna risorsa indirizzo IP pubblico necessaria
  2. Eliminazione del traffico in ingresso dal tag del servizio GatewayManager tramite il gruppo di sicurezza di rete
  3. Possibilità di definire una regola Nega tutto il gruppo di sicurezza di rete in uscita (NSG) per limitare il traffico in uscita verso Internet
  4. Possibilità di eseguire l'override della route predefinita a Internet (0.0.0.0/0)
  5. 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, è possibile usare un indirizzo IP pubblico 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 la portale di Azure, PowerShell, l'interfaccia della riga di comando o l'API REST.

Quando si partecipa all'anteprima, tutti i nuovi gateway applicazione di cui viene effettuato il provisioning con la possibilità di definire qualsiasi combinazione delle funzionalità di configurazione ip private, tabella di route o gruppo di sicurezza di rete. Se si vuole rifiutare esplicitamente la nuova funzionalità e tornare alla funzionalità attualmente disponibile a livello generale di 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 avanzati gateway applicazione tramite il portale di Azure:

  1. Accedere al portale di Azure.

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

    Azure portal search.

  3. Selezionare il collegamento per il nome della sottoscrizione.

    Select Azure subscription.

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

    Azure preview features menu.

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

    Azure portal list of preview features.

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

    Azure portal filter preview features.

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 avanzati gateway applicazione tramite il portale, seguire questa procedura:

  1. Accedere al portale di Azure.

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

    Azure portal search.

  3. Selezionare il collegamento per il nome della sottoscrizione.

    Select Azure subscription.

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

    Azure preview features menu.

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

    Azure portal list of preview features.

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

    Azure portal filter preview features.

Aree e disponibilità

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

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 alle risorse

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

View the EnhancedNetworkControl tag

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 funzionale del gateway.

Suggerimento

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

subnet gateway applicazione

gateway applicazione Subnet è la subnet all'interno del Rete virtuale in cui verranno distribuite le risorse di 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

gateway applicazione distribuzioni che contengono solo una configurazione IP front-end privata (non hanno una configurazione front-end IP pubblico) non sono in grado di in uscita il traffico 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 Rete virtuale NAT o inoltrare il traffico a un'appliance virtuale che ha accesso a Internet.

Rete virtuale NAT 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 gateway applicazione.

Se un'appliance virtuale è necessaria per l'uscita Internet, 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 in gateway applicazione direttamente
  • 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 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, negando tutto il traffico ma i probe di integrità di Azure. Oltre alle regole definite, vengono definite regole esplicite per consentire al traffico client di raggiungere il listener del gateway.

View the inbound security group rules

Nota

gateway applicazione verrà visualizzato un avviso che chiede di assicurarsi che Consenti loadBalanceRule viene specificato 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 per 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

Creare prima di tutto 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 predefinite in ingresso nel gruppo di sicurezza. Vedere l'esempio seguente:

View default security group rules

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 Personalizzata 8080 TCP Consenti 1029 AllowWeb8080
3 Tag del servizio AzureLoadBalancer * Any Personalizzata * Qualsiasi Consenti 1045 AllowLB
4 Qualsiasi * Qualsiasi Personalizzata * Qualsiasi Nega 4095 DenyAllInbound

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

View example inbound security group rules

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:

  • Consenti TCP 443 dalla versione 10.10.4.0/24 alla destinazione back-end 20.62.8.49
  • Consenti TCP 80 dall'origine 10.10.4.0/24 alla destinazione 10.13.0.4
  • DenyAll traffic rule

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

Nota

  • 10.10.4.0/24 è lo spazio indirizzi della subnet gateway applicazione.
  • 10.13.0.4 è una macchina virtuale in una rete virtuale con peering.
  • 20.63.8.49 è 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 20.63.8.49 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 Personalizzata * Qualsiasi Nega 4096 DenyAll

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

View example outbound security group rules

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.

Associate NSG to subnet

Risultato:

View the NSG overview

Importante

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

Controllo tabella di route

Nell'offerta corrente di 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 dei 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 la pubblicità BGP non influisce sull'integrità gateway applicazione e viene rispettato per il flusso di traffico. Questo scenario può essere applicabile quando si usano VPN, ExpressRoute, Server di route o rete WAN virtuale.

Scenario di esempio

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

  • Il gateway applicazione si trova in una 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 a gateway applicazione subnet

Diagram for example route table

Figura 1: Accesso a Internet in uscita tramite appliance virtuale

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

  1. Creare una tabella di route:

View the newly created route table

  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:

View of adding default route to network virtual applicance

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

View of associating the route to the AppGW subnet

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

Limitazioni/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 a gateway applicazione non è supportato con il gateway privato.

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 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 reti virtuali globali, il traffico viene eliminato, causando uno stato non integro.

Integrazione di Network Watcher

Connessione ion consente di risolvere i problemi e la diagnostica del gruppo di sicurezza di rete restituisce un errore durante l'esecuzione di test di controllo e diagnostica.

Coesistenti gateway applicazione create prima dell'abilitazione del controllo di rete avanzato

Se una subnet condivide gateway applicazione distribuzioni v2 create sia prima che dopo l'abilitazione della funzionalità avanzata di controllo di rete, la funzionalità gruppo di sicurezza di rete (NSG) e tabella di route è limitata alla distribuzione del gateway precedente. I gateway applicazione di cui è stato effettuato il provisioning prima dell'abilitazione della nuova funzionalità devono essere riprovisionati 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. Ciò si verifica quando un gruppo di sicurezza di rete/UDR/Firewall nella subnet del gateway applicazione blocca il traffico sulle porte 65503-65534 se è presente uno SKU v1 e le porte 65200-65535 se è presente uno SKU v2 o se il nome di dominio completo configurato nel pool back-end non può essere risolto in un indirizzo IP. Per altre informazioni, vedere - https://aka.ms/UnknownBackendHealth.

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

Passaggi successivi