Esercitazione: Integrare il gateway NAT con Firewall di Azure in una rete hub-spoke per la connettività in uscita

Questa esercitazione illustra come integrare un gateway NAT con un Firewall di Azure in una rete hub-spoke

Firewall di Azure fornisce 2.496 porte SNAT per ogni indirizzo IP pubblico configurato per ogni istanza del set di scalabilità di macchine virtuali back-end (almeno due istanze). È possibile associare fino a 250 indirizzi IP pubblici a Firewall di Azure. A seconda dei requisiti di architettura e dei modelli di traffico, è possibile che siano necessarie più porte SNAT rispetto alle Firewall di Azure disponibili. È anche possibile richiedere l'uso di un minor numero di indirizzi IP pubblici, richiedendo anche più porte SNAT. Un metodo migliore per la connettività in uscita consiste nell'usare il gateway NAT. Il gateway NAT offre 64.512 porte SNAT per ogni indirizzo IP pubblico e può essere usato con un massimo di 16 indirizzi IP pubblici.

Il gateway NAT può essere integrato con Firewall di Azure configurando il gateway NAT direttamente nella subnet Firewall di Azure per fornire un metodo più scalabile di connettività in uscita. Per le distribuzioni di produzione, è consigliabile usare una rete hub-spoke, in cui il firewall si trova nella propria rete virtuale. I server del carico di lavoro sono reti virtuali con peering nella stessa area della rete virtuale hub in cui risiede il firewall. In questa configurazione dell'architettura, il gateway NAT può fornire connettività in uscita dalla rete virtuale hub per tutte le reti virtuali spoke con peering.

Diagram of Azure resources created in tutorial.

Nota

Il gateway NAT di Azure non è attualmente supportato nelle architetture vWAN (Virtual Hub Network) protette. È necessario eseguire la distribuzione usando un'architettura di rete virtuale hub come descritto in questa esercitazione. Per altre informazioni sulle opzioni di architettura Firewall di Azure, vedere Quali sono le opzioni di architettura di Firewall di Azure Manager?

In questa esercitazione apprenderai a:

  • Creare una rete virtuale hub e distribuire un Firewall di Azure e Azure Bastion durante la distribuzione
  • Creare un gateway NAT e associarlo alla subnet del firewall nella rete virtuale hub
  • Creare una rete virtuale spoke
  • Creare un peering di rete virtuale
  • Creare una tabella di route per la rete virtuale spoke
  • Creare criteri firewall per la rete virtuale hub
  • Creare una macchina virtuale per testare la connettività in uscita tramite il gateway NAT

Prerequisiti

Creare la rete virtuale hub

