Configurare l'integrazione fuori banda per un modello producer-consumer

L'integrazione della sicurezza di rete utilizza il modello produttore-consumatore per ispezionare e monitorare i dati. Utilizza l'integrazione out-of-band con la tecnologia di mirroring pacchetto per eseguire il mirroring del traffico di rete utilizzando appliance virtuali gestite dall'utente.

Questo tutorial descrive come creare e configurare le risorse di produttore e consumer per configurare l'integrazione out-of-band.

Obiettivi

Questo tutorial mostra come completare le seguenti attività in un progetto:

  1. Crea reti Virtual Private Cloud (VPC) personalizzate con subnet per il producer e il consumer nello stesso progetto.
  2. Per il producer, crea e configura le risorse del producer e le risorse di deployment di mirroring. Un esempio di risorse del produttore è un bilanciatore del carico di rete passthrough interno.
  3. Per il consumer, crea e configura istanze di macchine virtuali (VM) client e server, risorse endpoint di mirroring e policy firewall per eseguire il mirroring del traffico client-server.
  4. Testa la connessione e verifica che i pacchetti di traffico di rete delle VM consumer vengano sottoposti a mirroring nelle risorse di mirroring del producer.

Il seguente diagramma mostra il flusso del traffico tra le reti VPC producer e consumer.

Architettura di deployment di alto livello dei componenti produttore e consumer in un unico progetto.
Figura 1. Architettura di deployment di alto livello dei componenti produttore e consumer in un unico progetto (fai clic per ingrandire).

Il diagramma precedente mostra quanto segue:

  • Traffico di rete che scorre dalla rete consumer alla rete producer tramite un gruppo di endpoint di mirroring.
  • La rete del produttore include un'istanza VM, un bilanciatore del carico di rete passthrough interno e un deployment di mirroring.
  • Il gruppo di deployment di mirroring della rete producer include il deployment di mirroring zonale.
  • La rete di consumo include istanze VM client e server. Le regole firewall e le policy all'interno della rete consumer gestiscono il flusso di traffico e un gruppo di profili di sicurezza è associato alla policy firewall.
  • La rete consumer è collegata a un'associazione di gruppi di endpoint di mirroring, che connette la rete consumer al gruppo di endpoint di mirroring.

Prima di iniziare

  1. Sign in to your Google Cloud account. If you're new to Google Cloud, create an account to evaluate how our products perform in real-world scenarios. New customers also get $300 in free credits to run, test, and deploy workloads.
  2. In the Google Cloud console, on the project selector page, select or create a Google Cloud project.

    Roles required to select or create a project

    • Select a project: Selecting a project doesn't require a specific IAM role—you can select any project that you've been granted a role on.
    • Create a project: To create a project, you need the Project Creator role (roles/resourcemanager.projectCreator), which contains the resourcemanager.projects.create permission. Learn how to grant roles.

    Go to project selector

  3. Verify that billing is enabled for your Google Cloud project.

  4. In the Google Cloud console, on the project selector page, select or create a Google Cloud project.

    Roles required to select or create a project

    • Select a project: Selecting a project doesn't require a specific IAM role—you can select any project that you've been granted a role on.
    • Create a project: To create a project, you need the Project Creator role (roles/resourcemanager.projectCreator), which contains the resourcemanager.projects.create permission. Learn how to grant roles.

    Go to project selector

  5. Verify that billing is enabled for your Google Cloud project.

  6. Abilita l'API Compute Engine per il tuo progetto.
  7. Abilita l'API Network Security nel progetto Google Cloud che vuoi utilizzare per la fatturazione.
  8. Assicurati di disporre del ruolo Compute Network Admin (roles/compute.networkAdmin) concesso a livello di progetto e del ruolo Amministratore profilo di sicurezza (roles/networksecurity.securityProfileAdmin) concesso a livello di organizzazione.
  9. Se preferisci lavorare dalla riga di comando, installa Google Cloud CLI. Per informazioni concettuali e sull'installazione dello strumento, consulta la panoramica di gcloud CLI.

    Nota:se non hai mai eseguito Google Cloud CLI, esegui prima gcloud init per inizializzare la directory gcloud CLI.

  10. Recupera l'ID del tuo progetto. Ti serve per creare risorse di mirroring e endpoint. Se utilizzi gcloud CLI, puoi sostituire PROJECT_ID qui o in un secondo momento nei rispettivi comandi.
  11. Recupera l'ID della tua organizzazione. Ti serve per creare risorse a livello di organizzazione, come profili di sicurezza e gruppi di profili di sicurezza. Se utilizzi gcloud CLI, puoi sostituire ORG_ID qui o più avanti nei rispettivi comandi.

Creare risorse per i produttori

In questa sezione, crea le seguenti risorse per il produttore:

  • Una rete VPC personalizzata con una subnet.
  • Un gruppo di istanze non gestite con una VM che registra i pacchetti Generic Network Virtualization Encapsulation (GENEVE) in entrata.
  • Un bilanciatore del carico di rete passthrough interno con un servizio di backend e una regola di forwarding.
  • Una regola firewall per consentire i controlli di integrità Google Cloud .
  • Un gruppo di deployment di mirroring e un deployment di mirroring.

Crea una rete VPC personalizzata

In questa sezione crei una rete VPC con una subnet.

