Obtén más información sobre cómo crear y configurar una política de firewall jerárquica para permitir el tráfico de salida que se origina desde una red de nube privada virtual (VPC) específica en tu carpeta a una dirección IP específica como destino. La política de firewall bloquea todo el resto del tráfico de salida que se origina en tu carpeta. En esta página, se explica un ejemplo de cómo crear dos redes de VPC, crear instancias de máquina virtual (VM) en las redes de VPC, configurar una política de firewall jerárquica con reglas de firewall y, luego, probar la política de firewall.
Antes de comenzar
- Asegúrate de tener acceso a un recurso de la organización.
- Asegúrate de tener los siguientes roles de Identity and Access Management (IAM):
-
Rol de administrador de la organización (
(roles/resourcemanager.organizationAdmin)
) - Rol de administrador de carpetas
(roles/resourcemanager.folderAdmin)
-
Rol de creador del proyecto (
(roles/resourcemanager.projectCreator)
). -
Rol de eliminador de proyectos
(roles/resourcemanager.projectDeleter)
-
Rol Compute Network Admin (
roles/compute.networkAdmin
) -
Rol de administrador de la Política de firewall de Compute para la organización (
roles/compute.orgFirewallPolicyAdmin
)
-
Rol de administrador de la organización (
-
Enable the Compute Engine and Identity-Aware Proxy (IAP) APIs.
Crea una carpeta
Crea una carpeta en tu organización.
En la consola de Google Cloud, ve a la página Administrar recursos.
Haz clic en Crear carpeta.
En Nombre de la carpeta, ingresa
test-folder
.En la lista Organización, selecciona el nombre de tu recurso de organización.
En el campo Ubicación, haz clic en Explorar y, luego, selecciona el recurso de tu organización.
Haz clic en Crear.
Crea un proyecto
Crea un proyecto en la carpeta que creaste en la sección anterior.
En la consola de Google Cloud, ve a la página Administrar recursos.
Haz clic en Crear proyecto.
En Nombre del proyecto, ingresa:
test-project
.Selecciona una cuenta de facturación para el proyecto.
En la lista Organización, selecciona el nombre de tu recurso de organización.
En el campo Ubicación, haz clic en Explorar, expande el nombre del recurso de tu organización y, luego, selecciona test-folder.
Haz clic en Crear.
Crear dos redes de VPC personalizadas con subredes IPv4.
Crea dos redes de VPC de modo personalizado, myvpc
con una subred de solo IPv4 y test-vpc
con dos subredes solo IPv4, en el proyecto que creaste en la sección anterior.
En la página del selector de proyectos de la consola de Google Cloud, selecciona test-project.
En la consola de Google Cloud, ve a la página Redes de VPC.
Haz clic en Crear red de VPC.
En Nombre, ingresa
myvpc
.En Modo de creación de subred, selecciona Personalizado.
En la sección Subred nueva, especifica los siguientes parámetros de configuración para una subred:
- Nombre: Ingresa
myvpc-subnet-1
. - Región: selecciona us-central1.
- Rango IPv4: ingresa
10.0.0.0/24
.
- Nombre: Ingresa
Haga clic en Listo y, luego, en Crear.
Para crear otra red de VPC, haz clic en Crear red de VPC.
En Nombre, ingresa
test-vpc
.En Modo de creación de subred, selecciona Personalizado.
En la sección Subred nueva, especifica los siguientes parámetros de configuración para la subred y, luego, haz clic en Listo:
- Nombre: Ingresa
testvpc-subnet-1
. - Región: selecciona us-central1.
- Rango IPv4: ingresa
10.0.0.0/16
.
- Nombre: Ingresa
Para agregar otra subred a la red
test-vpc
, haz clic en Agregar subred.En la sección Subred nueva, especifica los siguientes parámetros de configuración para la subred y, luego, haz clic en Listo:
- Nombre: Ingresa
testvpc-subnet-ext
. - Región: selecciona us-central1.
- Rango IPv4: ingresa
192.168.1.0/24
.
- Nombre: Ingresa
Haz clic en Crear.
Crea las VM
Crea tres VM en las subredes que configuraste en la sección anterior.
Crea una VM en la red myvpc
Crea una VM sin una dirección IP externa en la red myvpc
.
En la consola de Google Cloud, ve a la página Crear una instancia.
Haz clic en Crear instancia.
En Nombre, ingresa
myvpc-vm
.En Región, selecciona us-central1 (Iowa).
Expande Opciones avanzadas y, luego, Herramientas de redes.
En la sección Interfaces de red, expande la interfaz de red existente y especifica los siguientes parámetros de configuración:
- Red: Selecciona
myvpc
. - Subred: selecciona subnet-1 IPv4 (10.0.0.0/24).
- Dirección IPv4 externa: Selecciona Ninguna.
- Red: Selecciona
Haz clic en Listo.
Haz clic en Crear.
Crea dos VM en la red test-vpc
Crea dos VM, una sin una dirección IP externa y otra con una dirección IP externa. Cuando crees la VM con una dirección IP externa, pasa una secuencia de comandos de inicio para instalar y, luego, iniciar un servidor web Apache en esa VM.
Crea una VM sin una dirección IP externa:
En la consola de Google Cloud, ve a la página Crear una instancia.
Haz clic en Crear instancia.
En Nombre, ingresa
testvpc-vm
.En Región, selecciona
us-central1 (Iowa)
.Expande Opciones avanzadas y, luego, Herramientas de redes.
En la sección Interfaces de red, expande la interfaz de red existente y especifica los siguientes parámetros de configuración:
- Red: Selecciona test-vpc.
- Subred: Selecciona testvpc-subnet-1 IPv4 (10.0.0.0/16).
- Dirección IPv4 externa: selecciona Ninguna.
Haz clic en Listo.
Haz clic en Crear.
Crea una VM con una dirección IP externa efímera y pasa una secuencia de comandos de inicio para instalar y, luego, iniciar un servidor web Apache:
- Haz clic en Crear instancia.
- En Nombre, ingresa
testvpc-apache-vm
. - En Región, selecciona
us-central1 (Iowa)
. - Expande Opciones avanzadas y, luego, Herramientas de redes.
- En la sección Interfaces de red, expande la interfaz de red existente y especifica los siguientes parámetros de configuración:
- Red: Selecciona test-vpc.
- Subred: Selecciona testvpc-subnet-ext IPv4 (192.168.1.0/24).
- Dirección IPv4 externa: selecciona Efímera.
- Expande Administración.
En la sección Metadatos, ingresa la siguiente secuencia de comandos en el campo Secuencia de comandos de inicio:
#! /bin/bash apt-get update apt-get install apache2 -y a2ensite default-ssl a2enmod ssl # Read VM network configuration: md_vm="http://169.254.169.254/computeMetadata/v1/instance/" vm_hostname="$(curl $md_vm/name -H "Metadata-Flavor:Google" )" filter="{print \$NF}" vm_network="$(curl $md_vm/network-interfaces/0/network \ -H "Metadata-Flavor:Google" | awk -F/ "${filter}")" vm_zone="$(curl $md_vm/zone \ -H "Metadata-Flavor:Google" | awk -F/ "${filter}")" # Apache configuration: echo "Page on $vm_hostname in network $vm_network zone $vm_zone" | \ tee /var/www/html/index.html systemctl restart apache2
La secuencia de comandos anterior implementa y, luego, inicia un servidor web Apache en esta VM.
Haz clic en Listo.
Haz clic en Crear.
Toma nota de la dirección IP externa efímera asignada a esta VM desde la página Instancias de VM. Necesitarás esta dirección IP externa más adelante.
Crea un Cloud Router y una puerta de enlace de Cloud NAT
En la sección anterior, en la red myvpc
, creaste la VM myvpc-vm
sin ninguna dirección IP externa. Para permitir que la VM myvpc-vm
acceda al servidor web Apache que se ejecuta en testvpc-apache-vm
a través de la Internet pública, crea un Cloud Router y una puerta de enlace de Cloud NAT en la misma subred en la que creaste. tu VM de myvpc-vm
.
En la consola de Google Cloud, ve a la página de Cloud NAT.
Haz clic en Comenzar o Crear Cloud NAT.
Nota: Si esta es la primera puerta de enlace de Cloud NAT que crearás, haz clic en Comenzar. Si ya tienes puertas de enlace existentes, Google Cloud muestra el botón Crear puerta de enlace de Cloud NAT. Para crear otra puerta de enlace, haz clic en Crear puerta de enlace de Cloud NAT.
En Nombre de la puerta de enlace, ingresa
myvpc-gateway
.Para Tipo de NAT, selecciona Pública.
En la sección Seleccionar Cloud Router, especifica los siguientes parámetros de configuración:
- Red: Selecciona myvpc.
- Región: selecciona us-central1 (Iowa).
- Cloud Router: haz clic en Crear router nuevo.
- En Nombre, ingresa
myvpc-router
. - Haz clic en Crear.
- En Nombre, ingresa
Haz clic en Crear.
Crea una política de firewall jerárquica y agrega reglas de firewall
Crea una política de firewall jerárquica y agrégale las siguientes reglas de política de firewall:
- Habilita IAP para todas las VMs en
test-folder
a fin de habilitar el acceso de administrador a las VMs. - Permitir el tráfico de entrada a todas las VM en la red
test-vpc
- Delega el tráfico de salida de la red
myvpc
a la siguiente regla en la jerarquía, que es la reglaVPC firewall implied IPv4 rule egress all
. - Rechazar el tráfico de salida que se origina en todas las demás redes de VPC en
test-folder
.
Para crear una política de firewall jerárquica, sigue estos pasos:
En la consola de Google Cloud, ve a la página del selector de proyectos y selecciona test-folder.
En la consola de Google Cloud, ve a la página Políticas de firewall.
Haz clic en Crear política de firewall.
En la sección Configurar la política, en Nombre de la política, ingresa
fw-egress-specific-vpc
.En Descripción, ingresa
example-firewall-policy
.Haz clic en Continuar.
En la sección Agregar reglas, haz clic en Continuar. Agrega las reglas de firewall en las secciones posteriores de esta guía de inicio rápido.
En la sección Asociar política con recursos, haz clic en Agregar.
Expande tu organización, selecciona test-folder y, luego, haz clic en Agregar.
Haz clic en Crear.
Agrega una regla de firewall para habilitar IAP en todas las VM de test-folder
.
Para permitir que IAP se conecte a todas las VMs en test-folder
, necesitas una regla de firewall en la política de firewall jerárquica con las siguientes características:
- Se aplica a todas las VMs en
test-folder
a las que deseas acceder mediante el reenvío IAP de TCP. - Permite el tráfico de entrada desde el rango de direcciones IP
35.235.240.0/20
. Este rango contiene todas las direcciones IP que IAP usa para el reenvío de TCP. - Una conexión a todos los puertos a los que deseas acceder mediante el reenvío IAP de TCP, por ejemplo, el puerto
22
para SSH.
Para agregar la regla de firewall, sigue estos pasos:
En la consola de Google Cloud, ve a la página Políticas de firewall.
Haz clic en fw-egress-specific-vpc y, luego, en fw-egress-specific-vpc.
En Prioridad, ingresa
100
.En Descripción, ingresa
enable-iap
.En Dirección del tráfico, selecciona Ingress.
En Acción en caso de coincidencia, selecciona Permitir.
En la sección Origen, en Rangos de IP, ingresa
35.235.240.0/20
.En la sección Protocolos y puertos, selecciona Protocolos y puertos especificados.
Selecciona la casilla de verificación TCP y, en Puertos, ingresa
22
.Haz clic en Crear.
Agrega una regla de firewall para permitir el tráfico de entrada en la red test-vpc
Agrega una regla de firewall para permitir el tráfico web HTTP entrante en el puerto TCP 80 a todas las VM de la red test-vpc
:
En la consola de Google Cloud, ve a la página Políticas de firewall.
Haz clic en fw-egress-specific-vpc y, luego, en fw-egress-specific-vpc.
En Prioridad, ingresa
200
.En Descripción, ingresa
allow-ingress-testvpc
.En Dirección del tráfico, selecciona Ingress.
En Acción en caso de coincidencia, selecciona Permitir.
En la sección Destino, haz clic en Agregar red.
Selecciona el proyecto de prueba que contiene la red
test-vpc
y, luego, selecciona test-vpc como la red.En la sección Origen, en Rangos de IP, ingresa
0.0.0.0/0
.En la sección Protocolos y puertos, selecciona Protocolos y puertos especificados.
Selecciona la casilla de verificación TCP y, en Puertos, ingresa
80
.Haz clic en Crear.
Agrega una regla de firewall para delegar el tráfico de salida de la red myvpc
a la siguiente regla en la jerarquía
Agrega una regla de firewall que use la acción goto_next
para delegar el tráfico de salida de la red myvpc
a la siguiente regla en el firewall, que es el permiso de salida IPv4 implícito Regla de firewall de VPC.
En la consola de Google Cloud, ve a la página Políticas de firewall.
Haz clic en fw-egress-specific-vpc y, luego, en fw-egress-specific-vpc.
En Prioridad, ingresa
300
.En Descripción, ingresa
delegate-egress-myvpc
.En Dirección del tráfico, selecciona Salida.
En Acción en caso de coincidencia, selecciona Ir a siguiente.
En la sección Destino, haz clic en Agregar red.
Selecciona el nombre del proyecto de prueba que contiene
myvpc
y, luego, seleccionamyvpc
como la red.En la sección Destino, en Rangos de IP, ingresa la dirección IP externa efímera de la VM que ejecuta Apache Web Server. Anotaste esta dirección IP en la sección Crea dos VM en la red
test-vpc
.Haz clic en Crear.
Agrega una regla de firewall para rechazar el tráfico de salida que se origina en todas las demás redes de VPC
Por último, agrega una regla de firewall que rechace el tráfico de salida de todas las demás redes de VPC en test-folder
.
En la consola de Google Cloud, ve a la página Políticas de firewall.
Haz clic en fw-egress-specific-vpc y, luego, en fw-egress-specific-vpc.
En Prioridad, ingresa
400
.En Descripción, ingresa
block-egress-all-traffic
.En Dirección del tráfico, selecciona Salida.
En Acción en caso de coincidencia, selecciona Rechazar.
En la sección Destino, para Rangos de IP, ingresa
0.0.0.0/0
.Haz clic en Crear.
Prueba la política de firewall jerárquica
Después de configurar la política de firewall jerárquica, sigue estos pasos para probar la política:
Ve a la consola de Google Cloud.
En el selector de proyectos de la parte superior de la página, selecciona
test-project
en el que creaste las redes de VPC.En la consola de Google Cloud, ve a la página Instancias de VM.
En la columna Conectar para
myvpc-vm
, haz clic en SSH.En el cuadro de diálogo SSH en el navegador, haz clic en Autorizar y espera a que se establezca la conexión.
Para verificar que se permita el tráfico de salida a
testvpc-apache-vm
desdemyvpc
, ejecuta el siguiente comando:curl <external_ephemeral_IP_testvpc_apache_vm> -m 2
Mediante el comando anterior, se muestra el contenido que especificaste para la página
index.html
del servidor web Apache, lo que significa que se permiten las conexiones de salida demyvpc
.Para verificar que el tráfico de salida esté bloqueado en cualquier otra red de VPC de la organización, haz lo siguiente:
En la consola de Google Cloud, ve a la página Instancias de VM.
En la columna Conectar para
testvpc-vm
, haz clic en SSH.En el cuadro de diálogo SSH en el navegador, haz clic en Autorizar y espera a que se establezca la conexión.
Para verificar que el tráfico de salida de
testvpc-vm
atestvpc-apache-vm
esté bloqueado, ejecuta el siguiente comando:curl <internal_IP_testvpc_apache_vm> -m 2
El comando anterior muestra un mensaje de
Connection timed out
, como se espera, porque creaste una regla de firewall para denegar el tráfico de salida de todas las redes de VPC en la organización, excepto demyvpc
.
Realiza una limpieza
Para evitar que se apliquen cargos a tu cuenta de Google Cloud por los recursos que usaste en esta guía de inicio rápido, borra los recursos individuales y, luego, borra el proyecto y la carpeta.
Para borrar los recursos que se crearon en esta guía de inicio rápido, completa las siguientes tareas.
Borra la política de firewall jerárquica
Ve a la consola de Google Cloud.
En el selector de proyectos de la parte superior de la página, selecciona
test-folder
en el que creaste los recursos para esta guía de inicio rápido.En la consola de Google Cloud, ve a la página Políticas de firewall.
En la sección Políticas de firewall asociadas con este nodo o heredadas por el nodo, haz clic en fw-egress-specific-vpc.
Haz clic en la pestaña Asociaciones.
Selecciona la casilla de verificación de test-folder y haz clic en Quitar asociación.
En el cuadro de diálogo Quitar asociación con
test-folder
, haz clic en Borrar.Haz clic en Borrar.
En el cuadro de diálogo Borrar
fw-egress-specific-vpc
, haz clic en Borrar.
Borra las VMs
Ve a la consola de Google Cloud.
En el selector de proyectos de la parte superior de la página, selecciona test-project.
En la consola de Google Cloud, ve a la página Instancias de VM.
Selecciona las casillas de verificación de myvpc-vm, myvpc-vm y myvpc-vm.
Haz clic en Borrar.
En el cuadro de diálogo Borrar 3 instancias, haz clic en Borrar.
Borra el Cloud Router y la puerta de enlace de Cloud NAT
En la consola de Google Cloud, ve a la página Cloud Routers.
Selecciona la casilla de verificación de myvpc-router.
Haz clic en Borrar.
En el cuadro de diálogo Borrar
myvpc-router
, haz clic en Borrar.
Cuando borras un Cloud Router, también se borra la puerta de enlace de Cloud NAT asociada.
Borra la red de VPC y sus subredes
En la consola de Google Cloud, ve a la página Redes de VPC.
En la columna Nombre, haz clic en myvpc.
Haz clic en Borrar la red de VPC.
En el diálogo Borrar una red, haz clic en Borrar.
Del mismo modo, borra la red
test-vpc
.
Cuando borras una red de VPC, también se borran sus subredes.
Borra el proyecto
- In the Google Cloud console, go to the Manage resources page.
- If the project that you plan to delete is attached to an organization, expand the Organization list in the Name column.
- In the project list, select the project that you want to delete, and then click Delete.
- In the dialog, type the project ID, and then click Shut down to delete the project.
Borra la carpeta
En la consola de Google Cloud, ve a la página Administrar recursos.
Si la carpeta que deseas borrar está vinculada con una organización, expande la lista Organización en la columna Nombre.
En la lista de carpetas, selecciona test-folder y haz clic en Borrar.
En el cuadro de diálogo, escribe el ID de la carpeta y haz clic en Borrar de todos modos para borrar el proyecto.
¿Qué sigue?
- Para conocer los conceptos de las políticas de firewall, consulta la Descripción general de las políticas de firewall.
- Para conocer los conceptos de las reglas de la política de firewall, consulta la descripción general de las reglas de la política de firewall.
- Para crear, actualizar, supervisar y borrar reglas de firewall de VPC, consulta Usa reglas de firewall de VPC.
- Para determinar los costos, consulta Precios de Cloud NGFW.