La rete virtuale hub contiene la subnet del firewall associata all'Firewall di Azure e al gateway NAT. Usare l'esempio seguente per creare la rete virtuale hub.

  1. Accedi al portale di Azure.

  2. Nella casella di ricerca nella parte superiore del portale immettere Rete virtuale. Selezionare Reti virtuali nei risultati della ricerca.

  3. Seleziona + Crea.

  4. Nella scheda Informazioni di base di Crea rete virtuale immettere o selezionare le informazioni seguenti:

    Impostazione Valore
    Dettagli di progetto
    Subscription Selezionare la propria sottoscrizione.
    Gruppo di risorse Selezionare Crea nuovo.
    Immettere test-rg.
    Selezionare OK.
    Dettagli istanza
    Nome Immettere vnet-hub.
    Area Selezionare (Stati Uniti) Stati Uniti centro-meridionali.
  5. Selezionare Avanti per passare alla scheda Sicurezza .

  6. Selezionare Abilita Bastion nella sezione Azure Bastion della scheda Sicurezza .

    Azure Bastion usa il browser per connettersi alle macchine virtuali nella rete virtuale tramite SSH (Secure Shell) o RDP (Remote Desktop Protocol) usando gli indirizzi IP privati. Le macchine virtuali non necessitano di indirizzi IP pubblici, software client o configurazione speciale. Per altre informazioni su Azure Bastion, vedere Azure Bastion

    Nota

    I prezzi orari iniziano dal momento in cui Bastion viene distribuito, indipendentemente dall'utilizzo dei dati in uscita. Per altre informazioni, vedere Prezzi e SKU.

    Se si distribuisce Bastion come parte di un'esercitazione o un test, è consigliabile eliminare questa risorsa al termine dell'uso.

  7. Immettere o selezionare le informazioni seguenti in Azure Bastion:

    Impostazione Valore
    Nome host di Azure Bastion Immettere bastion.
    Indirizzo IP pubblico di Azure Bastion Selezionare Crea un indirizzo IP pubblico.
    Immettere public-ip in Nome.
    Selezionare OK.
  8. Selezionare Abilita Firewall di Azure nella sezione Firewall di Azure della scheda Sicurezza.

    Firewall di Azure è un servizio di sicurezza di rete gestito basato sul cloud che consente di proteggere le risorse della rete virtuale di Azure. È un firewall con stato completo distribuito come servizio con disponibilità elevata e scalabilità cloud senza limiti. Per altre informazioni sulle Firewall di Azure, vedere Firewall di Azure.

  9. Immettere o selezionare le informazioni seguenti in Firewall di Azure:

    Impostazione Valore
    nome Firewall di Azure Immettere firewall.
    Livello Selezionare Standard.
    Criteri Selezionare Crea nuovo.
    Immettere firewall-policy in Nome.
    Selezionare OK.
    Firewall di Azure indirizzo IP pubblico Selezionare Crea un indirizzo IP pubblico.
    Immettere public-ip-firewall in Nome.
    Selezionare OK.
  10. Selezionare Rivedi e crea.

  11. Seleziona Crea.

La distribuzione dell'host bastion e del firewall richiede alcuni minuti. Quando la rete virtuale viene creata come parte della distribuzione, è possibile procedere con i passaggi successivi.

Creare il gateway NAT

Tutto il traffico Internet in uscita attraversa il gateway NAT verso Internet. Usare l'esempio seguente per creare un gateway NAT per la rete hub-spoke e associarlo ad AzureFirewallSubnet.

  1. Nella casella di ricerca nella parte superiore del portale immettere il gateway NAT. Selezionare Gateway NAT nei risultati della ricerca.

  2. Seleziona + Crea.

  3. Nella scheda Informazioni di base di Crea gateway NAT (Network Address Translation) immettere o selezionare le informazioni seguenti:

    Impostazione Valore
    Dettagli di progetto
    Subscription Selezionare la propria sottoscrizione.
    Gruppo di risorse Selezionare test-rg.
    Dettagli istanza
    Nome del gateway NAT Immettere nat-gateway.
    Area selezionare Stati Uniti centro-meridionali.
    Zona di disponibilità Selezionare una zona o nessuna zona.
    Timeout di inattività TCP (minuti) Lasciare il valore predefinito 4.

    Per altre informazioni sulle zone di disponibilità, vedere Gateway NAT e zone di disponibilità.

  4. Selezionare Avanti: IP in uscita.

  5. In Ip in uscita in Indirizzi IP pubblici selezionare Crea un nuovo indirizzo IP pubblico.

  6. Immettere public-ip-nat in Nome.

  7. Seleziona OK.

  8. Selezionare Avanti: Subnet.

  9. In Rete virtuale selezionare vnet-hub.

  10. Selezionare AzureFirewallSubnet in Nome subnet.

  11. Selezionare Rivedi e crea.

  12. Seleziona Crea.

Creare una rete virtuale spoke

