Configura un criterio firewall gerarchico per consentire il traffico in uscita da una rete VPC specifica

Scopri come creare e configurare un criterio di firewall gerarchico per consentire il traffico in uscita proveniente da una rete Virtual Private Cloud (VPC) specifica nella tua cartella a un indirizzo IP specifico come destinazione. La il criterio firewall blocca tutto il traffico in uscita proveniente dal tuo . La pagina illustra un esempio di creazione di due VPC creando istanze di macchine virtuali (VM) nel VPC impostare un criterio firewall gerarchico con regole firewall e quindi per testare il criterio firewall.

Prima di iniziare

Crea una cartella

Crea una cartella nella tua organizzazione.

  1. Nella console Google Cloud, vai alla pagina Gestisci risorse.

    Vai a Gestisci risorse

  2. Fai clic su Crea cartella.

  3. In Nome cartella, inserisci test-folder.

  4. Nell'elenco Organizzazione, seleziona il nome della risorsa dell'organizzazione.

  5. Nel campo Località, fai clic su Sfoglia e seleziona la tua organizzazione. risorsa.

  6. Fai clic su Crea.

Crea un progetto

Crea un progetto nella cartella creata nella sezione precedente.

  1. Nella console Google Cloud, vai alla pagina Gestisci risorse.

    Vai a Gestisci risorse

  2. Fai clic su Create project (Crea progetto).

  3. In Nome progetto, inserisci test-project.

  4. Seleziona un account di fatturazione per il progetto.

  5. Nell'elenco Organizzazione, seleziona il nome della risorsa dell'organizzazione.

  6. Nel campo Località, fai clic su Sfoglia ed espandi la risorsa dell'organizzazione. e seleziona test-folder.

  7. Fai clic su Crea.

Crea due reti VPC personalizzate con subnet IPv4

Crea due reti VPC in modalità personalizzata, myvpc con una subnet solo IPv4 e test-vpc con due subnet solo IPv4, nel progetto che hai creato nella sezione precedente.

  1. Nella console Google Cloud, seleziona project-test nella pagina di selezione del progetto.

    Vai al selettore progetti

  2. Nella console Google Cloud, vai alla pagina Reti VPC.

    Vai a Reti VPC

  3. Fai clic su Crea rete VPC.

  4. In Nome, inserisci myvpc.

  5. In Modalità di creazione subnet, seleziona Personalizzata.

  6. Nella sezione Nuova subnet, specifica la seguente configurazione per una subnet:

    • Nome: inserisci myvpc-subnet-1.
    • Regione: seleziona us-central1.
    • Intervallo IPv4: inserisci 10.0.0.0/24.
  7. Fai clic su Fine, quindi su Crea.

  8. Per creare un'altra rete VPC, fai clic su Crea rete VPC.

  9. In Nome, inserisci test-vpc.

  10. In Modalità di creazione subnet, seleziona Personalizzata.

  11. Nella sezione Nuova subnet, specifica la seguente configurazione i parametri per la subnet e fai clic su Fine:

    • Nome: inserisci testvpc-subnet-1.
    • Regione: seleziona us-central1.
    • Intervallo IPv4: inserisci 10.0.0.0/16.
  12. Per aggiungere un'altra subnet alla rete test-vpc, fai clic su Aggiungi subnet.

  13. Nella sezione Nuova subnet, specifica i seguenti parametri di configurazione per la subnet e poi fai clic su Fine:

    • Nome: inserisci testvpc-subnet-ext.
    • Regione: seleziona us-central1.
    • Intervallo IPv4: inserisci 192.168.1.0/24.
  14. Fai clic su Crea.

Creare VM

Crea tre VM nelle subnet configurate nella sezione precedente.

Crea una VM nella rete myvpc

