Network Security Integration utilizza il modello produttore-consumatore per ispezionare e monitorare i dati. Utilizza l'integrazione in banda con la tecnologia di intercettazione dei pacchetti per inserire dispositivi di rete di terze parti nel flusso di traffico di rete ed eseguire l'ispezione approfondita dei pacchetti.
Questo tutorial descrive come creare e configurare le risorse di produttore e consumer per configurare l'integrazione in banda.
Obiettivi
Questo tutorial mostra come completare le seguenti attività in un progetto:
- Crea reti VPC personalizzate con subnet per il producer e il consumer nello stesso progetto.
- Per il produttore, crea e configura le risorse del produttore, ad esempio un bilanciatore del carico di rete passthrough interno, un servizio di intercettazione e risorse di deployment di intercettazione.
- Per il consumer, crea e configura istanze di macchine virtuali (VM) client e server, risorse endpoint consumer e policy firewall per intercettare il traffico client-server.
- Testa la connessione e verifica che i pacchetti di traffico di rete vengano intercettati dalle risorse endpoint del consumer e ispezionati dalle risorse di intercettazione del produttore.
Prima di iniziare
- Accedi al tuo account Google Cloud . Se non conosci Google Cloud, crea un account per valutare le prestazioni dei nostri prodotti in scenari reali. I nuovi clienti ricevono anche 300 $di crediti senza costi per l'esecuzione, il test e il deployment dei workload.
-
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 theresourcemanager.projects.createpermission. Learn how to grant roles.
-
Verify that billing is enabled for your Google Cloud project.
-
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 theresourcemanager.projects.createpermission. Learn how to grant roles.
-
Verify that billing is enabled for your Google Cloud project.
- Abilita l'API Compute Engine per il tuo progetto.
- Abilita l'API Network Security nel progetto Google Cloud che vuoi utilizzare per la fatturazione.
- 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. - 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 initper inizializzare la directory gcloud CLI. Recupera l'ID del tuo progetto. Ti serve per creare risorse di intercettazione ed endpoint.
Se utilizzi gcloud CLI, puoi sostituire
PROJECT_IDqui o in un secondo momento nei rispettivi comandi.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_IDqui 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 un'istanza VM che esegue un server di echo Generic Network Virtualization Encapsulation (GENEVE).
- 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 intercettazione e un deployment di intercettazione.
Crea una rete VPC personalizzata
In questa sezione crei una rete VPC con una subnet.
Console
Nella console Google Cloud , vai alla pagina Reti VPC.
Fai clic su Crea rete VPC.
In Nome, inserisci
producer-network.In Descrizione, inserisci
Producer VPC network.Nella sezione Subnet, segui questi passaggi:
- In Modalità di creazione subnet, scegli Personalizzata.
- 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
- Nome:
- Fai clic su Fine.
Fai clic su Crea.
Apri Google Cloud CLI ed esegui il comando seguente per aumentare l'unità di trasmissione massima (MTU) della rete VPC.
gcloud compute networks update producer-network \ --mtu=1768Nel comando, specifichi l'MTU di 1768 byte, che è la somma dell'MTU predefinita di una rete VPC (1460 byte) e dell'overhead di incapsulamento GENEVE di Network Security Integration (308 byte).
gcloud
Crea una rete VPC.
gcloud compute networks create producer-network \ --subnet-mode=custom \ --mtu=1768 \ --description="Producer VPC network"Nel comando, specifichi l'unità massima di trasmissione (MTU) di 1768 byte, che è la somma dell'MTU predefinita di una rete VPC (1460 byte) e dell'overhead di incapsulamento GENEVE di Network Security Integration (308 byte).
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, crei un gruppo di istanze non gestito.
Console
Nella console Google Cloud , vai alla pagina Gruppi di istanze.
Fai clic su Crea gruppo di istanze.
Fai clic su Nuovo gruppo di istanze non gestite.
In Nome, inserisci
producer-instance-group.Nella sezione Località, seleziona
us-west1per Regione eus-west1-bper Zona.In Rete, seleziona
producer-network.In Subnet, seleziona
producer-subnet.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
Nella console Google Cloud , vai alla pagina Bilanciamento del carico.
- Fai clic su Crea bilanciatore del carico.
- In Tipo di bilanciatore del carico, seleziona Bilanciatore del carico di rete (TCP/UDP/SSL) e fai clic su Avanti.
- Per Proxy o passthrough, seleziona Bilanciatore del carico passthrough e fai clic su Avanti.
- In Pubblico o interno, seleziona Interno e fai clic su Avanti.
- 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
- Fai clic su Configurazione backend.
- In Protocollo, seleziona
UDP. - 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
- Nome:
- Nella sezione Nuovo backend di Backend, seleziona Tipo di stack IP come IPv4 (stack singolo).
- In Gruppo di istanze, seleziona il gruppo di istanze
producer-instance-groupe fai clic su Fine. - Verifica che sia presente un segno di spunta blu accanto a Configurazione backend prima di continuare.
Configura il frontend
Nella sezione Nuovi IP e porta frontend, segui questi passaggi:
- In Nome, inserisci
producer-ilb-fr. - In Subnet, seleziona
producer-subnet. - In Porte, seleziona Singola, quindi in Numero porta,
inserisci
6081. - Verifica che sia presente un segno di spunta blu accanto a Configurazione frontend prima di continuare.
Esamina la configurazione
- Fai clic su Esamina e finalizza.
- Rivedi le impostazioni di configurazione del bilanciatore del carico.
- Fai clic su Crea.
gcloud
Crea un controllo di integrità a livello di regione.
gcloud compute health-checks create tcp producer-health-check \ --region=us-west1 \ --port=80Crea 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=INTERNALCrea 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 \ --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 echo per i pacchetti incapsulati GENEVE.
Prima di creare l'istanza VM, recupera l'indirizzo IP della regola di forwarding e del gateway della subnet del bilanciatore del carico di rete passthrough interno. Devi disporre degli indirizzi IP per lo script di avvio.
Console
Ottieni l'indirizzo IP del bilanciatore del carico di rete passthrough interno
Nella console Google Cloud , vai alla pagina Bilanciamento del carico.
Fai clic sul bilanciatore del carico
producer-ilb.Nella sezione Frontend, prendi nota dell'indirizzo IP della regola di forwarding dalla colonna IP:porte.
Ottenere l'indirizzo IP del gateway della subnet
Nella console Google Cloud , vai alla pagina Reti VPC.
Fai clic sulla rete VPC
producer-network.Fai clic sulla scheda Subnet.
Nella sezione Subnet, prendi nota dell'indirizzo IP del gateway dalla colonna Gateway.
Crea l'istanza VM
Nella console Google Cloud , vai alla pagina Istanze VM.
- Fai clic su Crea istanza.
- In Nome, inserisci
producer-instance. - In Regione, seleziona
us-west1. - In Zona, seleziona
us-west1-b. Fai clic su Networking e configura i seguenti campi:
Nella sezione Interfacce di rete, fai clic su
defaulte modifica l'interfaccia di rete.- Rete:
producer-network - Subnet:
producer-subnet - Indirizzo IPv4 esterno: Nessuno
- Rete:
Fai clic su Avanzate e inserisci il seguente script in Script di avvio:
#!/bin/bash # Enable IP forwarding. echo 1 > /proc/sys/net/ipv4/ip_forward # Log incoming packets from the gateway IP and the GENEVE 6081 # port. iptables -t nat -A PREROUTING -p udp -s GATEWAY_IP/32 --dport 6081 -j LOG --log-prefix="[NSI INTERCEPT] " # Apply DNAT (Destination NAT) on incoming packets from the gateway IP # and the GENEVE 6081 port. # Set the destination IP to the gateway IP so the packet is rerouted # back to the sender. iptables -t nat -A PREROUTING -p udp -s GATEWAY_IP/32 --dport 6081 -j DNAT --to-destination GATEWAY_IP # Apply SNAT (Source NAT) on outgoing packets that have the GENEVE 6081 # port and source IP that equals the gateway IP. # Set the source IP to the internal load balancer IP which # effectively swaps the IPs of the original packet. iptables -t nat -A POSTROUTING -p udp -s GATEWAY_IP/32 --dport 6081 -j SNAT --to-source LOAD_BALANCER_IP # Spin up a simple server for health checks on port 80. nohup python3 -u -m http.server 80 &
Sostituisci quanto segue:
GATEWAY_IP: l'indirizzo IP del gateway della subnet.LOAD_BALANCER_IP: l'indirizzo IP della regola di forwarding del bilanciatore del carico.
Fai clic su Crea.
Aggiungi l'istanza VM al gruppo di istanze
Nella console Google Cloud , vai alla pagina Gruppi di istanze.
Fai clic su
producer-instance-group.Fai clic su Modifica.
Nella sezione Istanze VM, seleziona la VM
producer-instancedall'elenco Seleziona VM.Fai clic su Salva.
gcloud
Ottieni l'indirizzo IP della regola di forwarding del bilanciatore del carico.
ILB_IP=$(gcloud compute forwarding-rules describe producer-ilb-fr \ --region=us-west1 \ --format="get(IPAddress)")Ottieni l'indirizzo IP del gateway della subnet.
GW_IP=$(gcloud compute networks subnets describe producer-subnet \ --region=us-west1 \ --format="get(gatewayAddress)")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 # Enable IP forwarding. echo 1 > /proc/sys/net/ipv4/ip_forward # Log incoming packets from the gateway IP and the GENEVE 6081 port. iptables -t nat -A PREROUTING -p udp -s '"$GW_IP"'/32 --dport 6081 -j LOG --log-prefix="[NSI INTERCEPT] " # Apply DNAT (Destination NAT) on incoming packets from the gateway # IP and the GENEVE 6081 port. # Set the destination IP to the gateway IP so the packet is rerouted # back to the sender. iptables -t nat -A PREROUTING -p udp -s '"$GW_IP"'/32 --dport 6081 -j DNAT --to-destination '"$GW_IP"' # Apply SNAT (Source NAT) on outgoing packets that have the GENEVE # 6081 port and source IP that equals the gateway IP. # Set the source IP to the internal load balancer IP which # effectively swaps the IPs of the original packet. iptables -t nat -A POSTROUTING -p udp -s '"$GW_IP"'/32 --dport 6081 -j SNAT --to-source '"$ILB_IP"' # Spin up a simple server for health checks on port 80. nohup python3 -u -m http.server 80 &'Aggiungi l'istanza VM al gruppo di istanze.
gcloud compute instance-groups unmanaged add-instances producer-instance-group \ --instances=producer-instance \ --zone=us-west1-bAggiungi 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 del firewall e aggiungi regole firewall
In questa sezione, crei una policy del firewall e aggiungi regole firewall per consentire connessioni UDP, Google Cloud controlli di integrità e connessioni SSH all'istanza VM producer tramite Identity-Aware Proxy (IAP).
Console
Nella console Google Cloud , vai alla pagina Policy del firewall.
Fai clic su Crea criterio firewall.
Nel campo Nome, inserisci
producer-firewall-policy.In Ambito di deployment, seleziona Globale e fai clic su Continua.
Crea le seguenti regole per la tua policy.
Consenti la connessione UDP con la porta GENEVE dall'indirizzo IP del gateway VPC
- 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 specifica
6081in Porte.
- Priorità:
- Fai clic su Crea.
Sostituisci
GATEWAY_IPcon l'indirizzo IP del gateway della subnet.Consenti i Google Cloud controlli di integrità
- 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/16e130.211.0.0/22 - Protocollo e porte: seleziona Protocollo e porte specificati, seleziona la casella di controllo TCP e specifica
80in Porte.
- Priorità:
- Fai clic su Crea.
Consenti la connessione SSH all'istanza VM del produttore tramite Identity-Aware Proxy
- 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 specifica
22in Porte.
- Priorità:
- Fai clic su Crea.
- Fai clic su Crea regola firewall e configura i seguenti
campi:
Per associare il criterio a un'emittente, fai clic su Continua, poi su Associa.
Seleziona la casella di controllo
producer-network.Fai clic su Continua.
Fai clic su Crea.
gcloud
Crea una policy del firewall di rete globale.
gcloud compute network-firewall-policies create producer-firewall-policy \ --globalAssocia la policy del 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-networkCrea 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/32Crea 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/22Crea 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
Crea risorse di intercettazione del produttore
In questa sezione, crei un gruppo di deployment di intercettazione e un deployment di intercettazione.
Console
Nella console Google Cloud , vai alla pagina Gruppi di deployment.
Fai clic su Crea gruppo di deployment.
In Nome, inserisci
producer-deployment-group.In Rete, seleziona
producer-network.Per Scopo, seleziona NSI in banda.
Nella sezione Intercetta deployment, fai clic su Crea deployment di intercettazione, specifica i seguenti campi e fai clic su Crea:
- Nome:
producer-deployment - Regione:
us-west1. - Zona:
us-west1-b. - Bilanciatore del carico interno:
producer-ilb.
- Nome:
Fai clic su Crea.
gcloud
Crea un gruppo di deployment di intercettazione.
gcloud network-security intercept-deployment-groups create producer-deployment-group \ --location=global \ --network=projects/PROJECT_ID/global/networks/producer-network \ --no-asyncSostituisci
PROJECT_IDcon l'ID del tuo progetto.Crea un deployment di intercettazione.
gcloud network-security intercept-deployments create producer-deployment \ --location=us-west1-b \ --forwarding-rule=producer-ilb-fr \ --forwarding-rule-location=us-west1 \ --intercept-deployment-group=projects/PROJECT_ID/locations/global/interceptDeploymentGroups/producer-deployment-group \ --no-asyncSostituisci
PROJECT_IDcon l'ID del tuo progetto.
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.
- Una policy del firewall e una regola per intercettare il traffico.
- Un gruppo di endpoint di intercettazione e un'associazione del gruppo di endpoint di intercettazione.
- 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
Nella console Google Cloud , vai alla pagina Reti VPC.
Fai clic su Crea rete VPC.
In Nome, inserisci
consumer-network.In Descrizione, inserisci
Consumer VPC network.Nella sezione Subnet, segui questi passaggi:
- Imposta Modalità di creazione subnet su Personalizzata.
- Nella sezione Nuova subnet, inserisci le seguenti informazioni:
- Nome:
consumer-subnet - Regione:
us-west1 - Tipo di stack IP: IPv4 (stack singolo)
- Intervallo IPv4:
10.10.0.0/16
- Nome:
- Fai clic su Fine.
Fai clic su Crea.
gcloud
Crea una rete VPC consumer.
gcloud compute networks create consumer-network \ --subnet-mode=custom \ --description="Consumer VPC network"Nella rete VPC, crea una subnet.
gcloud compute networks subnets create consumer-subnet \ --network=consumer-network \ --region=us-west1 \ --range=10.10.0.0/16
Crea VM server e client
In questa sezione, crei una VM server e una VM client.
Console
Crea una VM server
Nella console Google Cloud , vai alla pagina Istanze VM.
Fai clic su Crea istanza.
Imposta Nome su
consumer-server-vm.Imposta Regione su
us-west1.Imposta Zona su
us-west1-b.Imposta Tipo di macchina su e2-micro.
Fai clic su Networking e configura i seguenti campi:
Nella sezione Interfacce di rete, fai clic su
defaulte modifica l'interfaccia di rete:- Rete:
consumer-network - Subnet:
consumer-subnet - Indirizzo IPv4 esterno: Nessuno
- Rete:
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
Fai clic su Crea.
Crea una VM client
Nella console Google Cloud , vai alla pagina Istanze VM.
Fai clic su Crea istanza.
Imposta Nome su
consumer-client-vm.Imposta Regione su
us-west1.Imposta Zona su
us-west1-b.Imposta Tipo di macchina su e2-micro.
Fai clic su Networking e configura i seguenti campi:
Nella sezione Interfacce di rete, fai clic su
defaulte modifica l'interfaccia di rete:- Rete:
consumer-network - Subnet:
consumer-subnet - Indirizzo IPv4 esterno: Nessuno
- Rete:
Fai clic su Crea.
gcloud
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"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 del firewall per consentire l'accesso SSH
In questa sezione, crei una policy del firewall e aggiungi una regola firewall per consentire l'accesso SSH alle VM consumer.
Console
Nella console Google Cloud , vai alla pagina Policy del firewall.
Fai clic su Crea criterio firewall.
Nel campo Nome, inserisci
consumer-firewall-policy.In Ambito di deployment, seleziona Globale e fai clic su Continua.
Fai clic su Crea regola firewall, configura i seguenti campi e fai clic su Crea:
- Priorità:
100 - 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 specifica
22in Porte.
L'intervallo IPv4
35.235.240.0/20contiene 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.- Priorità:
Per associare il criterio a un'emittente, fai clic su Continua, poi su Associa.
Seleziona la casella di controllo
consumer-network.Fai clic su Continua.
Fai clic su Crea.
gcloud
Crea una policy del firewall di rete globale.
gcloud compute network-firewall-policies create consumer-firewall-policy \ --globalAssocia la policy del 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-networkCrea 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/20L'intervallo IPv4
35.235.240.0/20contiene tutti gli indirizzi IP che Identity-Aware Proxy (IAP) utilizza per l'inoltro TCP. Per saperne di più, consulta Preparare il progetto per l'inoltro TCP.
Crea gruppo di endpoint consumer
In questa sezione, crea un gruppo di endpoint di intercettazione e un'associazione di gruppi di endpoint di intercettazione.
Console
Nella console Google Cloud , vai alla pagina Gruppi di endpoint.
Fai clic su Crea gruppo di endpoint.
In Nome, inserisci
consumer-endpoint-group.Per Gruppo di deployment, seleziona Seleziona progetto attuale dal menu Seleziona progetto.
Per Intercept deployment group (Gruppo di deployment di intercettazione), seleziona
producer-deployment-group.Fai clic su Continua.
Fai clic su Aggiungi associazione di gruppo di endpoint.
Per Progetto, seleziona il progetto corrente.
In Rete, seleziona
consumer-network.Fai clic su Crea.
gcloud
Crea il gruppo di endpoint di intercettazione.
gcloud network-security intercept-endpoint-groups create consumer-endpoint-group \ --location=global \ --intercept-deployment-group=projects/PROJECT_ID/locations/global/interceptDeploymentGroups/producer-deployment-group \ --no-asyncSostituisci
PROJECT_IDcon l'ID del tuo progetto.Crea l'associazione del gruppo di endpoint di intercettazione.
gcloud network-security intercept-endpoint-group-associations create consumer-endpoint-group-association \ --location=global \ --intercept-endpoint-group=projects/PROJECT_ID/locations/global/interceptEndpointGroups/consumer-endpoint-group \ --network=consumer-network \ --no-asyncSostituisci
PROJECT_IDcon l'ID del tuo progetto.
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 intercettare il traffico.
Console
Creare un profilo di sicurezza
Nella console Google Cloud , vai alla pagina Profili di sicurezza.
Nel selettore di progetti, seleziona la tua organizzazione.
Nella scheda Profili di sicurezza, fai clic su Crea profilo.
In Nome, inserisci
consumer-security-profile.In Scopo del profilo di sicurezza, seleziona NSI in banda.
Per Progetto, seleziona il progetto corrente.
Per Gruppo di endpoint di intercettazione, seleziona
consumer-endpoint-group.Fai clic su Crea.
Creare un gruppo di profili di sicurezza
Nella console Google Cloud , vai alla pagina Gruppi di profili di sicurezza.
Nel selettore di progetti, seleziona la tua organizzazione.
Nella scheda Gruppi di profili di sicurezza, fai clic su Crea gruppo di profili.
In Nome, inserisci
consumer-security-profile-group.In Scopo del gruppo di profili di sicurezza, seleziona NSI in banda.
In Profilo di intercettazione personalizzato, seleziona
consumer-security-profile.Fai clic su Crea.
gcloud
Crea un profilo di sicurezza di intercettazione.
gcloud network-security security-profiles custom-intercept create consumer-security-profile \ --location=global \ --organization=ORG_ID \ --intercept-endpoint-group=projects/PROJECT_ID/locations/global/interceptEndpointGroups/consumer-endpoint-group \ --no-asyncSostituisci 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.
Crea un gruppo di profili di sicurezza di intercettazione.
gcloud network-security security-profile-groups create consumer-security-profile-group \ --location=global \ --organization=ORG_ID \ --custom-intercept-profile=consumer-security-profile \ --billing-project=PROJECT_ID \ --no-asyncSostituisci 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 policy del firewall per intercettare il traffico
In questa sezione, crei una policy del firewall e una regola firewall per intercettare il traffico.
Console
Nella console Google Cloud , vai alla pagina Policy del firewall.
Fai clic su
consumer-firewall-policy.Fai clic su Crea regola firewall e configura i seguenti campi:
- Priorità:
100 - Direzione del traffico: in entrata
- Azione in caso di corrispondenza: Procedi all'ispezione L7
- Scopo: NSI in-band
- Gruppo di profili di sicurezza:
consumer-security-profile-group - Intervalli IP:
10.10.0.0/16 - Protocollo e porte: seleziona Protocollo e porte specificati, seleziona la casella di controllo TCP e specifica
8000in Porte.
- Priorità:
Fai clic su Crea.
gcloud
Aggiungi una regola firewall per intercettare il traffico sulla porta TCP 8000 sulla VM server.
gcloud compute network-firewall-policies rules create 100 \ --firewall-policy=consumer-firewall-policy \ --global-firewall-policy \ --action=apply_security_profile_group \ --security-profile-group=organizations/ORG_ID/locations/global/securityProfileGroups/consumer-security-profile-group \ --direction=INGRESS \ --layer4-configs=tcp:8000 \ --src-ip-ranges=10.10.0.0/16Sostituisci
ORG_IDcon 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 l'intercettazione.
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.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 INTERCEPT'"Viene visualizzato un messaggio simile a
[NSI INTERCEPT] 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 intercettato 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
Dissocia la policy del firewall dalla rete consumer ed elimina la policy del firewall.
Console
Nella console Google Cloud , vai alla pagina Policy firewall.
Fai clic sul criterio
consumer-firewall-policy.Fai clic sulla scheda Associazioni.
Seleziona la casella di controllo dell'associazione
consumer-network.Fai clic su Rimuovi associazione.
Fai clic su Rimuovi.
Nella parte superiore della pagina, fai clic su Elimina.
Fai di nuovo clic su Elimina per confermare.
gcloud
Rimuovi l'associazione.
gcloud compute network-firewall-policies associations delete \ --name=consumer-firewall-policy-assoc \ --firewall-policy=consumer-firewall-policy \ --global-firewall-policyElimina la policy del firewall.
gcloud compute network-firewall-policies delete consumer-firewall-policy \ --global
Elimina il gruppo di profili di sicurezza.
Console
Nella console Google Cloud , vai alla pagina Profili di sicurezza.
Nel selettore di progetti, seleziona la tua organizzazione.
Nella scheda Gruppi di profili di sicurezza, seleziona il gruppo di profili di sicurezza
consumer-security-profile-group, quindi fai clic su Elimina.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 \ --quietSostituisci quanto segue:
ORG_ID: l'ID della tua organizzazionePROJECT_ID: l'ID del progetto
Elimina il profilo di sicurezza.
Console
Nella console Google Cloud , vai alla pagina Profili di sicurezza.
Nel selettore di progetti, seleziona la tua organizzazione.
Nella scheda Profili di sicurezza, seleziona il profilo di sicurezza
consumer-security-profilee poi fai clic su Elimina.Fai di nuovo clic su Elimina per confermare.
gcloud
gcloud network-security security-profiles custom-intercept delete consumer-security-profile \ --location=global \ --organization=ORG_ID \ --billing-project=PROJECT_ID \ --quietSostituisci quanto segue:
ORG_ID: l'ID della tua organizzazionePROJECT_ID: l'ID del progetto
Elimina l'associazione del gruppo di endpoint di intercettazione.
Console
Nella console Google Cloud , vai alla pagina Gruppi di endpoint.
Fai clic su
consumer-endpoint-group.Seleziona l'associazione
consumer-networke fai clic su Elimina.Fai di nuovo clic su Elimina per confermare.
gcloud
gcloud network-security intercept-endpoint-group-associations delete consumer-endpoint-group-association \ --location=global \ --no-asyncElimina il gruppo di endpoint di intercettazione.
Console
Nella console Google Cloud , vai alla pagina Gruppi di endpoint.
Seleziona
consumer-endpoint-groupe fai clic su Elimina.Fai di nuovo clic su Elimina per confermare.
gcloud
gcloud network-security intercept-endpoint-groups delete consumer-endpoint-group \ --location=global \ --no-asyncElimina le VM server e client.
Console
Nella console Google Cloud , vai alla pagina Istanze VM.
Seleziona le caselle di controllo di
consumer-client-vmeconsumer-server-vme fai clic su Elimina.Fai di nuovo clic su Elimina per confermare.
gcloud
Elimina la VM client.
gcloud compute instances delete consumer-client-vm \ --zone=us-west1-b \ --quietElimina la VM server.
gcloud compute instances delete consumer-server-vm \ --zone=us-west1-b \ --quiet
Elimina la rete e la subnet consumer.
Console
Nella console Google Cloud , vai alla pagina Reti VPC.
Fai clic su
consumer-network.Nella scheda Subnet, seleziona la casella di controllo di
consumer-subnete fai clic su Elimina.Fai di nuovo clic su Elimina per confermare.
Fai clic su Elimina rete VPC.
Nel campo di testo, inserisci
consumer-networke fai clic su Elimina.
gcloud
Elimina la subnet.
gcloud compute networks subnets delete consumer-subnet \ --region=us-west1 \ --quietElimina la rete VPC.
gcloud compute networks delete consumer-network \ --quiet
Elimina le risorse del produttore
Dissocia la policy del firewall dalla rete del produttore ed elimina la policy del firewall.
Console
Nella console Google Cloud , vai alla pagina Policy firewall.
Fai clic sul criterio
producer-firewall-policy.Fai clic sulla scheda Associazioni.
Seleziona la casella di controllo dell'associazione
producer-network.Fai clic su Rimuovi associazione.
Fai clic su Rimuovi.
Nella parte superiore della pagina, fai clic su Elimina.
Fai di nuovo clic su Elimina per confermare.
gcloud
Rimuovi l'associazione.
gcloud compute network-firewall-policies associations delete \ --name=producer-firewall-policy-assoc \ --firewall-policy=producer-firewall-policy \ --global-firewall-policyElimina la policy del firewall.
gcloud compute network-firewall-policies delete producer-firewall-policy \ --global
Elimina il deployment di intercettazione e il gruppo di deployment di intercettazione.
Console
Nella console Google Cloud , vai alla pagina Gruppi di deployment.
Fai clic su
producer-deployment-group.Elimina
producer-deployment.- Seleziona la casella di controllo
producer-deploymente fai clic su Elimina. - Fai di nuovo clic su Elimina per confermare.
- Seleziona la casella di controllo
Fai clic sul pulsante Elimina in alto nella pagina.
Fai di nuovo clic su Elimina per confermare.
gcloud
Elimina il deployment di intercettazione.
gcloud network-security intercept-deployments delete producer-deployment \ --location=us-west1-b \ --no-asyncElimina il gruppo di deployment di intercettazione.
gcloud network-security intercept-deployment-groups delete producer-deployment-group \ --location=global \ --no-async
Elimina le risorse del bilanciatore del carico.
Console
Nella console Google Cloud , vai alla pagina Bilanciamento del carico.
Seleziona la casella di controllo
producer-ilb.Fai clic sul pulsante Elimina in alto nella pagina.
Seleziona la casella di controllo
producer-health-checke fai clic su Elimina il bilanciatore del carico e le risorse selezionate.
gcloud
Elimina la regola di forwarding.
gcloud compute forwarding-rules delete producer-ilb-fr \ --region=us-west1 \ --quietRimuovi il servizio di backend.
gcloud compute backend-services delete producer-backend-service \ --region=us-west1 \ --quietElimina il controllo di integrità.
gcloud compute health-checks delete producer-health-check \ --region=us-west1 \ --quiet
Elimina l'istanza VM del produttore.
Console
Nella console Google Cloud , vai alla pagina Istanze VM.
Seleziona la casella di controllo di
producer-instancee fai clic su Elimina.Fai di nuovo clic su Elimina per confermare.
gcloud
gcloud compute instances delete producer-instance \ --zone=us-west1-b \ --quietElimina il gruppo di istanze.
Console
Nella console Google Cloud , vai alla pagina Gruppi di istanze.
Seleziona la casella di controllo
producer-instance-group.Fai clic su Elimina.
Nella finestra di conferma, fai clic su Delete (Elimina).
gcloud
gcloud compute instance-groups unmanaged delete producer-instance-group \ --zone=us-west1-b \ --quietElimina la rete e la subnet del producer.
Console
Nella console Google Cloud , vai alla pagina Reti VPC.
Fai clic su
producer-network.Nella scheda Subnet, seleziona la casella di controllo di
producer-subnete fai clic su Elimina.Fai di nuovo clic su Elimina per confermare.
Fai clic su Elimina rete VPC.
Nel campo di testo, inserisci
producer-networke fai clic su Elimina.
gcloud
Elimina la subnet.
gcloud compute networks subnets delete producer-subnet \ --region=us-west1 \ --quietElimina la rete.
gcloud compute networks delete producer-network \ --quiet
Passaggi successivi
- Panoramica dei gruppi di deployment di intercettazione
- Panoramica dei deployment di intercettazione
- Panoramica dei gruppi di endpoint di intercettazione e delle associazioni
- Panoramica dei profili di sicurezza
- Panoramica dei gruppi di profili di sicurezza
- Esplora architetture, diagrammi e best practice di riferimento su Google Cloud. Consulta il nostro Cloud Architecture Center.