La rete virtuale spoke contiene la macchina virtuale di test usata per testare il routing del traffico Internet al gateway NAT. Usare l'esempio seguente per creare la rete spoke.

  1. Nella casella di ricerca nella parte superiore del portale immettere Rete virtuale. Selezionare Reti virtuali nei risultati della ricerca.

  2. Seleziona + Crea.

  3. Nella scheda Informazioni di base di Crea rete virtuale immettere o selezionare le informazioni seguenti:

    Impostazione Valore
    Dettagli di progetto
    Subscription Selezionare la propria sottoscrizione.
    Gruppo di risorse Selezionare test-rg.
    Dettagli istanza
    Nome Immettere vnet-spoke.
    Area selezionare Stati Uniti centro-meridionali.
  4. Selezionare Avanti per passare alla scheda Sicurezza .

  5. Selezionare Avanti per passare alla scheda Indirizzi IP.

  6. Nella scheda Indirizzi IP nello spazio indirizzi IPv4 selezionare il cestino per eliminare lo spazio indirizzi popolato automaticamente.

  7. Nello spazio indirizzi IPv4 immettere 10.1.0.0. Lasciare il valore predefinito /16 (65.536 indirizzi) nella selezione della maschera.

  8. Selezionare + Aggiungi una subnet.

  9. In Aggiungi una subnet immettere o selezionare le informazioni seguenti:

    Impostazione Valore
    Dettagli subnet
    Modello di subnet Lasciare il valore predefinito Predefinito.
    Nome Immettere subnet-private.
    Indirizzo iniziale Immettere 10.1.0.0.
    Dimensioni della subnet Lasciare il valore predefinito /24(256 indirizzi).
  10. Seleziona Aggiungi.

  11. Selezionare Rivedi e crea.

  12. Seleziona Crea.

Creare il peering tra l'hub e lo spoke

Un peering di rete virtuale viene usato per connettere l'hub allo spoke e allo spoke all'hub. Usare l'esempio seguente per creare un peering di rete bidirezionale tra l'hub e lo spoke.

  1. Nella casella di ricerca nella parte superiore del portale immettere Rete virtuale. Selezionare Reti virtuali nei risultati della ricerca.

  2. Selezionare vnet-hub.

  3. Selezionare Peering in Impostazioni.

  4. Seleziona + Aggiungi.

  5. Immettere o selezionare le informazioni seguenti in Aggiungi peering:

    Impostazione Valore
    Questa rete virtuale
    Nome del collegamento di peering Immettere vnet-hub-to-vnet-spoke.
    Consentire a 'vnet-hub' di accedere a 'vnet-spoke' Lasciare l'impostazione predefinita Selezionata.
    Consentire a 'vnet-hub' di ricevere traffico inoltrato da 'vnet-spoke' Selezionare la casella di controllo.
    Consentire al gateway in "vnet-hub" di inoltrare il traffico a "vnet-spoke" Lasciare l'impostazione predefinita Deselezionata.
    Abilitare "vnet-hub" per l'uso del gateway remoto "vnet-spoke" Lasciare l'impostazione predefinita Deselezionata.
    Rete virtuale remota
    Nome del collegamento di peering Immettere vnet-spoke-to-vnet-hub.
    Modello di distribuzione della rete virtuale Lasciare il valore predefinito di Resource Manager.
    Subscription Selezionare la propria sottoscrizione.
    Rete virtuale Selezionare vnet-spoke.
    Consentire a 'vnet-spoke' di accedere a 'vnet-hub' Lasciare l'impostazione predefinita Selezionata.
    Consentire a 'vnet-spoke' di ricevere traffico inoltrato da 'vnet-hub' Selezionare la casella di controllo.
    Consentire al gateway in "vnet-spoke" di inoltrare il traffico a "vnet-hub" Lasciare l'impostazione predefinita Deselezionata.
    Abilitare "vnet-spoke" per l'uso del gateway remoto "vnet-hub" Lasciare l'impostazione predefinita Deselezionata.
  6. Seleziona Aggiungi.

  7. Selezionare Aggiorna e verificare che lo stato del peering sia Connessione.

Creare una tabella di route di rete spoke

Una tabella di route forza tutto il traffico che lascia la rete virtuale spoke alla rete virtuale hub. La tabella di route viene configurata con l'indirizzo IP privato del Firewall di Azure come appliance virtuale.

Ottenere l'indirizzo IP privato del firewall

L'indirizzo IP privato del firewall è necessario per la tabella di route creata più avanti in questo articolo. Usare l'esempio seguente per ottenere l'indirizzo IP privato del firewall.

  1. Nella casella di ricerca nella parte superiore del portale immettere Firewall. Selezionare Firewall nei risultati della ricerca.

  2. Selezionare firewall.

  3. Nella panoramica del firewall prendere nota dell'indirizzo IP nel campo Ip privato del firewall. L'indirizzo IP in questo esempio è 10.0.1.68.