Crea una VM senza un indirizzo IP esterno nella rete myvpc.

  1. Nella console Google Cloud, vai alla pagina Crea un'istanza.

    Vai a Crea un'istanza

  2. Fai clic su Crea istanza.

  3. In Nome, inserisci myvpc-vm.

  4. In Regione, seleziona us-central1 (Iowa).

  5. Espandi Opzioni avanzate, quindi Networking.

  6. Nella sezione Interfacce di rete, espandi l'interfaccia di rete esistente e specifica i seguenti parametri di configurazione:

    • Rete: seleziona myvpc.
    • Subnet: seleziona subnet-1 IPv4 (10.0.0.0/24).
    • Indirizzo IPv4 esterno: seleziona Nessuno.
  7. Fai clic su Fine.

  8. Fai clic su Crea.

Crea due VM nella rete test-vpc

Crea due VM, una senza indirizzo IP esterno e un'altra con indirizzo IP esterno. Quando crei la VM con un indirizzo IP esterno, passa uno script di avvio per installare e avviare un server web Apache nella VM.

Crea una VM senza un indirizzo IP esterno:

  1. Nella console Google Cloud, vai alla pagina Crea un'istanza.

    Vai a Crea un'istanza

  2. Fai clic su Crea istanza.

  3. In Nome, inserisci testvpc-vm.

  4. In Regione, seleziona us-central1 (Iowa).

  5. Espandi Opzioni avanzate, quindi espandi Networking.

  6. Nella sezione Interfacce di rete, espandi l'interfaccia di rete esistente e specificare i seguenti parametri di configurazione:

    • Rete: seleziona test-vpc.
    • Subnet: seleziona testvpc-subnet-1 IPv4 (10.0.0.0/16).
    • Indirizzo IPv4 esterno: seleziona Nessuno.
  7. Fai clic su Fine.

  8. Fai clic su Crea.

Crea una VM con un indirizzo IP esterno temporaneo e passa uno script di avvio per l'installazione e avvia un server web Apache:

  1. Fai clic su Crea istanza.
  2. In Nome, inserisci testvpc-apache-vm.
  3. In Regione, seleziona us-central1 (Iowa).
  4. Espandi Opzioni avanzate, quindi Networking.
  5. Nella sezione Interfacce di rete, espandi l'interfaccia di rete esistente e specifica i seguenti parametri di configurazione:
    • Rete: seleziona test-vpc.
    • Subnet: seleziona testvpc-subnet-ext IPv4 (192.168.1.0/24).
    • Indirizzo IPv4 esterno: seleziona Ephemero.
  6. Espandi Gestione.
  7. Nella sezione Metadati, inserisci lo script seguente nel Campo Script di avvio:

      #! /bin/bash
      apt-get update
      apt-get install apache2 -y
      a2ensite default-ssl
      a2enmod ssl
      # Read VM network configuration:
      md_vm="http://169.254.169.254/computeMetadata/v1/instance/"
      vm_hostname="$(curl $md_vm/name -H "Metadata-Flavor:Google" )"
      filter="{print \$NF}"
      vm_network="$(curl $md_vm/network-interfaces/0/network \
      -H "Metadata-Flavor:Google" | awk -F/ "${filter}")"
      vm_zone="$(curl $md_vm/zone \
      -H "Metadata-Flavor:Google" | awk -F/ "${filter}")"
      # Apache configuration:
      echo "Page on $vm_hostname in network $vm_network zone $vm_zone" | \
      tee /var/www/html/index.html
      systemctl restart apache2
    

    Lo script precedente esegue il deployment e avvia un server web Apache in questa VM.

  8. Fai clic su Fine.

  9. Fai clic su Crea.

  10. Prendi nota dell'indirizzo IP esterno temporaneo assegnato a questa VM dal Istanze VM. Ti servirà questo indirizzo IP esterno in un secondo momento.

Crea un router Cloud e un gateway Cloud NAT