Console

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

    Vai a Reti VPC

  2. Fai clic su Crea rete VPC.

  3. In Nome, inserisci producer-network.

  4. In Descrizione, inserisci Producer VPC network.

  5. Nella sezione Subnet, segui questi passaggi:

    1. In Modalità di creazione subnet, seleziona Personalizzata.
    2. Nella sezione Nuova subnet, inserisci le seguenti informazioni:
      • Nome: producer-subnet
      • Regione: us-west1
      • Tipo di stack IP: IPv4 (stack singolo)
      • Intervallo IPv4: 10.10.0.0/16
    3. Fai clic su Fine.
  6. Fai clic su Crea.

  7. Apri gcloud CLI ed esegui questo comando per aumentare l'unità di trasmissione massima (MTU) della rete della console Google Cloud .

    gcloud compute networks update producer-network \
        --mtu=1856
    

    Nel comando, specifica un'MTU di 1856 byte, che è la somma dell'MTU predefinita di una rete della console (1460 byte) e dell'overhead di incapsulamento GENEVE di Network Security Integration (396 byte). Google Cloud

gcloud

  1. Crea una rete VPC.

    gcloud compute networks create producer-network \
        --subnet-mode=custom \
        --mtu=1856 \
        --description="Producer VPC network"
    

    Nel comando, specifica un'MTU di 1856 byte, che è la somma dell'MTU predefinita di una rete della console (1460 byte) e dell'overhead di incapsulamento GENEVE di Network Security Integration (396 byte). Google Cloud

  2. Nella rete VPC, crea una subnet.

    gcloud compute networks subnets create producer-subnet \
        --network=producer-network \
        --region=us-west1 \
        --range=10.10.0.0/16
    

Crea un gruppo di istanze non gestito

In questa sezione, creerai un gruppo di istanze non gestito.

Console

  1. Nella console Google Cloud , vai alla pagina Gruppi di istanze.

    Vai a Gruppi di istanze

  2. Fai clic su Crea gruppo di istanze.

  3. Fai clic su Nuovo gruppo di istanze non gestite.

  4. In Nome, inserisci producer-instance-group.

  5. Nella sezione Località, seleziona us-west1 per Regione e us-west1-b per Zona.

  6. Nella sezione Rete e istanze, segui questi passaggi:

    1. In Rete, seleziona producer-network.
    2. In Subnet, seleziona producer-subnet.
  7. Fai clic su Crea.

gcloud

gcloud compute instance-groups unmanaged create producer-instance-group \
    --zone=us-west1-b

Configura i componenti del bilanciatore del carico

In questa sezione crei i componenti per un bilanciatore del carico di rete passthrough interno, tra cui un servizio di backend e una regola di forwarding.

Console

Avvia la configurazione

  1. Nella console Google Cloud , vai alla pagina Bilanciamento del carico.

    Vai a Bilanciamento del carico

  2. Fai clic su Crea bilanciatore del carico.
  3. In Tipo di bilanciatore del carico, seleziona Bilanciatore del carico di rete (TCP/UDP/SSL) e fai clic su Avanti.
  4. Per Proxy o passthrough, seleziona Bilanciatore del carico passthrough e fai clic su Avanti.
  5. In Pubblico o interno, seleziona Interno e fai clic su Avanti.
  6. Fai clic su Configura.

Configurazione di base

Nella pagina Crea bilanciatore del carico di rete passthrough interno, inserisci le seguenti informazioni:

  • Nome del bilanciatore del carico: producer-ilb
  • Regione: us-west1
  • Rete: producer-network

Configura i backend

  1. Fai clic su Configurazione backend.
  2. In Protocollo, seleziona UDP.
  3. Nell'elenco Controllo di integrità, seleziona Crea un controllo di integrità, inserisci le seguenti informazioni e fai clic su Crea.
    • Nome: producer-health-check
    • Ambito: regionale
    • Porta:80
    • Protocollo proxy: NONE
  4. Nella sezione Nuovo backend di Backend, per Tipo di stack IP, scegli IPv4 (stack singolo).
  5. In Gruppo di istanze, seleziona il gruppo di istanze producer-instance-group e fai clic su Fine.

  6. Verifica che sia presente un segno di spunta blu accanto a Configurazione backend prima di continuare.

Configura il frontend

  1. Nella sezione Nuovi IP e porta frontend, inserisci le seguenti informazioni e fai clic su Fine:
    1. In Nome, inserisci producer-ilb-fr.
    2. In Subnet, seleziona producer-subnet.
    3. In Porte, seleziona Singola, quindi in Numero porta, inserisci 6081.
    4. Nella sezione Configurazione avanzata, per Mirroring pacchetto, seleziona Abilita questo bilanciatore del carico per il mirroring dei pacchetti.
    5. Verifica che sia presente un segno di spunta blu accanto a Configurazione frontend prima di continuare.

Esamina la configurazione

  1. Fai clic su Esamina e finalizza.
  2. Rivedi le impostazioni di configurazione del bilanciatore del carico.
  3. Fai clic su Crea.

gcloud

  1. Crea un controllo di integrità a livello di regione.

    gcloud compute health-checks create tcp producer-health-check \
        --region=us-west1 \
        --port=80
    
  2. Crea il servizio di backend.

    gcloud compute backend-services create producer-backend-service \
        --protocol=UDP \
        --region=us-west1 \
        --health-checks=producer-health-check \
        --health-checks-region=us-west1 \
        --load-balancing-scheme=INTERNAL
    
  3. Crea una regola di forwarding per il servizio di backend.

    gcloud compute forwarding-rules create producer-ilb-fr \
        --backend-service=producer-backend-service \
        --region=us-west1 \
        --network=producer-network \
        --subnet=producer-subnet \
        --ip-protocol=UDP \
        --load-balancing-scheme=INTERNAL \
        --is-mirroring-collector \
        --ports=6081
    