Creare una tabella di route

Creare una tabella di route per forzare tutto il traffico in uscita tra spoke e Internet attraverso il firewall nella rete virtuale hub.

  1. Nella casella di ricerca nella parte superiore del portale immettere Tabella route. Selezionare Tabelle di route nei risultati della ricerca.

  2. Seleziona + Crea.

  3. In Crea tabella di route immettere o selezionare le informazioni seguenti:

    Impostazione Valore
    Dettagli di progetto
    Subscription Selezionare la propria sottoscrizione.
    Gruppo di risorse Selezionare test-rg.
    Dettagli istanza
    Area selezionare Stati Uniti centro-meridionali.
    Nome Immettere route-table-spoke.
    Propaga route del gateway Selezionare No.
  4. Selezionare Rivedi e crea.

  5. Seleziona Crea.

  6. Nella casella di ricerca nella parte superiore del portale immettere Tabella route. Selezionare Tabelle di route nei risultati della ricerca.

  7. Selezionare route-table-spoke.

  8. In Impostazioni selezionare Route.

  9. Selezionare + Aggiungi in Route.

  10. Immettere o selezionare le informazioni seguenti in Aggiungi route:

    Impostazione Valore
    Nome route Immettere route-to-hub.
    Tipo destinazione Selezionare Indirizzi IP.
    Indirizzi IP/Intervalli CIDR di destinazione Immettere 0.0.0.0/0.
    Tipo hop successivo Selezionare Appliance virtuale.
    Indirizzo hop successivo Immettere 10.0.1.68.
  11. Seleziona Aggiungi.

  12. Selezionare Subnet in Impostazioni.

  13. Selezionare + Associa.

  14. Immettere o selezionare le informazioni seguenti in Associa subnet:

    Impostazione Valore
    Rete virtuale Selezionare vnet-spoke (test-rg).
    Subnet Selezionare subnet-private.
  15. Seleziona OK.

Configurare il firewall

Il traffico dallo spoke attraverso l'hub deve essere consentito attraverso i criteri firewall e una regola di rete. Usare l'esempio seguente per creare i criteri firewall e la regola di rete.

Configurare la regola di rete

  1. Nella casella di ricerca nella parte superiore del portale immettere Firewall. Selezionare Criteri firewall nei risultati della ricerca.

  2. Selezionare firewall-policy.

  3. In Impostazioni selezionare Regole di rete.

  4. Selezionare + Aggiungi una raccolta regole.

  5. In Aggiungi una raccolta regole immettere o selezionare le informazioni seguenti:

    Impostazione valore
    Nome Immettere spoke-to-Internet.
    Tipo di raccolta regole Selezionare Rete.
    Priorità Immettere 100.
    Azione della raccolta regole Seleziona Consenti.
    Gruppo di raccolta regole Selezionare DefaultNetworkRuleCollectionGroup.
    Regole
    Nome Immettere allow-web.
    Source type Indirizzo IP.
    Origine Immettere 10.1.0.0/24.
    Protocollo Selezionare TCP.
    Porte di destinazione Immettere 80.443.
    Tipo destinazione Selezionare Indirizzo IP.
    Destination Immettere*
  6. Seleziona Aggiungi.

Creare una macchina virtuale di test

Una macchina virtuale Ubuntu viene usata per testare il traffico Internet in uscita attraverso il gateway NAT. Usare l'esempio seguente per creare una macchina virtuale Ubuntu.