Nella sezione precedente, nella rete myvpc, hai creato la VM myvpc-vm senza alcun indirizzo IP esterno. Abilitare la VM myvpc-vm per accedere al sito web Apache server in esecuzione su testvpc-apache-vm sulla rete internet pubblica, crea un il router Cloud e un gateway Cloud NAT sulla stessa subnet in cui hai creato la VM myvpc-vm.

  1. Nella console Google Cloud, vai alla pagina Cloud NAT.

    Vai a Cloud NAT

  2. Fai clic su Inizia o Crea gateway Cloud NAT.

    Nota:se questo è il primo gateway Cloud NAT che stai creando, Fai clic su Inizia. Se hai già gateway esistenti, Google Cloud mostra il pulsante Crea gateway Cloud NAT. Per crearne un'altra fai clic su Crea gateway Cloud NAT.

  3. In Nome gateway, inserisci myvpc-gateway.

  4. Per Tipo NAT, seleziona Pubblico.

  5. Nella sezione Seleziona router cloud, specifica i seguenti parametri di configurazione:

    • Rete: seleziona myvpc.
    • Regione: seleziona us-central1 (Iowa)
    • Router Cloud: fai clic su Crea nuovo router.
      1. In Nome, inserisci myvpc-router.
      2. Fai clic su Crea.
  6. Fai clic su Crea.

Crea un criterio firewall gerarchico e aggiungi regole firewall

Crea un criterio firewall gerarchico a cui aggiungi le seguenti regole:

  • Abilita l'IAP per tutte le VM in test-folder per attivare l'accesso amministrativo alle VM.
  • Consenti il traffico in entrata a tutte le VM nella rete test-vpc.
  • Delega il traffico in uscita dalla rete myvpc alla successiva nella gerarchia, ovvero Regola VPC firewall implied IPv4 rule egress all.
  • Nega il traffico in uscita proveniente da tutte le altre reti VPC in test-folder.

Per creare un criterio di firewall gerarchico:

  1. Nella console Google Cloud, vai alla pagina del selettore progetti e seleziona test-folder.

    Vai al selettore progetti

  2. Nella console Google Cloud, vai alla pagina Criteri firewall.

    Vai a Criteri firewall

  3. Fai clic su Crea criterio firewall.

  4. Nella sezione Configura criterio, per Nome criterio, inserisci fw-egress-specific-vpc.

  5. In Descrizione, inserisci example-firewall-policy.

  6. Fai clic su Continua.

  7. Nella sezione Aggiungi regole, fai clic su Continua. Aggiungerai le regole firewall nelle sezioni successive di questa guida rapida.

  8. Nella sezione Associa criterio alle risorse, fai clic su Aggiungi.

  9. Espandi la tua organizzazione, seleziona test-folder, quindi fai clic su Add.

  10. Fai clic su Crea.

Aggiungi una regola firewall per attivare IAP in tutte le VM nel test-folder

Per abilitare IAP in modo che si connetta a tutte le VM in test-folder, è necessaria una regola firewall nel criterio firewall gerarchico con quanto segue caratteristiche:

  • Si applica a tutte le VM in test-folder che vuoi rendere accessibili utilizzando l'inoltro TCP IAP.
  • Consente il traffico in entrata dall'intervallo di indirizzi IP 35.235.240.0/20. Questo contiene tutti gli indirizzi IP che IAP utilizza per l'inoltro TCP.
  • Consenta le connessioni a tutte le porte che vuoi rendere accessibili utilizzando l'inoltro TCP di IAP, ad esempio la porta 22 per SSH.

Per aggiungere la regola firewall:

  1. Nella console Google Cloud, vai alla pagina Criteri firewall.

    Vai a Criteri firewall

  2. Fai clic su fw-egress-specific-vpc e quindi su Aggiungi regola.

  3. In Priorità, inserisci 100.

  4. In Descrizione, inserisci enable-iap.

  5. Per Direzione del traffico, seleziona In entrata.

  6. Per Azione in caso di corrispondenza, seleziona Consenti.

  7. Nella sezione Origine, inserisci 35.235.240.0/20 in Intervalli IP.

  8. Nella sezione Protocolli e porte, seleziona Protocolli e porte specificati.

  9. Seleziona la casella di controllo TCP e inserisci 22 in Porte.

  10. Fai clic su Crea.

Aggiungi una regola firewall per consentire il traffico in entrata nella rete test-vpc