Crea un'istanza VM e aggiungila al gruppo di istanze

In questa sezione, creerai un'istanza VM con uno script di avvio che configura un server di logging per i pacchetti incapsulati GENEVE. Prima di creare l'istanza VM, recupera l'indirizzo IP del gateway della subnet. Hai bisogno dell'indirizzo IP per lo script di avvio.

Console

Ottenere l'indirizzo IP del gateway della subnet

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

    Vai a Reti VPC

  2. Fai clic sulla rete VPC producer-network.

  3. Fai clic sulla scheda Subnet.

  4. Nella sezione Subnet, prendi nota dell'indirizzo IP del gateway dalla colonna Gateway.

Crea l'istanza VM

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

    Vai all'istanza VM

    1. Fai clic su Crea istanza.
    2. In Nome, inserisci producer-instance.
    3. In Regione, seleziona us-west1.
    4. In Zona, seleziona us-west1-b.
    5. Imposta Tipo di macchina su e2-micro.
    6. Fai clic su Networking e poi, nella sezione Interfacce di rete, fai clic su Aggiungi un'interfaccia di rete e imposta quanto segue:
      • Rete: producer-network
      • Subnet: producer-subnet
      • Indirizzo IPv4 esterno: Nessuno
    7. Fai clic su Avanzate e inserisci il seguente script in Script di avvio:

      #!/bin/bash
      # Log incoming packets from the gateway IP and the GENEVE 6081 port.
      iptables -A INPUT -p udp -s '"$GW_IP"'/32 --dport 6081 -j LOG --log-prefix "[NSI MIRRORING] "
      
      # Spin up a simple server for health checks on port 80.
      nohup python3 -u -m http.server 80 &
      

      Sostituisci quanto segue:

      • GW_IP: l'indirizzo IP del gateway della subnet.
    8. Fai clic su Crea.

Aggiungi l'istanza VM al gruppo di istanze

  1. Nella console Google Cloud , vai alla pagina Gruppi di istanze.

    Vai a Gruppi di istanze

  2. Fai clic su producer-instance-group.

  3. Fai clic su Modifica.

  4. Nella sezione Istanze VM, seleziona la VM producer-instance dall'elenco Seleziona VM.

  5. Fai clic su Salva.

gcloud

  1. Ottieni l'indirizzo IP del gateway della subnet.

    GW_IP=$(gcloud compute networks subnets describe producer-subnet \
        --region=us-west1 \
        --format="get(gatewayAddress)")
    
  2. Crea un'istanza VM.

    gcloud compute instances create producer-instance \
        --image-project=debian-cloud \
        --image-family=debian-11 \
        --machine-type=e2-micro \
        --zone=us-west1-b \
        --network-interface="subnet=producer-subnet,no-address" \
        --metadata=startup-script='#!/bin/bash
         # Log incoming packets from the gateway IP and the GENEVE 6081 port.
         iptables -A INPUT -p udp -s '"$GW_IP"'/32 --dport 6081 -j LOG --log-prefix "[NSI MIRRORING] "
    
         # Spin up a simple server for health checks on port 80.
         nohup python3 -u -m http.server 80 &'
    
    
  3. Aggiungi l'istanza VM al gruppo di istanze.

    gcloud compute instance-groups unmanaged add-instances producer-instance-group \
        --instances=producer-instance \
        --zone=us-west1-b
    
  4. Aggiungi il gruppo di istanze al servizio di backend.

    gcloud compute backend-services add-backend producer-backend-service \
        --region=us-west1 \
        --instance-group=producer-instance-group \
        --instance-group-zone=us-west1-b
    

Crea una policy firewall e aggiungi regole firewall

In questa sezione, crei una policy firewall e aggiungi regole firewall per consentire il traffico UDP, Google Cloud i controlli di integrità e le connessioni SSH all'istanza VM producer tramite Identity-Aware Proxy (IAP).

Console

  1. Nella console Google Cloud , vai alla pagina Policy del firewall.

    Vai a Criteri firewall

  2. Fai clic su Crea criterio firewall.

  3. Nel campo Nome, inserisci producer-firewall-policy.

  4. In Ambito di deployment, seleziona Globale e fai clic su Continua.

  5. Crea le seguenti regole per la tua policy.

    Consenti il traffico UDP con la porta GENEVE dall'indirizzo IP del gateway VPC

    1. Fai clic su Crea regola firewall e configura i seguenti campi:
      • Priorità: 100
      • Direzione del traffico: in entrata
      • Azione in caso di corrispondenza: Consenti
      • Filtri di origine > Intervalli IP: GATEWAY_IP
      • Protocollo e porte: seleziona Protocollo e porte specificati, seleziona la casella di controllo UDP e poi, in Porte, specifica 6081.
    2. Fai clic su Crea.

    Sostituisci GATEWAY_IP con l'indirizzo IP del gateway della subnet.

    Consenti i Google Cloud controlli di integrità

    1. Fai clic su Crea regola firewall e configura i seguenti campi:

      • Priorità: 101
      • Direzione del traffico: in entrata
      • Azione in caso di corrispondenza: Consenti
      • Intervalli IP: 35.191.0.0/16 e 130.211.0.0/22
      • Protocollo e porte: seleziona Protocollo e porte specificati, seleziona la casella di controllo TCP e poi, in Porte, specifica 80.
    2. Fai clic su Crea.

    Consenti la connessione SSH all'istanza VM del produttore tramite Identity-Aware Proxy

    1. Fai clic su Crea regola firewall e configura i seguenti campi:
      • Priorità: 102
      • Direzione del traffico: in entrata
      • Azione in caso di corrispondenza: Consenti
      • Intervalli IP: 35.235.240.0/20
      • Protocollo e porte: seleziona Protocollo e porte specificati, seleziona la casella di controllo TCP e poi, in Porte, specifica 22.
    2. Fai clic su Crea.
  6. Per associare il criterio a un'emittente, fai clic su Continua, poi su Associa.

  7. Seleziona la casella di controllo producer-network.

  8. Fai clic su Continua.

  9. Fai clic su Crea.

