La integración de la seguridad de redes usa el modelo de productor-consumidor para inspeccionar y supervisar los datos. Utiliza la integración en banda con tecnología de interceptación de paquetes para insertar dispositivos de red de terceros en el flujo de tráfico de red y realizar una inspección profunda de paquetes.
En este instructivo, se describe cómo crear y configurar recursos de productor y consumidor para configurar la integración dentro de la banda.
Objetivos
En este instructivo, se muestra cómo completar las siguientes tareas en un proyecto:
- Crea redes de VPC personalizadas con subredes para el productor y el consumidor en el mismo proyecto.
- En el caso del productor, crea y configura recursos del productor, como un balanceador de cargas de red de transferencia interno, un servicio de intercepción y recursos de implementación de intercepción.
- Para el consumidor, crea y configura instancias de máquina virtual (VM) de cliente y servidor, recursos de extremos del consumidor y políticas de firewall para interceptar el tráfico cliente-servidor.
- Prueba la conexión y verifica que los paquetes de tráfico de red sean interceptados por los recursos de extremo del consumidor y que los recursos de interceptación del productor los inspeccionen.
Antes de comenzar
- Accede a tu cuenta de Google Cloud . Si eres nuevo en Google Cloud, crea una cuenta para evaluar el rendimiento de nuestros productos en situaciones reales. Los clientes nuevos también obtienen $300 en créditos gratuitos para ejecutar, probar y, además, implementar cargas de trabajo.
-
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.
- Habilita la API de Compute Engine para tu proyecto.
- Habilita la API de Network Security en el proyecto Google Cloud que deseas usar para la facturación.
- Asegúrate de tener el
rol de administrador
de red de Compute
(
roles/compute.networkAdmin) otorgado a nivel del proyecto y el rol de administrador de perfiles de seguridad (roles/networksecurity.securityProfileAdmin) otorgado a nivel de la organización. - Si prefieres trabajar desde la línea de comandos, instala Google Cloud CLI. Para obtener información conceptual y de instalación sobre la herramienta, consulta Descripción general de gcloud CLI.
Nota: Si no ejecutaste Google Cloud CLI antes, primero ejecuta
gcloud initpara inicializar el directorio de gcloud CLI. Obtén el ID de tu proyecto. Lo necesitas para crear recursos de interceptación y de extremo.
Si usas gcloud CLI, puedes reemplazar
PROJECT_IDaquí o más adelante en los comandos respectivos.Obtén el ID de tu organización. Lo necesitas para crear recursos a nivel de la organización, como perfiles de seguridad y grupos de perfiles de seguridad.
Si usas gcloud CLI, puedes reemplazar
ORG_IDaquí o más adelante en los comandos respectivos.
Crea recursos de productores
En esta sección, crearás los siguientes recursos para el productor:
- Una red de VPC personalizada con una subred
- Un grupo de instancias no administrado con una instancia de VM que ejecuta un servidor de eco de encapsulación de virtualización de red genérica (GENEVE).
- Un balanceador de cargas de red de transferencia interno con un servicio de backend y una regla de reenvío.
- Una regla de firewall para permitir las Google Cloud verificaciones de estado.
- Un grupo de implementación de intercepción y una implementación de intercepción
Crea una red de VPC personalizada
En esta sección, crearás una red de VPC con una subred.
Console
En la consola de Google Cloud , ve a la página Redes de VPC.
Haz clic en Crear red de VPC.
En Nombre, ingresa
producer-network.En Descripción, ingresa
Producer VPC network.En la sección Subredes, haz lo siguiente:
- En Modo de creación de subredes, selecciona Custom.
- En la sección Nueva subred, ingresa la siguiente información:
- Nombre:
producer-subnet - Región:
us-west1 - Tipo de pila IP: IPv4 (pila única)
- Rango IPv4:
10.10.0.0/16
- Nombre:
- Haz clic en Listo.
Haz clic en Crear.
Abre Google Cloud CLI y ejecuta el siguiente comando para aumentar la unidad de transmisión máxima (MTU) de la red de VPC.
gcloud compute networks update producer-network \ --mtu=1768En el comando, especificas una MTU de 1,768 bytes, que es la suma de la MTU predeterminada de una red de VPC (1,460 bytes) y la sobrecarga de encapsulación GENEVE de la integración de seguridad de redes (308 bytes).
gcloud
Crear una red de VPC.
gcloud compute networks create producer-network \ --subnet-mode=custom \ --mtu=1768 \ --description="Producer VPC network"En el comando, especificas una unidad de transmisión máxima (MTU) de 1,768 bytes, que es la suma de la MTU predeterminada de una red de VPC (1,460 bytes) y la sobrecarga de encapsulamiento de GENEVE de la integración de seguridad de redes (308 bytes).
En la red de VPC, crea una subred.
gcloud compute networks subnets create producer-subnet \ --network=producer-network \ --region=us-west1 \ --range=10.10.0.0/16
Crea un grupo de instancias no administrado
En esta sección, crearás un grupo de instancias no administrado.
Console
En la consola de Google Cloud , ve a la página Grupos de instancias.
Haz clic en Crear grupo de instancias.
Haz clic en Crear un nuevo grupo de instancias no administrado.
En Nombre, ingresa
producer-instance-group.En la sección Ubicación, selecciona
us-west1para Región yus-west1-bpara Zona.En Red, selecciona
producer-network.En Subred, selecciona
producer-subnet.Haz clic en Crear.
gcloud
gcloud compute instance-groups unmanaged create producer-instance-group \
--zone=us-west1-b
Configura los componentes del balanceador de cargas
En esta sección, crearás los componentes de un balanceador de cargas de red de transferencia interno, incluidos un servicio de backend y una regla de reenvío.
Console
Inicia tu configuración
En la consola de Google Cloud , ve a la página Balanceo de cargas.
- Haz clic en Crear balanceador de cargas.
- En Tipo de balanceador de cargas, selecciona Balanceador de cargas de red (TCP/UDP/SSL) y haz clic en Siguiente.
- En Proxy o de transferencia, selecciona Balanceador de cargas de transferencia y haz clic en Siguiente.
- En Orientado al público o interno, selecciona Interno y haz clic en Siguiente.
- Haz clic en Configurar.
Configuración básica
En la página Crear un balanceador de cargas de red de transferencia interna, ingresa la siguiente información:
- Nombre del balanceador de cargas:
producer-ilb - Región:
us-west1 - Red:
producer-network
Configura los backends
- Haz clic en Configuración de backend.
- En Protocolo, selecciona
UDP. - En la lista Verificación de estado, selecciona Crear una verificación de estado, ingresa la siguiente información y haz clic en Crear.
- Nombre:
producer-health-check. - Permiso: Regional
- Puerto:
80 - Protocolo de proxy:
NONE
- Nombre:
- En la sección Backend nuevo de Backends, selecciona el Tipo de pila de IP como IPv4 (pila única).
- En Grupo de instancias, selecciona el grupo de instancias
producer-instance-groupy haz clic en Listo. - Verifica que haya una marca de verificación azul junto a Configuración de backend antes de continuar.
Configura el frontend
En la sección IP y puerto de frontend nuevos, haz lo siguiente:
- En Nombre, ingresa
producer-ilb-fr. - En Subred, selecciona
producer-subnet. - En Puertos, selecciona Único y, luego, en Número de puerto, ingresa
6081. - Verifica que haya una marca de verificación azul junto a Configuración de frontend antes de continuar.
Revisa la configuración
- Haz clic en Revisar y finalizar.
- Revisa la configuración del balanceador de cargas.
- Haz clic en Crear.
gcloud
Creación de una verificación de estado regional.
gcloud compute health-checks create tcp producer-health-check \ --region=us-west1 \ --port=80Crea el servicio de 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 regla de reenvío para el servicio de 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 una instancia de VM y agrégala al grupo de instancias
En esta sección, crearás una instancia de VM con una secuencia de comandos de inicio que configura un servidor de eco para los paquetes encapsulados de GENEVE.
Antes de crear la instancia de VM, obtén la dirección IP de la regla de reenvío y la puerta de enlace de la subred del balanceador de cargas de red de transferencia interno. Necesitas las direcciones IP para la secuencia de comandos de inicio.
Console
Obtén la dirección IP del balanceador de cargas de red de transferencia interno
En la consola de Google Cloud , ve a la página Balanceo de cargas.
Haz clic en el balanceador de cargas
producer-ilb.En la sección Frontend, anota la dirección IP de la regla de reenvío de la columna IP:ports.
Obtén la dirección IP de la puerta de enlace de la subred
En la consola de Google Cloud , ve a la página Redes de VPC.
Haz clic en la red de VPC
producer-network.Haz clic en la pestaña Subredes.
En la sección Subredes, anota la dirección IP de la puerta de enlace de la columna Puerta de enlace.
Crea la instancia de VM
En la consola de Google Cloud , ve a la página Instancias de VM.
- Haz clic en Crear instancia.
- En Nombre, ingresa
producer-instance. - En Región, selecciona
us-west1. - En Zona, selecciona
us-west1-b. Haz clic en Herramientas de redes y configura los siguientes campos:
En la sección Interfaces de red, haz clic en
defaulty edita la interfaz de red.- Red:
producer-network - Subred:
producer-subnet - Dirección IPv4 externa: ninguna
- Red:
Haz clic en Avanzado y, luego, ingresa la siguiente secuencia de comandos en Secuencia de comandos de inicio:
#!/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 &
Reemplaza lo siguiente:
GATEWAY_IP: Es la dirección IP de la puerta de enlace de la subred.LOAD_BALANCER_IP: Es la dirección IP de la regla de reenvío del balanceador de cargas.
Haz clic en Crear.
Agrega la instancia de VM al grupo de instancias
En la consola de Google Cloud , ve a la página Grupos de instancias.
Haz clic en
producer-instance-group.Haz clic en Editar.
En la sección Instancias de VM, en la lista Seleccionar VMs, selecciona la VM
producer-instance.Haz clic en Guardar.
gcloud
Obtén la dirección IP de la regla de reenvío del balanceador de cargas.
ILB_IP=$(gcloud compute forwarding-rules describe producer-ilb-fr \ --region=us-west1 \ --format="get(IPAddress)")Obtén la dirección IP de la puerta de enlace de la subred.
GW_IP=$(gcloud compute networks subnets describe producer-subnet \ --region=us-west1 \ --format="get(gatewayAddress)")Cree una instancia de 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 &'Agrega la instancia de VM al grupo de instancias.
gcloud compute instance-groups unmanaged add-instances producer-instance-group \ --instances=producer-instance \ --zone=us-west1-bAgrega el grupo de instancias al servicio de 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 política de firewall y agrega reglas de firewall
En esta sección, crearás una política de firewall y agregarás reglas de firewall para permitir conexiones UDP, Google Cloud verificaciones de estado y conexiones SSH a la instancia de VM del productor a través de Identity-Aware Proxy (IAP).
Console
En la consola de Google Cloud , ve a la página Políticas de firewall.
Haz clic en Crear política de firewall.
En el campo Nombre, ingresa
producer-firewall-policy.En Permiso de la implementación, selecciona Global y haz clic en Continuar.
Crea las siguientes reglas para tu política.
Permite la conexión UDP con el puerto GENEVE desde la dirección IP de la puerta de enlace de la VPC
- Haz clic en Crear regla de firewall y configura los siguientes campos:
- Prioridad:
100 - Dirección del tráfico: Entrada
- Acción en caso de coincidencia: Permitir
- Filtros de origen > Rangos de IP:
GATEWAY_IP - Protocolos y puertos: Selecciona Protocolos y puertos especificados, elige la casilla de verificación UDP y especifica
6081en Puertos.
- Prioridad:
- Haz clic en Crear.
Reemplaza
GATEWAY_IPpor la dirección IP de la puerta de enlace de la subred.Permitir Google Cloud verificaciones de estado
- Haz clic en Crear regla de firewall y configura los siguientes campos:
- Prioridad:
101 - Dirección del tráfico: Entrada
- Acción en caso de coincidencia: Permitir
- Rangos de IP:
35.191.0.0/16y130.211.0.0/22 - Protocolos y puertos: Selecciona Protocolos y puertos especificados, elige la casilla de verificación TCP y especifica
80en Puertos.
- Prioridad:
- Haz clic en Crear.
Permite la conexión SSH a la instancia de VM del productor a través de Identity-Aware Proxy
- Haz clic en Crear regla de firewall y configura los siguientes campos:
- Prioridad:
102 - Dirección del tráfico: Entrada
- Acción en caso de coincidencia: Permitir
- Rangos de IP:
35.235.240.0/20 - Protocolos y puertos: Selecciona Protocolos y puertos especificados, elige la casilla de verificación TCP y especifica
22en Puertos.
- Prioridad:
- Haz clic en Crear.
- Haz clic en Crear regla de firewall y configura los siguientes campos:
Para asociar la política a una red, haz clic en Continuar y, luego, en Asociar.
Selecciona la casilla de verificación
producer-network.Haz clic en Continuar.
Haz clic en Crear.
gcloud
Crea una política de firewall de red global.
gcloud compute network-firewall-policies create producer-firewall-policy \ --globalAsocia la política de firewall con la red de productor.
gcloud compute network-firewall-policies associations create \ --name=producer-firewall-policy-assoc \ --firewall-policy=producer-firewall-policy \ --global-firewall-policy \ --network=producer-networkCrea una regla de firewall para permitir la conexión UDP con el puerto GENEVE desde la dirección IP de la puerta de enlace de la 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 regla de firewall para permitir las verificaciones de estado de 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 regla de firewall para permitir la conexión SSH a la instancia de VM del productor a través de 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 recursos de intercepción de productor
En esta sección, crearás un grupo de implementación de intercepción y una implementación de intercepción.
Console
En la consola de Google Cloud , ve a la página Grupos de implementación.
Haz clic en Crear grupo de implementación.
En Nombre, ingresa
producer-deployment-group.En Red, selecciona
producer-network.En Propósito, selecciona NSI in-band.
En la sección Intercept deployments, haz clic en Create intercept deployment, especifica los siguientes campos y haz clic en Create:
- Nombre:
producer-deployment. - Región:
us-west1. - Zona:
us-west1-b. - Balanceador de cargas interno:
producer-ilb.
- Nombre:
Haz clic en Crear.
gcloud
Crea un grupo de implementación de intercepción.
gcloud network-security intercept-deployment-groups create producer-deployment-group \ --location=global \ --network=projects/PROJECT_ID/global/networks/producer-network \ --no-asyncReemplaza
PROJECT_IDpor el ID de tu proyecto.Crea una implementación de intercepción.
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-asyncReemplaza
PROJECT_IDpor el ID de tu proyecto.
Crea recursos para el consumidor
En esta sección, crearás los siguientes recursos para el consumidor:
- Una red de VPC personalizada con una subred
- Una VM de servidor y una de cliente
- Una política de firewall y una regla para interceptar el tráfico
- Un grupo de extremos de intercepción y una asociación del grupo de extremos de intercepción
- Un perfil de seguridad y un grupo de perfiles de seguridad
Crea una red de VPC personalizada
En esta sección, crearás una red de VPC con una subred.
Console
En la consola de Google Cloud , ve a la página Redes de VPC.
Haz clic en Crear red de VPC.
En Nombre, ingresa
consumer-network.En Descripción, ingresa
Consumer VPC network.En la sección Subredes, haz lo siguiente:
- Establece Modo de creación de subred en Personalizado.
- En la sección Nueva subred, ingresa la siguiente información:
- Nombre:
consumer-subnet - Región:
us-west1 - Tipo de pila IP: IPv4 (pila única)
- Rango IPv4:
10.10.0.0/16
- Nombre:
- Haz clic en Listo.
Haz clic en Crear.
gcloud
Crea una red de VPC de consumidor.
gcloud compute networks create consumer-network \ --subnet-mode=custom \ --description="Consumer VPC network"En la red de VPC, crea una subred.
gcloud compute networks subnets create consumer-subnet \ --network=consumer-network \ --region=us-west1 \ --range=10.10.0.0/16
Crea VMs de cliente y servidor
En esta sección, crearás una VM del servidor y una del cliente.
Console
Crear una VM de servidor
En la consola de Google Cloud , ve a la página Instancias de VM.
Haz clic en Crear instancia.
Establece el Nombre como
consumer-server-vm.Establece la Región en
us-west1.Establece la Zona en
us-west1-b.Establece el tipo de máquina en e2-micro.
Haz clic en Herramientas de redes y configura los siguientes campos:
En la sección Interfaces de red, haz clic en
defaulty edita la interfaz de red:- Red:
consumer-network - Subred:
consumer-subnet - Dirección IPv4 externa: ninguna
- Red:
Haz clic en Avanzado y, luego, ingresa la siguiente secuencia de comandos en Secuencia de comandos de inicio:
echo success > /tmp/connection_test && nohup python3 -u -m http.server --directory /tmp 8000
Haz clic en Crear.
Crear una VM de cliente
En la consola de Google Cloud , ve a la página Instancias de VM.
Haz clic en Crear instancia.
Establece el Nombre como
consumer-client-vm.Establece la Región en
us-west1.Establece la Zona en
us-west1-b.Establece el tipo de máquina en e2-micro.
Haz clic en Herramientas de redes y configura los siguientes campos:
En la sección Interfaces de red, haz clic en
defaulty edita la interfaz de red:- Red:
consumer-network - Subred:
consumer-subnet - Dirección IPv4 externa: ninguna
- Red:
Haz clic en Crear.
gcloud
Crear la VM del servidor
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"Crear la VM del cliente
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 política de firewall para permitir el acceso SSH
En esta sección, crearás una política de firewall y agregarás una regla de firewall para permitir el acceso de SSH a las VMs del consumidor.
Console
En la consola de Google Cloud , ve a la página Políticas de firewall.
Haz clic en Crear política de firewall.
En el campo Nombre, ingresa
consumer-firewall-policy.En Permiso de la implementación, selecciona Global y haz clic en Continuar.
Haz clic en Crear regla de firewall, configura los siguientes campos y haz clic en Crear:
- Prioridad:
100 - Dirección del tráfico: Entrada
- Acción en caso de coincidencia: Permitir
- Filtros de origen > Rangos de IP:
35.235.240.0/20 - Protocolos y puertos: Selecciona Protocolos y puertos especificados, elige la casilla de verificación TCP y especifica
22en Puertos.
El rango IPv4
35.235.240.0/20contiene todas las direcciones IP que Identity-Aware Proxy usa para el reenvío de TCP. Para obtener más información, consulta Prepara tu proyecto para el reenvío de TCP.- Prioridad:
Para asociar la política a una red, haz clic en Continuar y, luego, en Asociar.
Selecciona la casilla de verificación
consumer-network.Haz clic en Continuar.
Haz clic en Crear.
gcloud
Crea una política de firewall de red global.
gcloud compute network-firewall-policies create consumer-firewall-policy \ --globalAsocia la política de firewall con la red de consumidor.
gcloud compute network-firewall-policies associations create \ --name=consumer-firewall-policy-assoc \ --firewall-policy=consumer-firewall-policy \ --global-firewall-policy \ --network=consumer-networkCrea una regla de permiso de SSH para permitir la conexión SSH a la instancia de VM del cliente a través de 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/20El rango de IPv4
35.235.240.0/20contiene todas las direcciones IP que Identity-Aware Proxy (IAP) usa para el reenvío de TCP. Para obtener más información, consulta Prepara tu proyecto para el reenvío de TCP.
Crea un grupo de extremos del consumidor
En esta sección, crearás un grupo de extremos de intercepción y una asociación del grupo de extremos de intercepción.
Console
En la consola de Google Cloud , ve a la página Grupos de extremos.
Haz clic en Crear grupo de extremos.
En Nombre, ingresa
consumer-endpoint-group.En Grupo de implementación, en el menú Seleccionar proyecto, selecciona Seleccionar proyecto actual.
En Intercept deployment group, selecciona
producer-deployment-group.Haz clic en Continuar.
Haz clic en Agregar asociación del grupo de extremos.
En Proyecto, selecciona tu proyecto actual.
En Red, selecciona
consumer-network.Haz clic en Crear.
gcloud
Crea el grupo de extremos de intercepción.
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-asyncReemplaza
PROJECT_IDpor el ID de tu proyecto.Crea la asociación del grupo de extremos de interceptación.
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-asyncReemplaza
PROJECT_IDpor el ID de tu proyecto.
Crea un perfil de seguridad y un grupo de perfiles de seguridad
Crea un grupo de perfiles de seguridad y un perfil de seguridad personalizado para interceptar el tráfico.
Console
Crear un perfil de seguridad
En la consola de Google Cloud , ve a la página Perfiles de seguridad.
En el selector de organización, selecciona tu organización.
En la pestaña Perfiles de seguridad, haz clic en Crear perfil.
En Nombre, ingresa
consumer-security-profile.En Propósito del perfil de seguridad, selecciona NSI en banda.
En Proyecto, selecciona tu proyecto actual.
En Intercept endpoint group, selecciona
consumer-endpoint-group.Haz clic en Crear.
Crear un grupo de perfil de seguridad
En la consola de Google Cloud , ve a la página Grupos de perfiles de seguridad.
En el selector de organización, selecciona tu organización.
En la pestaña Grupos de perfiles de seguridad, haz clic en Crear grupo de perfiles.
En Nombre, ingresa
consumer-security-profile-group.En Propósito del grupo de perfiles de seguridad, selecciona NSI in-band.
En Perfil de intercepción personalizado, selecciona
consumer-security-profile.Haz clic en Crear.
gcloud
Crea un perfil de seguridad de intercepción.
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-asyncReemplaza lo siguiente:
ORG_ID: el ID de tu organización. Los perfiles de seguridad son recursos a nivel de la organización. Para crearlos, necesitas el rol de administrador de perfiles de seguridad (networksecurity.securityProfileAdmin) a nivel de la organización.PROJECT_ID: el ID de tu proyecto.
Crea un grupo de perfiles de seguridad de interceptación.
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-asyncReemplaza lo siguiente:
ORG_ID: el ID de tu organización. Los grupos de perfiles de seguridad son recursos a nivel de la organización. Para crearlos, necesitas el rol de administrador de perfiles de seguridad (networksecurity.securityProfileAdmin) a nivel de la organización.PROJECT_ID: el ID de tu proyecto.
Crea una política de firewall para interceptar el tráfico
En esta sección, crearás una política de firewall y una regla de firewall para interceptar el tráfico.
Console
En la consola de Google Cloud , ve a la página Políticas de firewall.
Haz clic en
consumer-firewall-policy.Haz clic en Crear regla de firewall y configura los siguientes campos:
- Prioridad:
100 - Dirección del tráfico: Entrada
- Acción en caso de coincidencia: Continuar a la inspección de L7
- Propósito: NSI in-band
- Grupo de perfiles de seguridad:
consumer-security-profile-group - Rangos de IP:
10.10.0.0/16 - Protocolos y puertos: Selecciona Protocolos y puertos especificados, elige la casilla de verificación TCP y especifica
8000en Puertos.
- Prioridad:
Haz clic en Crear.
gcloud
Agrega una regla de firewall para interceptar el tráfico en el puerto TCP 8000 en la VM del servidor.
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/16Reemplaza
ORG_IDpor el ID de tu organización.
Prueba la conexión
En esta sección, enviarás tráfico de red desde la instancia de VM del cliente consumidor a la instancia de VM del servidor consumidor y, luego, verificarás los registros de la instancia de VM del productor para verificar la intercepción.
Ejecuta el siguiente comando para conectarte a la instancia de VM del cliente consumidor a través de SSH y enviar una solicitud a la instancia de VM del servidor consumidor.
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"Verás el mensaje
successcuando ejecutes el comando anterior. Indica que el tráfico se envía del cliente al servidor.Ejecuta el siguiente comando para verificar los registros de la instancia de VM de productor.
gcloud compute ssh producer-instance \ --tunnel-through-iap \ --zone=us-west1-b \ --command="cat /var/log/syslog | grep 'NSI INTERCEPT'"Verás un mensaje similar 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 que la instancia de VM del productor intercepta el tráfico cliente-servidor.
Realiza una limpieza
Para evitar que se apliquen cargos a tu cuenta de Google Cloud por los recursos usados en este instructivo, borra el proyecto que contiene los recursos o conserva el proyecto y borra los recursos individuales.
Borra los recursos de consumidor
Desasocia la política de firewall de la red de consumidor y borra la política de firewall.
Console
En la consola de Google Cloud , ve a la página Políticas de firewall.
Haz clic en la política
consumer-firewall-policy.Haz clic en la pestaña Asociaciones.
Selecciona la casilla de verificación de la asociación
consumer-network.Haz clic en Quitar asociación.
Haz clic en Quitar.
En la parte superior de la página, haz clic en Borrar.
Haga clic en Borrar nuevamente para confirmar.
gcloud
Quita la asociación.
gcloud compute network-firewall-policies associations delete \ --name=consumer-firewall-policy-assoc \ --firewall-policy=consumer-firewall-policy \ --global-firewall-policyBorra la política de firewall.
gcloud compute network-firewall-policies delete consumer-firewall-policy \ --global
Borra el grupo de perfiles de seguridad.
Console
En la consola de Google Cloud , ve a la página Perfiles de seguridad.
En el selector de organización, selecciona tu organización.
En la pestaña Grupos de perfiles de seguridad, selecciona el grupo de perfiles de seguridad
consumer-security-profile-groupy, luego, haz clic en Borrar.Haga clic en Borrar nuevamente para confirmar.
gcloud
gcloud network-security security-profile-groups delete consumer-security-profile-group \ --location=global \ --organization=ORG_ID \ --billing-project=PROJECT_ID \ --quietReemplaza lo siguiente:
ORG_ID: el ID de tu organizaciónPROJECT_ID: Es el ID del proyecto.
Borra el perfil de seguridad.
Console
En la consola de Google Cloud , ve a la página Perfiles de seguridad.
En el selector de organización, selecciona tu organización.
En la pestaña Perfiles de seguridad, selecciona el perfil de seguridad
consumer-security-profiley, luego, haz clic en Borrar.Haga clic en Borrar nuevamente para confirmar.
gcloud
gcloud network-security security-profiles custom-intercept delete consumer-security-profile \ --location=global \ --organization=ORG_ID \ --billing-project=PROJECT_ID \ --quietReemplaza lo siguiente:
ORG_ID: el ID de tu organizaciónPROJECT_ID: Es el ID del proyecto.
Borra la asociación del grupo de extremos de intercepción.
Console
En la consola de Google Cloud , ve a la página Grupos de extremos.
Haz clic en
consumer-endpoint-group.Selecciona la asociación
consumer-networky haz clic en Borrar.Haga clic en Borrar nuevamente para confirmar.
gcloud
gcloud network-security intercept-endpoint-group-associations delete consumer-endpoint-group-association \ --location=global \ --no-asyncBorra el grupo de extremos de intercepción.
Console
En la consola de Google Cloud , ve a la página Grupos de extremos.
Selecciona
consumer-endpoint-groupy haz clic en Borrar.Haga clic en Borrar nuevamente para confirmar.
gcloud
gcloud network-security intercept-endpoint-groups delete consumer-endpoint-group \ --location=global \ --no-asyncBorra las VMs de cliente y servidor.
Console
En la consola de Google Cloud , ve a la página Instancias de VM.
Selecciona las casillas de verificación de
consumer-client-vmyconsumer-server-vm, y haz clic en Borrar.Haga clic en Borrar nuevamente para confirmar.
gcloud
Borra la VM del cliente.
gcloud compute instances delete consumer-client-vm \ --zone=us-west1-b \ --quietBorra la VM del servidor.
gcloud compute instances delete consumer-server-vm \ --zone=us-west1-b \ --quiet
Borra la red y la subred de consumidor.
Console
En la consola de Google Cloud , ve a la página Redes de VPC.
Haz clic en
consumer-network.En la pestaña Subredes, selecciona la casilla de verificación de
consumer-subnety haz clic en Borrar.Haga clic en Borrar nuevamente para confirmar.
Haz clic en Borrar la red de VPC.
En el campo de texto, ingresa
consumer-networky haz clic en Borrar.
gcloud
Borra la subred.
gcloud compute networks subnets delete consumer-subnet \ --region=us-west1 \ --quietBorra la red de VPC.
gcloud compute networks delete consumer-network \ --quiet
Borra los recursos del productor
Desasocia la política de firewall de la red de productor y borra la política de firewall.
Console
En la consola de Google Cloud , ve a la página Políticas de firewall.
Haz clic en la política
producer-firewall-policy.Haz clic en la pestaña Asociaciones.
Selecciona la casilla de verificación de la asociación
producer-network.Haz clic en Quitar asociación.
Haz clic en Quitar.
En la parte superior de la página, haz clic en Borrar.
Haga clic en Borrar nuevamente para confirmar.
gcloud
Quita la asociación.
gcloud compute network-firewall-policies associations delete \ --name=producer-firewall-policy-assoc \ --firewall-policy=producer-firewall-policy \ --global-firewall-policyBorra la política de firewall.
gcloud compute network-firewall-policies delete producer-firewall-policy \ --global
Borra la implementación de intercepción y el grupo de implementación de intercepción.
Console
En la consola de Google Cloud , ve a la página Grupos de implementación.
Haz clic en
producer-deployment-group.Borrar
producer-deployment.- Selecciona la casilla de verificación
producer-deploymenty haz clic en Borrar. - Haga clic en Borrar nuevamente para confirmar.
- Selecciona la casilla de verificación
Haz clic en el botón Borrar en la parte superior de la página.
Haga clic en Borrar nuevamente para confirmar.
gcloud
Borra la implementación de la interceptación.
gcloud network-security intercept-deployments delete producer-deployment \ --location=us-west1-b \ --no-asyncBorra el grupo de implementación de intercepción.
gcloud network-security intercept-deployment-groups delete producer-deployment-group \ --location=global \ --no-async
Borra los recursos del balanceador de cargas.
Console
En la consola de Google Cloud , ve a la página Balanceo de cargas.
Selecciona la casilla de verificación
producer-ilb.Haz clic en el botón Borrar en la parte superior de la página.
Selecciona la casilla de verificación
producer-health-checky haz clic en Borrar el balanceador de cargas y los recursos seleccionados.
gcloud
Borra la regla de reenvío.
gcloud compute forwarding-rules delete producer-ilb-fr \ --region=us-west1 \ --quietQuita el servicio de backend.
gcloud compute backend-services delete producer-backend-service \ --region=us-west1 \ --quietBorra la verificación de estado.
gcloud compute health-checks delete producer-health-check \ --region=us-west1 \ --quiet
Borra la instancia de VM del productor.
Console
En la consola de Google Cloud , ve a la página Instancias de VM.
Selecciona la casilla de verificación de
producer-instancey haz clic en Borrar.Haga clic en Borrar nuevamente para confirmar.
gcloud
gcloud compute instances delete producer-instance \ --zone=us-west1-b \ --quietBorra el grupo de instancias.
Console
En la consola de Google Cloud , ve a la página Grupos de instancias.
Selecciona la casilla de verificación
producer-instance-group.Haz clic en Borrar.
En la ventana de confirmación, haz clic en Borrar.
gcloud
gcloud compute instance-groups unmanaged delete producer-instance-group \ --zone=us-west1-b \ --quietBorra la red y la subred del productor.
Console
En la consola de Google Cloud , ve a la página Redes de VPC.
Haz clic en
producer-network.En la pestaña Subredes, selecciona la casilla de verificación de
producer-subnety haz clic en Borrar.Haga clic en Borrar nuevamente para confirmar.
Haz clic en Borrar la red de VPC.
En el campo de texto, ingresa
producer-networky haz clic en Borrar.
gcloud
Borra la subred.
gcloud compute networks subnets delete producer-subnet \ --region=us-west1 \ --quietBorra la red.
gcloud compute networks delete producer-network \ --quiet
¿Qué sigue?
- Descripción general de los grupos de implementación de intercepción
- Descripción general de las implementaciones de intercepción
- Descripción general de los grupos de extremos y las asociaciones de intercepción
- Descripción general de los perfiles de seguridad
- Descripción general de los grupos de perfiles de seguridad
- Explora arquitecturas de referencia, diagramas y prácticas recomendadas sobre Google Cloud. Consulta nuestro Cloud Architecture Center.