Aggiungi una regola firewall per consentire il traffico web HTTP in entrata sulla porta TCP 80 verso tutte le VM nella rete test-vpc:

  1. Nella console Google Cloud, vai alla pagina Criteri firewall.

    Vai a Criteri firewall

  2. Fai clic su fw-egress-specific-vpc e poi su Aggiungi regola.

  3. In Priorità, inserisci 200.

  4. In Descrizione, inserisci allow-ingress-testvpc.

  5. Per Direzione del traffico, seleziona In entrata.

  6. Per Azione in caso di corrispondenza, seleziona Consenti.

  7. Nella sezione Target, fai clic su Aggiungi emittente.

  8. Seleziona il progetto di test che contiene la rete test-vpc, quindi seleziona test-vpc come rete.

  9. Nella sezione Origine, per Intervalli IP, inserisci 0.0.0.0/0.

  10. Nella sezione Protocolli e porte, seleziona Protocolli e porte specificati.

  11. Seleziona la casella di controllo TCP e per Porte inserisci 80.

  12. Fai clic su Crea.

Aggiungi una regola firewall per delegare il traffico in uscita dalla rete myvpc alla regola successiva nella gerarchia

Aggiungi una regola firewall che utilizzi l'azione goto_next per delegare il traffico in uscita dalla rete myvpc alla regola successiva nel firewall, ovvero regola firewall VPC di autorizzazione IPv4 implicita.

  1. Nella console Google Cloud, vai alla pagina Criteri firewall.

    Vai a Criteri firewall

  2. Fai clic su fw-egress-specific-vpc e poi su Aggiungi regola.

  3. In Priorità, inserisci 300.

  4. In Descrizione, inserisci delegate-egress-myvpc.

  5. Per Direzione del traffico, seleziona In uscita.

  6. In Azione in caso di corrispondenza, seleziona Vai a successiva.

  7. Nella sezione Target, fai clic su Aggiungi emittente.

  8. Seleziona il nome del progetto di test che contiene myvpc, quindi seleziona myvpc come rete.

  9. Nella sezione Destinazione, in Intervalli IP, inserisci l'indirizzo IP esterno temporaneo della VM su cui è in esecuzione il server web Apache. Hai ha notato questo indirizzo IP nella Crea due VM nella sezione test-vpc rete.

  10. Fai clic su Crea.

Aggiungi una regola firewall per negare il traffico in uscita proveniente da tutte le altre reti VPC

Infine, aggiungi una regola firewall che neghi il traffico in uscita da tutti gli altri Reti VPC in test-folder.

  1. Nella console Google Cloud, vai alla pagina Criteri firewall.

    Vai a Criteri firewall

  2. Fai clic su fw-egress-specific-vpc e poi su Aggiungi regola.

  3. In Priorità, inserisci 400.

  4. In Descrizione, inserisci block-egress-all-traffic.

  5. In Direzione del traffico, seleziona In uscita.

  6. In Azione in caso di corrispondenza, seleziona Rifiuta.

  7. Nella sezione Destinazione, inserisci 0.0.0.0/0 in Intervalli IP.

  8. Fai clic su Crea.

Testare il criterio firewall gerarchico

Dopo aver configurato il criterio firewall gerarchico, segui questi passaggi per testare il criterio:

  1. Vai alla console Google Cloud.

    Vai alla console Google Cloud

  2. Nel selettore di progetti nella parte superiore della pagina, seleziona test-project dove hai creato le reti VPC.

  3. Nella console Google Cloud, vai alla pagina Istanze VM.

    Vai a Istanze VM

  4. Nella colonna Connetti per myvpc-vm, fai clic su SSH.

  5. Nella finestra di dialogo SSH nel browser, fai clic su Autorizza e attendi che connessione da stabilire.

  6. Per verificare che il traffico in uscita verso testvpc-apache-vm da myvpc sia consentito, esegui questo comando:

    curl <external_ephemeral_IP_testvpc_apache_vm> -m 2
    

    Il comando precedente restituisce il contenuto che hai specificato per l'oggetto index.html del server web Apache, per cui il traffico in uscita connessioni da myvpc consentite.

  7. per verificare che il traffico in uscita sia bloccato da qualsiasi altra rete VPC. che fa parte dell'organizzazione:

    1. Nella console Google Cloud, vai alla pagina Istanze VM.

      Vai a Istanze VM

    2. Nella colonna Connetti per testvpc-vm, fai clic su SSH.

    3. Nella finestra di dialogo SSH nel browser, fai clic su Autorizza e attendi la connessione da stabilire.

    4. Per verificare che il traffico in uscita da testvpc-vm a testvpc-apache-vm sia bloccato, esegui il seguente comando:

      curl <internal_IP_testvpc_apache_vm> -m 2
      

      Il comando precedente restituisce un messaggio Connection timed out, che è previsto perché hai creato una regola firewall per negare il traffico in uscita da tutti Reti VPC nell'organizzazione tranne myvpc.