gcloud

  1. Crea una policy del firewall di rete globale.

    gcloud compute network-firewall-policies create producer-firewall-policy \
        --global
    
  2. Associa la policy firewall alla rete del produttore.

    gcloud compute network-firewall-policies associations create \
        --name=producer-firewall-policy-assoc \
        --firewall-policy=producer-firewall-policy \
        --global-firewall-policy \
        --network=producer-network
    
  3. Crea una regola firewall per consentire la connessione UDP con la porta GENEVE dall'indirizzo IP del gateway VPC.

    gcloud compute network-firewall-policies rules create 100 \
        --firewall-policy=producer-firewall-policy \
        --global-firewall-policy \
        --action=allow \
        --direction=INGRESS \
        --layer4-configs=udp:6081 \
        --src-ip-ranges=$GW_IP/32
    
  4. Crea una regola firewall per consentire i controlli di integrità Google Cloud .

    gcloud compute network-firewall-policies rules create 101 \
        --firewall-policy=producer-firewall-policy \
        --global-firewall-policy \
        --action=allow \
        --direction=INGRESS \
        --layer4-configs=tcp:80 \
        --src-ip-ranges=35.191.0.0/16,130.211.0.0/22 # Google Cloud health check ranges
    
  5. Crea una regola firewall per consentire la connessione SSH all'istanza VM producer tramite Identity-Aware Proxy.

    gcloud compute network-firewall-policies rules create 102 \
        --firewall-policy=producer-firewall-policy \
        --global-firewall-policy \
        --action=allow \
        --direction=INGRESS \
        --layer4-configs=tcp:22 \
        --src-ip-ranges=35.235.240.0/20 # Google Cloud IAP range
    

Creare risorse di mirroring del produttore

In questa sezione creerai un gruppo di deployment di mirroring e un deployment di mirroring.

Console

  1. Nella console Google Cloud , vai alla pagina Gruppi di deployment.

    Vai a Gruppi di deployment

  2. Fai clic su Crea gruppo di deployment.

  3. In Nome, inserisci producer-deployment-group.

  4. In Rete, seleziona producer-network.

  5. Per Scopo, seleziona NSI fuori banda.

  6. Nella sezione Deployment di mirroring, fai clic su Crea deployment di mirroring, specifica i seguenti campi e poi fai clic su Crea:

    • Nome: producer-deployment
    • Regione: us-west1.
    • Zona: us-west1-b.
    • Bilanciatore del carico interno: producer-ilb.
  7. Fai clic su Crea.

gcloud

  1. Crea un gruppo di deployment di mirroring.

    gcloud network-security mirroring-deployment-groups create producer-deployment-group \
        --location=global \
        --network=projects/PROJECT_ID/global/networks/producer-network \
        --no-async
    

    Sostituisci PROJECT_ID con l'ID del tuo progetto.

  2. Crea un deployment di mirroring.

    gcloud network-security mirroring-deployments create producer-deployment \
        --location=us-west1-b \
        --forwarding-rule=producer-ilb-fr \
        --forwarding-rule-location=us-west1 \
        --mirroring-deployment-group=projects/PROJECT_ID/locations/global/mirroringDeploymentGroups/producer-deployment-group \
        --no-async
    

Creare risorse consumer

In questa sezione, crei le seguenti risorse per il consumer:

  • Una rete VPC personalizzata con una subnet
  • Una VM server e una VM client
  • Un criterio firewall e una regola per il mirroring del traffico
  • Un gruppo di endpoint di mirroring e un'associazione del gruppo di endpoint di mirroring
  • Un profilo di sicurezza e un gruppo di profili di sicurezza

Crea una rete VPC personalizzata

In questa sezione crei una rete VPC con una subnet.

Console

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

    Vai a Reti VPC

  2. Fai clic su Crea rete VPC.

  3. In Nome, inserisci consumer-network.

  4. In Descrizione, inserisci Consumer VPC network.

  5. Nella sezione Subnet, segui questi passaggi:

    1. In Modalità di creazione subnet, seleziona Personalizzata.
    2. Nella sezione Nuova subnet, inserisci le seguenti informazioni:
      • Nome: consumer-subnet
      • Regione: us-west1
      • Tipo di stack IP: IPv4 (stack singolo)
      • Intervallo IPv4: 10.11.0.0/16
    3. Fai clic su Fine.
  6. Fai clic su Crea.

gcloud

  1. Crea una rete VPC consumer.

    gcloud compute networks create consumer-network \
        --subnet-mode=custom \
        --description="Consumer VPC network"
    
  2. Nella rete VPC, crea una subnet.

    gcloud compute networks subnets create consumer-subnet \
        --network=consumer-network \
        --region=us-west1 \
        --range=10.11.0.0/16
    

Crea VM server e client

In questa sezione, crei una VM server e una VM client.

Console