La procedura seguente crea una macchina virtuale di test denominata vm-spoke nella rete virtuale.

  1. Nel portale cercare e selezionare Macchine virtuali.

  2. In Macchine virtuali selezionare + Crea e quindi macchina virtuale di Azure.

  3. Nella scheda Informazioni di base di Crea una macchina virtuale immettere o selezionare le informazioni seguenti:

    Impostazione Valore
    Dettagli di progetto
    Subscription Selezionare la propria sottoscrizione.
    Gruppo di risorse Selezionare test-rg.
    Dettagli istanza
    Virtual machine name Immettere vm-spoke.
    Area Selezionare (Stati Uniti) Stati Uniti centro-meridionali.
    Opzioni di disponibilità Selezionare La ridondanza dell'infrastruttura non è richiesta.
    Tipo di sicurezza Lasciare l'impostazione predefinita Standard.
    Immagine Selezionare Ubuntu Server 22.04 LTS - x64 Gen2.
    Architettura della macchina virtuale Lasciare il valore predefinito x64.
    Dimensione Selezionare una dimensione.
    Account amministratore
    Tipo di autenticazione selezionare Password.
    Username digitare azureuser.
    Password Immettere una password.
    Conferma password Immettere nuovamente la password.
    Regole porta in ingresso
    Porte in ingresso pubbliche Selezionare Nessuno.
  4. Selezionare la scheda Rete nella parte superiore della pagina.

  5. Immettere o selezionare le informazioni seguenti nella scheda Rete :

    Impostazione Valore
    Interfaccia di rete
    Rete virtuale Selezionare vnet-spoke.
    Subnet Selezionare subnet-private (10.1.0.0/24).
    IP pubblico Selezionare Nessuno.
    Gruppo di sicurezza di rete della scheda di interfaccia di rete Selezionare Avanzate.
    Configura gruppo di sicurezza di rete Selezionare Crea nuovo.
    Immettere nsg-1 come nome.
    Lasciare invariati i valori predefiniti e selezionare OK.
  6. Lasciare invariate le impostazioni predefinite e selezionare Rivedi e crea.

  7. Rivedere le impostazioni e selezionare Crea.

Nota

Le macchine virtuali in una rete virtuale con un bastion host non necessitano di indirizzi IP pubblici. Bastion fornisce l'indirizzo IP pubblico e le macchine virtuali usano indirizzi IP privati per comunicare all'interno della rete. È possibile rimuovere gli indirizzi IP pubblici da qualsiasi macchina virtuale in reti virtuali ospitate bastion. Per altre informazioni, vedere Annullare l'dissociazione di un indirizzo IP pubblico da una macchina virtuale di Azure.

Testare il gateway NAT

Ci si connette alle macchine virtuali Ubuntu create nei passaggi precedenti per verificare che il traffico Internet in uscita esce dal gateway NAT.

Ottenere l'indirizzo IP pubblico del gateway NAT

Ottenere l'indirizzo IP pubblico del gateway NAT per la verifica dei passaggi descritti più avanti nell'articolo.

  1. Nella casella di ricerca nella parte superiore del portale immettere Indirizzo IP pubblico. Selezionare Indirizzi IP pubblici nei risultati della ricerca.

  2. Selezionare public-ip-nat.

  3. Prendere nota del valore nell'indirizzo IP. L'esempio usato in questo articolo è 20.225.88.213.

Testare il gateway NAT dallo spoke

  1. Nella casella di ricerca nella parte superiore del portale immettere Macchina virtuale. Selezionare Macchine virtuali nei risultati della ricerca.

  2. Selezionare vm-spoke.

  3. In Operazioni selezionare Bastion.

  4. Immettere il nome utente e la password specificati durante la creazione della VM. Selezionare Connetti.

  5. Nel prompt di bash immettere il comando seguente:

    curl ifconfig.me
    
  6. Verificare che l'indirizzo IP restituito dal comando corrisponda all'indirizzo IP pubblico del gateway NAT.

    azureuser@vm-1:~$ curl ifconfig.me
    20.225.88.213
    
  7. Chiudere la connessione Bastion a vm-spoke.

Pulire le risorse

Al termine dell'uso delle risorse create, è possibile eliminare il gruppo di risorse e tutte le relative risorse.

  1. Accedere al portale di Azure e selezionare Gruppi di risorse.

  2. Nella pagina Gruppi di risorse selezionare il gruppo di risorse test-rg.

  3. Nella pagina test-rg selezionare Elimina gruppo di risorse.

  4. Immettere test-rg in Immettere il nome del gruppo di risorse per confermare l'eliminazione e selezionare Elimina.

Passaggi successivi

Passare all'articolo successivo per informazioni su come integrare un gateway NAT con Azure Load Balancer: