Esercitazione: Integrare un 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 offre 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 dell’architettura e dei modelli di traffico, è possibile che siano necessarie più porte SNAT rispetto a quelle che possono essere fornite da Firewall di Azure. È inoltre possibile richiedere l'uso di un minor numero di indirizzi IP pubblici, pur richiedendo 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 del firewall di Azure per fornire un metodo più scalabile di connettività in uscita. Per le distribuzioni di produzione è consigliabile una rete hub e 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.

Diagramma delle risorse di Azure create nell'esercitazione.

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 di Firewall di Azure, vedere Quali sono le opzioni di architettura di Gestione firewall di Azure?

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 al firewall di Azure e al gateway NAT. Usare l'esempio seguente per creare la rete virtuale hub.

  1. Accedere 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.
    Paese Selezionare (USA) Stati Uniti centro-meridionali.
  5. Selezionare Avanti per passare alla scheda Sicurezza.

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

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

    Nota

    La tariffa oraria inizia dal momento in cui viene distribuito Bastion, a prescindere dall'utilizzo dei dati in uscita. Per altre informazioni, vedere Prezzi e SKU. Se si distribuisce Bastion nel corso di un'esercitazione o di un test, è consigliabile eliminare questa risorsa dopo averla usata.

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

    Impostazione Valore
    Nome host Azure Bastion Immettere bastion.
    Indirizzo IP pubblico di Azure Bastion Selezionare Crea un indirizzo IP pubblico.
    Immettere public-ip-bastion 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 su 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.
    Indirizzo IP pubblico di Firewall di Azure Selezionare Crea un indirizzo IP pubblico.
    Immettere public-ip-firewall in Nome.
    Selezionare OK.
  10. Selezionare Avanti per passare alla scheda Indirizzi IP.

  11. Selezionare Rivedi e crea.

  12. Seleziona Crea.

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

Creare il gateway NAT

Tutto il traffico Internet in uscita attraversa il gateway NAT andando 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 gateway NAT. Selezionare Gateway NAT nei risultati della ricerca.

  2. Seleziona + Crea.

  3. Nella scheda Informazioni di base di Crea un 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.
    Paese selezionare Stati Uniti centro-meridionali.
    Zona di disponibilità Selezionare una zona o Nessuna zona.
    Timeout di inattività TCP (minuti) Lasciare l'impostazione predefinita 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 la rete virtuale spoke

La rete virtuale spoke contiene la macchina virtuale di test usata per testare il routing del traffico Internet verso il 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.
    Paese 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 Elimina spazio indirizzi per eliminare lo spazio indirizzi popolato automaticamente.

  7. Selezionare + Aggiungi spazio indirizzi IPv4.

  8. Per lo spazio indirizzi IPv4 digitare 10.1.0.0. Lasciare il valore predefinito /16 (65.536 indirizzi) nella maschera di selezione.

  9. Selezionare + Aggiungi una subnet.

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

    Impostazione Valore
    Scopo della subnet Lasciare l'impostazione predefinita Predefinito.
    Nome Immettere subnet-private.
    IPv4
    Intervallo di indirizzi IPv4 Lasciare l'impostazione predefinita 10.1.0.0/16.
    Indirizzo iniziale Lasciare l'impostazione predefinita 10.1.0.0.
    Dimensione Lasciare l'impostazione predefinita /24(256 indirizzi).
  11. Selezionare Aggiungi.

  12. Selezionare Rivedi e crea.

  13. Seleziona Crea.

Creare il peering tra hub e spoke

Un peering di reti virtuali viene usato per connettere l'hub allo spoke e lo 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. In Aggiungi peering, immettere o selezionare le informazioni seguenti:

    Impostazione Valore
    Riepilogo della 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 (test-rg).
    Impostazioni del peering di reti virtuali remoto
    Consentire a "vnet-spoke" di accedere a "vnet-hub" Lasciare selezionato come da impostazione predefinita.
    Consentire a "vnet-spoke" di ricevere traffico inoltrato da "vnet-hub" Selezionare la casella di controllo.
    Consentire al gateway o al server di route in "vnet-spoke" di inoltrare il traffico a "vnet-hub" Lasciare le opzioni non selezionate come da impostazione predefinita.
    Abilitare "vnet-spoke" per l'uso del gateway remoto o del server di route "vnet-hub" Lasciare le opzioni non selezionate come da impostazione predefinita.
    Riepilogo della rete virtuale locale
    Nome del collegamento di peering Immettere vnet-hub-to-vnet-spoke.
    Impostazioni del peering di reti virtuali locale
    Consentire a “vnet-hub” di accedere a “vnet-spoke-2” Lasciare selezionato come da impostazione predefinita.
    Consentire a "vnet-hub" di ricevere traffico inoltrato da "vnet-spoke" Selezionare la casella di controllo.
    Consentire al gateway o al server di route in "vnet-hub" di inoltrare il traffico a "vnet-spoke" Lasciare le opzioni non selezionate come da impostazione predefinita.
    Abilitare "vnet-hub" per usare il gateway remoto o il server di route "vnet-spoke" Lasciare le opzioni non selezionate come da impostazione predefinita.
  6. Selezionare Aggiungi.

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

Creare una tabella di route di rete spoke

Una tabella di route forza tutto il traffico che lascia la rete virtuale spoke verso la rete virtuale hub. La tabella di route viene configurata con l'indirizzo IP privato di 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 che verrà 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. In questo esempio l'indirizzo IP è 10.0.1.68.

Creare una tabella di route

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

  1. Nella casella di ricerca nella parte superiore del portale immettere Tabella di 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
    Paese 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 di 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. Selezionare 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 proveniente dallo spoke tramite 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. Espandere Impostazioni, quindi 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.
    Tipo di origine Indirizzo IP.
    Origine Immettere 10.1.0.0/24.
    Protocollo Selezionare TCP.
    Porte di destinazione Immettere 80,443.
    Tipo destinazione Selezionare Indirizzo IP.
    Destinazione Immettere *
  6. Selezionare Aggiungi.

Creare una macchina virtuale di test

Viene usata una macchina virtuale Ubuntu 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 nella rete virtuale una macchina virtuale di test denominata vm-spoke.

  1. Nel portale, cercare e selezionare Macchine virtuali.

  2. In Macchine virtuali, selezionare + Crea, 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.
    Paese Selezionare (USA) 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 24.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 oppure selezionare Avanti: Dischi e quindi Avanti: Rete.

  5. Nella scheda Rete immettere o selezionare le informazioni seguenti:

    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 Seleziona Avanzate.
    Configura gruppo di sicurezza di rete Selezionare Crea nuovo.
    Immettere nsg-1 per il nome.
    Lasciare invariate le impostazioni predefinite e selezionare OK.
  6. Lasciare invariate le impostazioni predefinite e selezionare Rivedi e crea.

  7. Rivedere le impostazioni e selezionare Crea.

Prima di proseguire con i passaggi successivi, attendere il completamento della distribuzione della macchina virtuale.

Nota

Le macchine virtuali in una rete virtuale con un host Bastion 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 da Bastion. Per altre informazioni, vedere Annullare l'associazione di un indirizzo IP pubblico da una macchina virtuale di Azure.

Testare il gateway NAT

Connettersi alle macchine virtuali Ubuntu create nei passaggi precedenti per verificare che il traffico Internet in uscita esca 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 è 203.0.113.0.25.

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 Informazioni generali selezionare Connetti quindi Connetti tramite 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
    203.0.113.0.25
    
  7. Chiudere la connessione Bastion a vm-spoke.

Quando le risorse create non sono più necessarie, è possibile eliminare il gruppo di risorse e tutte le risorse al suo interno.

  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, quindi selezionare Elimina.

Passaggi successivi

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