Crea una VM server

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

    Vai all'istanza VM

  2. Fai clic su Crea istanza.

  3. Imposta Nome su consumer-server-vm.

  4. Imposta Regione su us-west1.

  5. Imposta Zona su us-west1-b.

  6. Imposta Tipo di macchina su e2-micro.

  7. Fai clic su Networking e poi, nella sezione Interfacce di rete, fai clic su Aggiungi un'interfaccia di rete e imposta quanto segue:

    • Rete: consumer-network
    • Subnet: consumer-subnet
    • Indirizzo IPv4 esterno: Nessuno
  8. Fai clic su Avanzate e inserisci il seguente script in Script di avvio:

    echo success > /tmp/connection_test && nohup python3 -u -m http.server --directory /tmp 8000 &
    

  9. Fai clic su Crea.

Crea una VM client

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

    Vai all'istanza VM

  2. Fai clic su Crea istanza.

  3. Imposta Nome su consumer-client-vm.

  4. Imposta Regione su us-west1.

  5. Imposta Zona su us-west1-b.

  6. Imposta Tipo di macchina su e2-micro.

  7. Fai clic su Networking e poi, nella sezione Interfacce di rete, fai clic su Aggiungi un'interfaccia di rete e imposta quanto segue:

    • Rete: consumer-network
    • Subnet: consumer-subnet
    • Indirizzo IPv4 esterno: Nessuno
  8. Fai clic su Crea.

gcloud

  1. Creare la VM server.

    gcloud compute instances create consumer-server-vm \
        --image-project=debian-cloud \
        --image-family=debian-11 \
        --machine-type=e2-micro \
        --zone=us-west1-b \
        --network-interface="subnet=consumer-subnet,no-address" \
        --metadata=startup-script="echo success > /tmp/connection_test && nohup python3 -u -m http.server --directory /tmp 8000 &"
    
  2. Creare la VM client.

    gcloud compute instances create consumer-client-vm \
        --image-project=debian-cloud \
        --image-family=debian-11 \
        --machine-type=e2-micro \
        --zone=us-west1-b \
        --network-interface="subnet=consumer-subnet,no-address"
    

Crea una policy firewall per consentire il traffico in entrata

In questa sezione, crei una policy firewall e aggiungi una regola firewall per consentire il traffico in entrata alle VM consumer.

Console

  1. Nella console Google Cloud , vai alla pagina Policy del firewall.

    Vai a Criteri firewall

  2. Fai clic su Crea criterio firewall.

  3. Nel campo Nome, inserisci consumer-firewall-policy.

  4. In Ambito di deployment, seleziona Globale e fai clic su Continua.

  5. Fai clic su Crea regola firewall, configura i seguenti campi e fai clic su Crea:

    • Priorità: 101
    • Direzione del traffico: in entrata
    • Azione in caso di corrispondenza: Consenti
    • Filtri di origine > Intervalli IP: 35.235.240.0/20
    • Protocollo e porte: seleziona Protocollo e porte specificati, seleziona la casella di controllo TCP e poi, in Porte, specifica 22.

    L'intervallo IPv4 35.235.240.0/20 contiene tutti gli indirizzi IP che Identity-Aware Proxy utilizza per l'inoltro TCP. Per saperne di più, consulta Preparare il progetto per l'inoltro TCP di IAP.

  6. Per consentire il traffico sulla porta TCP 8000 nella VM server, fai clic su Crea regola firewall e configura i seguenti campi:

    • Priorità: 102
    • Direzione del traffico: in entrata
    • Azione in caso di corrispondenza: Consenti
    • Filtri di origine > Intervalli IP: 10.11.0.0/16
    • Protocollo e porte: seleziona Protocollo e porte specificati, seleziona la casella di controllo TCP e poi, in Porte, specifica 8000.
    • Fai clic su Crea
  7. Per associare il criterio a un'emittente, fai clic su Continua, poi su Associa.

  8. Seleziona la casella di controllo consumer-network.

  9. Fai clic su Continua.

  10. Fai clic su Crea.

gcloud

  1. Crea una policy del firewall di rete globale.

    gcloud compute network-firewall-policies create consumer-firewall-policy \
        --global
    
  2. Associa la policy firewall alla rete consumer.

    gcloud compute network-firewall-policies associations create \
        --name=consumer-firewall-policy-assoc \
        --firewall-policy=consumer-firewall-policy \
        --global-firewall-policy \
        --network=consumer-network
    
  3. Crea una regola di autorizzazione SSH per consentire la connessione SSH all'istanza VM client tramite Identity-Aware Proxy.

    gcloud compute network-firewall-policies rules create 101 \
        --firewall-policy=consumer-firewall-policy \
        --global-firewall-policy \
        --action=allow \
        --direction=INGRESS \
        --layer4-configs=tcp:22 \
        --src-ip-ranges=35.235.240.0/20 # Google Cloud IAP range
    

    L'intervallo IPv4 35.235.240.0/20 contiene tutti gli indirizzi IP che IAP utilizza per l'inoltro TCP. Per saperne di più, consulta Preparare il progetto per l'inoltro TCP di IAP.

  4. Crea una regola firewall per consentire il traffico sulla porta TCP 8000 nella VM server.

    gcloud compute network-firewall-policies rules create 102 \
        --firewall-policy=consumer-firewall-policy \
        --global-firewall-policy \
        --action=allow \
        --direction=INGRESS \
        --layer4-configs=tcp:8000 \
        --src-ip-ranges=10.11.0.0/16
    

Crea gruppo di endpoint consumer

