GSP062

Descripción general
En este lab práctico, aprenderás a crear una VPN segura y de alta capacidad de procesamiento y a probar la velocidad.
La comunicación segura entre Google Cloud y otras nubes o sistemas locales es una necesidad común y primordial. Por suerte, Google Cloud facilita la creación de redes privadas virtuales (VPN) seguras con seguridad del Protocolo de Internet (IPsec) para lograr este objetivo. Si un solo túnel no proporciona la capacidad de procesamiento necesaria, Google Cloud puede distribuir sin problemas el tráfico entre varios túneles para ofrecer ancho de banda adicional.
Objetivos
En este lab, realizarás las siguientes actividades:
-
Crear una VPN
- Crear una nube privada virtual (VPC) llamada
cloud
con el objetivo de simular tu red de Google Cloud, además de una VPC llamada on-prem
(del inglés "on-premises", que significa "local") para simular una red externa
- Crear puertas de enlace de VPN, reglas de reenvío y direcciones para la VPC
cloud
- Formar un túnel para la VPN nueva y enrutar el tráfico a través de esta
- Repetir el proceso de creación de VPN para la VPC
on-prem
y crear una segunda VPN
-
Probar las VPN
- Crear una máquina virtual (VM) con Compute Engine para probar las cargas de capacidad de procesamiento
- Probar la velocidad de la capacidad de procesamiento de una sola VPN con
iperf
Requisitos previos
Para maximizar tu aprendizaje, debes hacer lo siguiente:
Configuración y requisitos
Antes de hacer clic en el botón Comenzar lab
Lee estas instrucciones. Los labs cuentan con un temporizador que no se puede pausar. El temporizador, que comienza a funcionar cuando haces clic en Comenzar lab, indica por cuánto tiempo tendrás a tu disposición los recursos de Google Cloud.
Este lab práctico te permitirá realizar las actividades correspondientes en un entorno de nube real, no en uno de simulación o demostración. Para ello, se te proporcionan credenciales temporales nuevas que utilizarás para acceder a Google Cloud durante todo el lab.
Para completar este lab, necesitarás lo siguiente:
- Acceso a un navegador de Internet estándar. Se recomienda el navegador Chrome.
Nota: Usa una ventana del navegador privada o de incógnito (opción recomendada) para ejecutar el lab. Así evitarás conflictos entre tu cuenta personal y la cuenta de estudiante, lo que podría generar cargos adicionales en tu cuenta personal.
- Tiempo para completar el lab (recuerda que, una vez que comienzas un lab, no puedes pausarlo).
Nota: Usa solo la cuenta de estudiante para este lab. Si usas otra cuenta de Google Cloud, es posible que se apliquen cargos a esa cuenta.
Cómo iniciar tu lab y acceder a la consola de Google Cloud
-
Haz clic en el botón Comenzar lab. Si debes pagar por el lab, se abrirá un diálogo para que selecciones la forma de pago.
A la izquierda, se encuentra el panel Detalles del lab, que tiene estos elementos:
- El botón para abrir la consola de Google Cloud
- El tiempo restante
- Las credenciales temporales que debes usar para el lab
- Otra información para completar el lab, si es necesaria
-
Haz clic en Abrir la consola de Google Cloud (o haz clic con el botón derecho y selecciona Abrir el vínculo en una ventana de incógnito si ejecutas el navegador Chrome).
El lab inicia recursos y abre otra pestaña en la que se muestra la página de acceso.
Sugerencia: Ordena las pestañas en ventanas separadas, una junto a la otra.
Nota: Si ves el diálogo Elegir una cuenta, haz clic en Usar otra cuenta.
-
De ser necesario, copia el nombre de usuario a continuación y pégalo en el diálogo Acceder.
{{{user_0.username | "Username"}}}
También puedes encontrar el nombre de usuario en el panel Detalles del lab.
-
Haz clic en Siguiente.
-
Copia la contraseña que aparece a continuación y pégala en el diálogo Te damos la bienvenida.
{{{user_0.password | "Password"}}}
También puedes encontrar la contraseña en el panel Detalles del lab.
-
Haz clic en Siguiente.
Importante: Debes usar las credenciales que te proporciona el lab. No uses las credenciales de tu cuenta de Google Cloud.
Nota: Usar tu propia cuenta de Google Cloud para este lab podría generar cargos adicionales.
-
Haz clic para avanzar por las páginas siguientes:
- Acepta los Términos y Condiciones.
- No agregues opciones de recuperación o autenticación de dos factores (esta es una cuenta temporal).
- No te registres para obtener pruebas gratuitas.
Después de un momento, se abrirá la consola de Google Cloud en esta pestaña.
Nota: Para acceder a los productos y servicios de Google Cloud, haz clic en el menú de navegación o escribe el nombre del servicio o producto en el campo Buscar.
Activa Cloud Shell
Cloud Shell es una máquina virtual que cuenta con herramientas para desarrolladores. Ofrece un directorio principal persistente de 5 GB y se ejecuta en Google Cloud. Cloud Shell proporciona acceso de línea de comandos a tus recursos de Google Cloud.
-
Haz clic en Activar Cloud Shell
en la parte superior de la consola de Google Cloud.
-
Haz clic para avanzar por las siguientes ventanas:
- Continúa en la ventana de información de Cloud Shell.
- Autoriza a Cloud Shell para que use tus credenciales para realizar llamadas a la API de Google Cloud.
Cuando te conectes, habrás completado la autenticación, y el proyecto estará configurado con tu Project_ID, . El resultado contiene una línea que declara el Project_ID para esta sesión:
Your Cloud Platform project in this session is set to {{{project_0.project_id | "PROJECT_ID"}}}
gcloud
es la herramienta de línea de comandos de Google Cloud. Viene preinstalada en Cloud Shell y es compatible con la función de autocompletado con tabulador.
- Puedes solicitar el nombre de la cuenta activa con este comando (opcional):
gcloud auth list
- Haz clic en Autorizar.
Resultado:
ACTIVE: *
ACCOUNT: {{{user_0.username | "ACCOUNT"}}}
To set the active account, run:
$ gcloud config set account `ACCOUNT`
- Puedes solicitar el ID del proyecto con este comando (opcional):
gcloud config list project
Resultado:
[core]
project = {{{project_0.project_id | "PROJECT_ID"}}}
Nota: Para obtener toda la documentación de gcloud
, en Google Cloud, consulta la guía con la descripción general de gcloud CLI.
Tarea 1. Crea la VPC "cloud"
En esta sección, harás lo siguiente:
- Crear una VPC para simular tu red de producción de nube
- Permitir que los tipos comunes de tráfico circulen por la VPC
- Crear una subred para implementar hosts
- En Cloud Shell, crea una VPC personalizada llamada
cloud
asociada a tu proyecto de Google Cloud ejecutando lo siguiente:
gcloud compute networks create cloud --subnet-mode custom
Esta VPC permite usar el direccionamiento IP no predeterminado, pero no incluye ninguna regla de firewall predeterminada.
- Habilita
ICMP
y SSH
, ya que necesitarás una shell segura para comunicarte con las VMs durante la prueba de carga, ejecutando lo siguiente:
gcloud compute firewall-rules create cloud-fw --network cloud --allow tcp:22,tcp:5001,udp:5001,icmp
- Crea una subred dentro de esta VPC y especifica una región y un rango de IP con este comando:
gcloud compute networks subnets create cloud-east --network cloud \
--range 10.0.1.0/24 --region {{{project_0.default_region_2 | REGION2}}}
En esta solución, usarás 10.0.1.0/24
y la región .
Tarea 2. Crea la VPC local ("on-prem")
En esta sección, crearás una simulación de tu VPC on-prem
o de cualquier red que quieras conectar a cloud
. En la práctica, ya tendrás recursos aquí, pero sigue estos pasos para crear túneles y validar configuraciones.
- En Cloud Shell, crea una nueva VPC de subred personalizada que se llame
on-prem
y que esté asociada a tu proyecto ejecutando lo siguiente:
gcloud compute networks create on-prem --subnet-mode custom
- Habilita
ICMP
y SSH
para los hosts de la VPC on-prem
, ya que necesitarás una shell segura para comunicarte con las VMs durante la prueba de carga, ejecutando lo siguiente:
gcloud compute firewall-rules create on-prem-fw --network on-prem --allow tcp:22,tcp:5001,udp:5001,icmp
- Especifica el prefijo de subred para la región con este comando:
gcloud compute networks subnets create on-prem-central \
--network on-prem --range 192.168.1.0/24 --region {{{project_0.default_region |REGION}}}
Nota: En este ejemplo, asignas `192.168.1.0/24` a la región .
Crear dos VPC personalizadas con subredes y reglas de firewall.
Tarea 3. Crea las puertas de enlace VPN
Cada entorno requiere puertas de enlace de VPN para una comunicación externa segura. Sigue estos pasos para crear las puertas de enlace iniciales destinadas a las VPC llamadas cloud y on-prem
:
- En Cloud Shell, crea una puerta de enlace de VPN llamada
on-prem-gw1
en la VPC on-prem
y en la región :
gcloud compute target-vpn-gateways create on-prem-gw1 --network on-prem --region {{{project_0.default_region |REGION}}}
- Ahora, crea una puerta de enlace de VPN llamada
cloud-gw1
en la VPC cloud
y en la región :
gcloud compute target-vpn-gateways create cloud-gw1 --network cloud --region {{{project_0.default_region_2 | REGION2}}}
Tarea 4. Crea un túnel VPN basado en rutas entre redes locales y de Google Cloud
Cada puerta de enlace de VPN necesita una dirección IP externa y estática para que los sistemas fuera de la VPC puedan comunicarse con ellas. Ahora, crearás direcciones IP y rutas en las VPCs cloud y on-prem
.
- En Cloud Shell, asigna la IP para la puerta de enlace de VPN
cloud-gw1
:
gcloud compute addresses create cloud-gw1 --region {{{project_0.default_region_2 | REGION2}}}
- Luego, asigna la IP para la puerta de enlace de VPN
on-prem-gw1
:
gcloud compute addresses create on-prem-gw1 --region {{{project_0.default_region |REGION}}}
- Almacena las direcciones de las puertas de enlace para no tener que buscarlas en los próximos comandos.
Primero, para la puerta de enlace cloud-gw1
ejecuta lo siguiente:
cloud_gw1_ip=$(gcloud compute addresses describe cloud-gw1 \
--region {{{project_0.default_region_2 | REGION2}}} --format='value(address)')
Luego, para la puerta de enlace on-prem-gw1
ejecuta lo siguiente:
on_prem_gw_ip=$(gcloud compute addresses describe on-prem-gw1 \
--region {{{project_0.default_region |REGION}}} --format='value(address)')
- Ahora, crearás reglas de reenvío para IPsec en la VPC
cloud
. Debes crear reglas de reenvío en ambas direcciones.
Reenvía el protocolo de carga útil de seguridad de encapsulación (ESP) desde cloud-gw1
:
gcloud compute forwarding-rules create cloud-1-fr-esp --ip-protocol ESP \
--address $cloud_gw1_ip --target-vpn-gateway cloud-gw1 --region {{{project_0.default_region_2 | REGION2}}}
Reenvía el tráfico UDP:500
desde cloud-gw1:
gcloud compute forwarding-rules create cloud-1-fr-udp500 --ip-protocol UDP \
--ports 500 --address $cloud_gw1_ip --target-vpn-gateway cloud-gw1 --region {{{project_0.default_region_2 | REGION2}}}
Reenvía el tráfico UDP:4500
desde cloud-gw1:
gcloud compute forwarding-rules create cloud-fr-1-udp4500 --ip-protocol UDP \
--ports 4500 --address $cloud_gw1_ip --target-vpn-gateway cloud-gw1 --region {{{project_0.default_region_2 | REGION2}}}
- Usa el mismo método con el objetivo de crear reglas de reenvío de firewall para el túnel de IPsec en la VPC llamada
on-prem
. Esta acción permitirá que el túnel de IPsec salga de tus firewalls:
Reenvía el protocolo de ESP desde on-prem-gw1
:
gcloud compute forwarding-rules create on-prem-fr-esp --ip-protocol ESP \
--address $on_prem_gw_ip --target-vpn-gateway on-prem-gw1 --region {{{project_0.default_region |REGION}}}
Reenvía el tráfico UDP:500
que se usa para establecer el túnel de IPsec desde on-prem-gw1:
gcloud compute forwarding-rules create on-prem-fr-udp500 --ip-protocol UDP --ports 500 \
--address $on_prem_gw_ip --target-vpn-gateway on-prem-gw1 --region {{{project_0.default_region |REGION}}}
Reenvía el tráfico UDP:4500
, que lleva el tráfico encriptado desde on-prem-gw1
:
gcloud compute forwarding-rules create on-prem-fr-udp4500 --ip-protocol UDP --ports 4500 \
--address $on_prem_gw_ip --target-vpn-gateway on-prem-gw1 --region {{{project_0.default_region |REGION}}}
Crear dos puertas de enlace de VPN y las reglas de reenvío necesarias.
En general, necesitarías generar un secret para el siguiente paso, en el que crearás y validarás los túneles on-prem-tunnel1
y cloud-tunnel1
. Para obtener información sobre cómo crear y almacenar secrets de forma segura, consulta la Guía general de conceptos de Secret Manager. Por ahora, solo usa la cadena "sharedsecret".
Crea un túnel para la red local, on-prem-tunnel1
, y otro para la red basada en la nube, cloud-tunnel1
. Cada red debe tener una puerta de enlace de VPN, y los secrets deben coincidir. En una situación de producción, en los próximos dos comandos reemplazarías [MY_SECRET]
por el secret que generaste. En este caso, reemplázalo por "sharedsecret".
- Crea el túnel VPN desde
on-prem
hasta cloud
:
gcloud compute vpn-tunnels create on-prem-tunnel1 --peer-address $cloud_gw1_ip \
--target-vpn-gateway on-prem-gw1 --ike-version 2 --local-traffic-selector 0.0.0.0/0 \
--remote-traffic-selector 0.0.0.0/0 --shared-secret=[MY_SECRET] --region {{{project_0.default_region |REGION}}}
- Crea el túnel VPN desde cloud hasta on-prem:
gcloud compute vpn-tunnels create cloud-tunnel1 --peer-address $on_prem_gw_ip \
--target-vpn-gateway cloud-gw1 --ike-version 2 --local-traffic-selector 0.0.0.0/0 \
--remote-traffic-selector 0.0.0.0/0 --shared-secret=[MY_SECRET] --region {{{project_0.default_region_2 | REGION2}}}
Ahora que creaste las puertas de enlace y compilaste los túneles, debes agregar rutas desde las subredes a través de los dos túneles.
- Enruta el tráfico desde la VPC
on-prem
hasta el rango cloud 10.0.1.0/24
a través del túnel:
gcloud compute routes create on-prem-route1 --destination-range 10.0.1.0/24 \
--network on-prem --next-hop-vpn-tunnel on-prem-tunnel1 \
--next-hop-vpn-tunnel-region {{{project_0.default_region |REGION}}}
- Enruta el tráfico desde la VPC
cloud
hasta el rango on-prem 192.168.1.0/24
a través del túnel:
gcloud compute routes create cloud-route1 --destination-range 192.168.1.0/24 \
--network cloud --next-hop-vpn-tunnel cloud-tunnel1 --next-hop-vpn-tunnel-region {{{project_0.default_region_2 | REGION2}}}
Crear dos túneles VPN.
Tarea 5. Prueba la capacidad de procesamiento en la VPN
En este punto, estableciste una ruta segura entre las VPC on-prem y cloud. Para probar la capacidad de procesamiento, utiliza iperf, una herramienta de código abierto que permite probar las cargas de red. Para hacer la prueba, necesitas una VM en cada entorno: una que envíe tráfico y otra que lo reciba. Crearás estas VMs a continuación.
Prueba de carga de una sola VPN
Ahora crearás una máquina virtual para la VPC cloud con el nombre cloud-loadtest
. En este ejemplo, se usa una imagen de Debian Linux para el SO.
Nota: Si ya tienes un proyecto, puedes omitir este paso y usar los recursos existentes. El ancho de banda para una VM es de 2 Gbps * CPU virtuales, por lo que necesitarás un mínimo de 4 CPU virtuales.
- Ejecuta este comando:
gcloud compute instances create "cloud-loadtest" --zone {{{project_0.default_zone_2 |ZONE2}}} \
--machine-type "e2-standard-4" --subnet "cloud-east" \
--image-family "debian-11" --image-project "debian-cloud" --boot-disk-size "10" \
--boot-disk-type "pd-standard" --boot-disk-device-name "cloud-loadtest"
- Crea una máquina virtual para la VPC
on-prem
llamada on-prem-loadtest
. En este ejemplo, se usa la misma imagen de Debian que en la VPC cloud. Omite este paso si ya tienes recursos.
Ejecuta este comando:
gcloud compute instances create "on-prem-loadtest" --zone {{{project_0.default_zone |ZONE}}} \
--machine-type "e2-standard-4" --subnet "on-prem-central" \
--image-family "debian-11" --image-project "debian-cloud" --boot-disk-size "10" \
--boot-disk-type "pd-standard" --boot-disk-device-name "on-prem-loadtest"
- Establece una conexión SSH a cada VM, ya sea a través de la consola o la línea de comandos y, además, instala una copia de iperf con esta línea de comandos:
sudo apt-get install iperf
- En la VM
on-prem-loadtest
, ejecuta este comando:
iperf -s -i 5
Creaste un servidor de iperf en la VM que informa su estado cada 5 segundos.
- En la VM
cloud-loadtest
, ejecuta este comando:
iperf -c 192.168.1.2 -P 20 -x C
De esta manera, se creará un cliente de iperf con veinte transmisiones que informarán valores luego de 10 segundos de prueba.
Crear dos VMs e instalar iperf a través de SSH.
Soluciona los problemas que puedan surgir
Nota: Esto no está incluido en las instrucciones del lab.
- Si olvidaste reemplazar [MY_SECRET] por "sharedsecret" cuando creaste los túneles para la red local,
puedes ejecutar el siguiente comando para borrar los túneles VPN creados:
gcloud compute vpn-tunnels delete [tunnel-name] --region [region]
- Reemplaza [tunnel-name] por el nombre del túnel.
- Reemplaza [region] por la región que especificaste cuando creaste el túnel.
- Si tienes problemas con la sección Prueba de carga de una sola VPN:
-
Asegúrate de haber instalado iperf en ambas VM.
-
Si recibes un error de conexión rechazada, verifica lo siguiente:
- Las reglas de firewall para las redes creadas (tcp:5001)
- Que el servidor se esté ejecutando correctamente en
on-prem-loadtest
- Que estás intentando conectarte al servidor a través de
cloud-loadtest
- Si estás intentando ver las reglas de reenvío que creaste en la consola, verifica lo siguiente:
- En el menú de navegación, ve a la sección Herramientas de redes.
- Haz clic en Conectividad de red > VPN.
- Haz clic en la puerta de enlace de Cloud VPN para ver su página de detalles.
¡Felicitaciones!
En este lab, creaste con éxito una VPN de alto rendimiento entre dos redes simuladas, una VPC en la nube y una VPC local. Aprendiste a crear VPC personalizadas, configurar puertas de enlace de VPN, establecer túneles IPsec seguros y enrutar tráfico a través de esos túneles. Por último, probaste la capacidad de procesamiento de tu VPN con iperf
para validar su rendimiento.
¿Qué sigue?
Capacitación y certificación de Google Cloud
Recibe la formación que necesitas para aprovechar al máximo las tecnologías de Google Cloud. Nuestras clases incluyen habilidades técnicas y recomendaciones para ayudarte a avanzar rápidamente y a seguir aprendiendo. Para que puedas realizar nuestros cursos cuando más te convenga, ofrecemos distintos tipos de capacitación de nivel básico a avanzado: a pedido, presenciales y virtuales. Las certificaciones te ayudan a validar y demostrar tus habilidades y tu conocimiento técnico respecto a las tecnologías de Google Cloud.
Última actualización del manual: 30 de marzo de 2025
Prueba más reciente del lab: 25 de febrero de 2025
Copyright 2025 Google LLC. All rights reserved. Google y el logotipo de Google son marcas de Google LLC. Los demás nombres de productos y empresas pueden ser marcas de las respectivas empresas a las que estén asociados.