Esegui la pulizia

Per evitare che al tuo account Google Cloud vengano addebitati costi relativi alle risorse utilizzate in questa guida rapida, elimina le singole risorse, quindi il progetto e la cartella.

Per eliminare le risorse create in questa guida rapida, completa le attività seguenti.

Elimina il criterio firewall gerarchico

  1. Vai alla console Google Cloud.

    Vai alla console Google Cloud

  2. Nel selettore di progetti nella parte superiore della pagina, seleziona test-folder dove hai creato le risorse per questa guida rapida.

  3. Nella console Google Cloud, vai alla pagina Criteri firewall.

    Vai a Criteri firewall

  4. Nella sezione Criteri firewall associati a questo nodo o ereditati dal nodo, fai clic su fw-egress-specific-vpc.

  5. Fai clic sulla scheda Associazioni.

  6. Seleziona la casella di controllo per test-folder e fai clic su Rimuovi associazione.

  7. Nella finestra di dialogo Rimuovi associazione con test-folder, fai clic su Elimina.

  8. Fai clic su Elimina.

  9. Nella finestra di dialogo Elimina fw-egress-specific-vpc, fai clic su Elimina.

Elimina le VM

  1. Vai alla console Google Cloud.

    Vai alla console Google Cloud

  2. Nel selettore dei progetti nella parte superiore della pagina, seleziona test-project.

  3. Nella console Google Cloud, vai alla pagina Istanze VM.

    Vai a Istanze VM

  4. Seleziona le caselle di controllo per myvpc-vm, testvpc-vm e testvpc-apache-vm.

  5. Fai clic su Elimina.

  6. Nella finestra di dialogo Elimina 3 istanze, fai clic su Elimina.

Elimina il router Cloud e il gateway Cloud NAT

  1. Nella console Google Cloud, vai alla pagina Router Cloud.

    Vai ai router cloud

  2. Seleziona la casella di controllo myvpc-router.

  3. Fai clic su Elimina.

  4. Nella finestra di dialogo Elimina myvpc-router, fai clic su Elimina.

Quando elimini un router Cloud, il gateway Cloud NAT associato viene eliminata anche.

Elimina la rete VPC e le relative subnet

  1. Nella console Google Cloud, vai alla pagina Reti VPC.

    Vai a Reti VPC

  2. Nella colonna Nome, fai clic su myvpc.

  3. Fai clic su Elimina rete VPC.

  4. Nella finestra di dialogo Elimina una rete, fai clic su Elimina.

    Allo stesso modo, elimina la rete test-vpc.

Quando elimini una rete VPC, vengono eliminate anche le relative subnet.

Elimina il progetto

  1. In the Google Cloud console, go to the Manage resources page.

    Go to Manage resources

  2. If the project that you plan to delete is attached to an organization, expand the Organization list in the Name column.
  3. In the project list, select the project that you want to delete, and then click Delete.
  4. In the dialog, type the project ID, and then click Shut down to delete the project.

Elimina la cartella

  1. Nella console Google Cloud, vai alla pagina Gestisci risorse.

    Vai a Gestisci risorse

  2. Se la cartella che intendi eliminare è collegata a un'organizzazione, Espandi l'elenco Organizzazione nella colonna Nome.

  3. Nell'elenco delle cartelle, seleziona cartella-test e fai clic su Elimina.

  4. Nella finestra di dialogo, digita l'ID cartella, quindi fai clic su Elimina comunque per eliminare il progetto.

Passaggi successivi