In questa sezione, crea un gruppo di endpoint di mirroring e un'associazione di gruppi di endpoint di mirroring.

Console

  1. Nella console Google Cloud , vai alla pagina Gruppi di endpoint.

    Vai a Gruppi di endpoint

  2. Fai clic su Crea gruppo di endpoint.

  3. In Nome, inserisci consumer-endpoint-group.

  4. Per Scopo, seleziona NSI fuori banda.

  5. Per Deployment group (Gruppo di deployment), seleziona In project (Nel progetto).

  6. In Nome gruppo di deployment, inserisci producer-deployment-group.

  7. Fai clic su Continua.

  8. Fai clic su Aggiungi associazione di gruppo di endpoint.

  9. Per Progetto, seleziona il progetto corrente.

  10. In Rete, seleziona consumer-network.

  11. Fai clic su Crea.

gcloud

  1. Crea il gruppo di endpoint di mirroring.

    gcloud network-security mirroring-endpoint-groups create consumer-endpoint-group \
        --location=global \
        --mirroring-deployment-group=projects/PROJECT_ID/locations/global/mirroringDeploymentGroups/producer-deployment-group \
        --no-async
    

    Sostituisci PROJECT_ID con l'ID del tuo progetto.

  2. Crea l'associazione del gruppo di endpoint di mirroring.

    gcloud network-security mirroring-endpoint-group-associations create consumer-endpoint-group-association \
        --location=global \
        --mirroring-endpoint-group=projects/PROJECT_ID/locations/global/mirroringEndpointGroups/consumer-endpoint-group \
        --network=consumer-network \
        --no-async
    

Creare un profilo di sicurezza e un gruppo di profili di sicurezza

Crea un gruppo di profili di sicurezza e un profilo di sicurezza personalizzato per replicare il traffico.

Console

Creare un profilo di sicurezza personalizzato

  1. Nella console Google Cloud , vai alla pagina Profili di sicurezza.

    Vai a Profili di sicurezza

  2. Nel selettore di progetti, seleziona la tua organizzazione.

  3. Nella scheda Profili di sicurezza, fai clic su Crea profilo.

  4. In Nome, inserisci consumer-security-profile.

  5. Per Scopo, seleziona NSI fuori banda.

  6. Per Progetto, seleziona il progetto corrente.

  7. Per Endpoint group (Gruppo di endpoint), seleziona consumer-endpoint-group.

  8. Fai clic su Crea.

Creare un gruppo di profili di sicurezza

  1. Nella console Google Cloud , vai alla pagina Gruppi di profili di sicurezza.

    Vai a Gruppi di profili di sicurezza

  2. Nel selettore di progetti, seleziona la tua organizzazione.

  3. Nella scheda Gruppi di profili di sicurezza, fai clic su Crea gruppo di profili.

  4. In Nome, inserisci consumer-security-profile-group.

  5. Per Scopo, seleziona NSI fuori banda.

  6. Per Profilo di mirroring personalizzato, seleziona consumer-security-profile.

  7. Fai clic su Crea.

gcloud

  1. Crea un profilo di sicurezza personalizzato per il mirroring.

    gcloud network-security security-profiles custom-mirroring create consumer-security-profile \
        --location=global \
        --organization=ORG_ID \
        --mirroring-endpoint-group=projects/PROJECT_ID/locations/global/mirroringEndpointGroups/consumer-endpoint-group \
        --billing-project=PROJECT_ID \
        --no-async
    

    Sostituisci quanto segue:

    • ORG_ID: l'ID della tua organizzazione. I profili di sicurezza sono risorse a livello di organizzazione. Per crearli, devi disporre del ruolo Amministratore profilo di sicurezza (networksecurity.securityProfileAdmin) a livello di organizzazione.
    • PROJECT_ID: l'ID progetto.
  2. Crea un gruppo di profili di sicurezza di mirroring.

    gcloud network-security security-profile-groups create consumer-security-profile-group \
        --location=global \
        --organization=ORG_ID \
        --custom-mirroring-profile=organizations/ORG_ID/locations/global/securityProfiles/consumer-security-profile \
        --billing-project=PROJECT_ID \
        --no-async
    

    Sostituisci quanto segue:

    • ORG_ID: l'ID della tua organizzazione. I gruppi di profili di sicurezza sono risorse a livello di organizzazione. Per crearli, devi disporre del ruolo Amministratore profilo di sicurezza (networksecurity.securityProfileAdmin) a livello di organizzazione.
    • PROJECT_ID: l'ID progetto.

Crea una regola della policy firewall per eseguire il mirroring del traffico

In questa sezione, crei una regola di mirroring per eseguire il mirroring del traffico.

Console

  1. Nella console Google Cloud , vai alla pagina Policy del firewall.

    Vai a Criteri firewall

  2. Fai clic su consumer-firewall-policy.

  3. Fai clic sulla scheda Regole di mirroring.

  4. Fai clic su Crea regola di mirroring e configura i seguenti campi:

    • Priorità: 100
    • Direzione del traffico: in entrata
    • Azione in caso di corrispondenza: Mirror
    • Gruppo di profili di sicurezza: consumer-security-profile-group
    • Origine: IPv4
    • Intervalli IP: 10.11.0.0/16
    • Protocollo e porte: seleziona Protocollo e porte specificati, seleziona la casella di controllo TCP e poi, in Porte, specifica 8000.
  5. Fai clic su Crea.

gcloud

  1. Aggiungi una regola firewall per eseguire il mirroring del traffico sulla porta TCP 8000 sulla VM server.

    gcloud compute network-firewall-policies mirroring-rules create 100 \
        --firewall-policy=consumer-firewall-policy \
        --global-firewall-policy \
        --action=mirror \
        --security-profile-group=organizations/ORG_ID/locations/global/securityProfileGroups/consumer-security-profile-group \
        --direction=INGRESS \
        --layer4-configs=tcp:8000 \
        --src-ip-ranges=10.11.0.0/16
    

    Sostituisci ORG_ID con l'ID della tua organizzazione.

Testa la connessione

In questa sezione invii un po' di traffico di rete dall'istanza VM client consumer all'istanza VM server consumer, quindi controlli i log dell'istanza VM producer per verificare il mirroring.

  1. Esegui questo comando per connetterti all'istanza VM client consumer tramite SSH e invia una richiesta all'istanza VM server consumer.

    gcloud compute ssh consumer-client-vm \
        --tunnel-through-iap \
        --zone=us-west1-b \
        --command="curl -m 3 -s http://consumer-server-vm:8000/connection_test || echo fail"
    

    Quando esegui il comando precedente, viene visualizzato il messaggio success. Indica che il traffico viene inviato dal client al server.

  2. Esegui questo comando per controllare i log dell'istanza VM del produttore.

    gcloud compute ssh producer-instance \
        --tunnel-through-iap \
        --zone=us-west1-b \
        --command="cat /var/log/syslog | grep 'NSI MIRRORING'"
    

    Viene visualizzato un messaggio simile a [NSI MIRRORING] IN=ens4 OUT= MAC=xx:xx:xx:xx:xx:xx:xx:xx:xx:xx:xx:xx:xx:xx SRC=10.10.0.1 DST=10.10.0.2 LEN=136 TOS=0x00 PREC=0x00 TTL=64 ID=0 DF PROTO=UDP SPT=45554 DPT=6081 LEN=116. Indica che il traffico client-server viene replicato dall'istanza VM producer.

Esegui la pulizia

Per evitare che al tuo account Google Cloud vengano addebitati costi relativi alle risorse utilizzate in questo tutorial, elimina il progetto che contiene le risorse oppure mantieni il progetto ed elimina le singole risorse.

Elimina le risorse consumer

  1. Dissocia la policy del firewall dalla rete consumer ed elimina la policy del firewall.

    Console

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

      Vai a Criteri firewall

    2. Fai clic sul criterio consumer-firewall-policy.

    3. Fai clic sulla scheda Associazioni.

    4. Seleziona la casella di controllo dell'associazione consumer-network.

    5. Fai clic su Rimuovi associazione.

    6. Fai clic su Rimuovi.

    7. Nella parte superiore della pagina, fai clic su Elimina.

    8. Fai di nuovo clic su Elimina per confermare.

    gcloud

    1. Rimuovi l'associazione.

      gcloud compute network-firewall-policies associations delete \
          --name=consumer-firewall-policy-assoc \
          --firewall-policy=consumer-firewall-policy \
          --global-firewall-policy
      
    2. Elimina la policy del firewall.

      gcloud compute network-firewall-policies delete consumer-firewall-policy \
          --global
      
  2. Elimina il gruppo di profili di sicurezza.

    Console

    1. Nella console Google Cloud , vai alla pagina Profili di sicurezza.

      Vai a Profili di sicurezza

    2. Nel selettore di progetti, seleziona la tua organizzazione.

    3. Nella scheda Gruppi di profili di sicurezza, seleziona il gruppo di profili di sicurezza consumer-security-profile-group e poi fai clic su Elimina.

    4. Fai di nuovo clic su Elimina per confermare.

    gcloud

    gcloud network-security security-profile-groups delete consumer-security-profile-group \
        --location=global \
        --organization=ORG_ID \
        --billing-project=PROJECT_ID \
        --quiet
    

    Sostituisci quanto segue:

    • ORG_ID: l'ID organizzazione
    • PROJECT_ID: il tuo ID progetto
  3. Elimina il profilo di sicurezza.

    Console

    1. Nella console Google Cloud , vai alla pagina Profili di sicurezza.

      Vai a Profili di sicurezza

    2. Nel selettore di progetti, seleziona la tua organizzazione.

    3. Nella scheda Profili di sicurezza, seleziona il profilo di sicurezza consumer-security-profile e poi fai clic su Elimina.

    4. Fai di nuovo clic su Elimina per confermare.

    gcloud

    gcloud network-security security-profiles custom-mirroring delete consumer-security-profile \
        --location=global \
        --organization=ORG_ID \
        --billing-project=PROJECT_ID \
        --quiet
    
  4. Elimina l'associazione del gruppo di endpoint di mirroring.

    Console

    1. Nella console Google Cloud , vai alla pagina Gruppi di endpoint.

      Vai a Gruppi di endpoint

    2. Fai clic su consumer-endpoint-group.

    3. Seleziona l'associazione consumer-network e fai clic su Elimina.

    4. Fai di nuovo clic su Elimina per confermare.

    gcloud

    gcloud network-security mirroring-endpoint-group-associations delete consumer-endpoint-group-association \
        --location=global \
        --no-async
    
  5. Elimina il gruppo di endpoint di mirroring.

    Console

    1. Nella console Google Cloud , vai alla pagina Gruppi di endpoint.

      Vai a Gruppi di endpoint

    2. Seleziona consumer-endpoint-group e fai clic su Elimina.

    3. Fai di nuovo clic su Elimina per confermare.

    gcloud

    gcloud network-security mirroring-endpoint-groups delete consumer-endpoint-group \
        --location=global \
        --no-async
    
  6. Elimina le VM server e client.

    Console

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

      Vai all'istanza VM

    2. Seleziona le caselle di controllo di consumer-client-vm e consumer-server-vm e fai clic su Elimina.

    3. Fai di nuovo clic su Elimina per confermare.

    gcloud

    1. Elimina la VM client.

      gcloud compute instances delete consumer-client-vm \
          --zone=us-west1-b \
          --quiet
      
    2. Elimina la VM server.

      gcloud compute instances delete consumer-server-vm \
          --zone=us-west1-b \
          --quiet
      
  7. Elimina la rete e la subnet consumer.

    Console

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

      Vai a Reti VPC

    2. Fai clic su consumer-network.

    3. Nella scheda Subnet, seleziona la casella di controllo di consumer-subnet e fai clic su Elimina.

    4. Fai di nuovo clic su Elimina per confermare.

    5. Fai clic su Elimina rete VPC.

    6. Nel campo di testo, inserisci consumer-network e fai clic su Elimina.

    gcloud

    1. Elimina la subnet.

      gcloud compute networks subnets delete consumer-subnet \
          --region=us-west1 \
          --quiet
      
    2. Elimina la rete VPC.

      gcloud compute networks delete consumer-network \
          --quiet
      

Elimina le risorse del produttore

  1. Dissocia la policy del firewall dalla rete del produttore ed elimina la policy del firewall.

    Console

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

      Vai a Criteri firewall

    2. Fai clic sul criterio producer-firewall-policy.

    3. Fai clic sulla scheda Associazioni.

    4. Seleziona la casella di controllo dell'associazione producer-network.

    5. Fai clic su Rimuovi associazione.

    6. Fai clic su Rimuovi.

    7. Fai clic su Elimina.

    8. Fai di nuovo clic su Elimina per confermare.

    gcloud

    1. Rimuovi l'associazione.

      gcloud compute network-firewall-policies associations delete \
          --name=producer-firewall-policy-assoc \
          --firewall-policy=producer-firewall-policy \
          --global-firewall-policy
      
    2. Elimina la policy del firewall.

      gcloud compute network-firewall-policies delete producer-firewall-policy \
          --global
      
  2. Elimina il deployment di mirroring e il gruppo di deployment di mirroring.

    Console

    1. Nella console Google Cloud , vai alla pagina Gruppi di deployment.

      Vai a Gruppi di deployment

    2. Fai clic su producer-deployment-group.

    3. Elimina producer-deployment.

      1. Seleziona la casella di controllo producer-deployment e fai clic su Elimina.
      2. Fai di nuovo clic su Elimina per confermare.
    4. Fai clic sul pulsante Elimina.

    5. Fai di nuovo clic su Elimina per confermare.

    gcloud

    1. Elimina il deployment di mirroring.

      gcloud network-security mirroring-deployments delete producer-deployment \
          --location=us-west1-b \
          --no-async
      
    2. Elimina il gruppo di deployment di mirroring.

      gcloud network-security mirroring-deployment-groups delete producer-deployment-group \
          --location=global \
          --no-async
      
  3. Elimina le risorse del bilanciatore del carico.

    Console

    1. Nella console Google Cloud , vai alla pagina Bilanciamento del carico.

      Vai a Bilanciamento del carico

    2. Seleziona la casella di controllo producer-ilb.

    3. Fai clic sul pulsante Elimina in alto nella pagina.

    4. Seleziona la casella di controllo producer-health-check e fai clic su Elimina il bilanciatore del carico e le risorse selezionate.

    gcloud

    1. Elimina la regola di forwarding.

      gcloud compute forwarding-rules delete producer-ilb-fr \
          --region=us-west1 \
          --quiet
      
    2. Rimuovi il servizio di backend.

      gcloud compute backend-services delete producer-backend-service \
          --region=us-west1 \
          --quiet
      
    3. Elimina il controllo di integrità.

      gcloud compute health-checks delete producer-health-check \
          --region=us-west1 \
          --quiet
      
  4. Elimina l'istanza VM del produttore.

    Console

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

      Vai a Istanze VM

    2. Seleziona la casella di controllo di producer-instance e fai clic su Elimina.

    3. Fai di nuovo clic su Elimina per confermare.

    gcloud

    gcloud compute instances delete producer-instance \
        --zone=us-west1-b \
        --quiet
    
  5. Elimina il gruppo di istanze.

    Console

    1. Nella console Google Cloud , vai alla pagina Gruppi di istanze.

      Vai a Gruppi di istanze

    2. Seleziona la casella di controllo producer-instance-group.

    3. Fai clic su Elimina.

    4. Nella finestra di conferma, fai clic su Delete (Elimina).

    gcloud

    gcloud compute instance-groups unmanaged delete producer-instance-group \
        --zone=us-west1-b \
        --quiet
    
  6. Elimina la rete e la subnet del producer.

    Console

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

      Vai a Reti VPC

    2. Fai clic su producer-network.

    3. Nella scheda Subnet, seleziona la casella di controllo di producer-subnet e fai clic su Elimina.

    4. Fai di nuovo clic su Elimina per confermare.

    5. Fai clic su Elimina rete VPC.

    6. Nel campo di testo, inserisci producer-network e fai clic su Elimina.

    gcloud

    1. Elimina la subnet.

      gcloud compute networks subnets delete producer-subnet \
          --region=us-west1 \
          --quiet
      
    2. Elimina la rete.

      gcloud compute networks delete producer-network \
          --quiet
      

Passaggi successivi