Obtén información para crear y configurar una política de firewall jerárquica que permita el tráfico de salida que se origina en una red de nube privada virtual (VPC) específica de tu carpeta hacia 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 la 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 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.
Roles required to enable APIs
To enable APIs, you need the Service Usage Admin IAM role (
roles/serviceusage.serviceUsageAdmin
), which contains theserviceusage.services.enable
permission. Learn how to grant roles.
Crea una carpeta
Crea una carpeta en tu organización.
En la Google Cloud consola, 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 Google Cloud consola, 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 en modo personalizado, myvpc
con una subred solo IPv4 y test-vpc
con dos subredes solo IPv4, en el proyecto que creaste en la sección anterior.
En la Google Cloud consola, en la página del selector de proyectos, 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 VMs 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.
En el panel Configuración de la máquina, haz lo siguiente:
- En Nombre, ingresa
myvpc-vm
. - En Región, selecciona
us-central1 (Iowa)
.
- En Nombre, ingresa
En el menú de navegación, haz clic en Herramientas de redes.
- En la sección Interfaces de red, haz clic en
default
y especifica los siguientes parámetros de configuración:- Red:
myvpc
- Subred:
subnet-1 IPv4 (10.0.0.0/24)
- Dirección IPv4 externa: ninguna
- Red:
- Haz clic en Listo.
- En la sección Interfaces de red, haz clic en
Haz clic en Crear.
Crea dos VMs en la red test-vpc
.
Crea dos VMs, una sin 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.
En el panel Configuración de la máquina, haz lo siguiente:
- En Nombre, ingresa
testvpc-vm
. - En Región, selecciona
us-central1 (Iowa)
.
- En Nombre, ingresa
En el menú de navegación, haz clic en Herramientas de redes.
- En la sección Interfaces de red, haz clic en
default
y especifica los siguientes parámetros de configuración:- Red:
test-vpc
- Subred:
testvpc-subnet-1 IPv4 (10.0.0.0/16)
- Dirección IPv4 externa: ninguna
- Red:
- Haz clic en Listo.
- En la sección Interfaces de red, haz clic en
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:
En la consola de Google Cloud , ve a la página Crear una instancia.
En el panel Configuración de la máquina, haz lo siguiente:
- En Nombre, ingresa
testvpc-apache-vm
. - En Región, selecciona
us-central1 (Iowa)
.
- En Nombre, ingresa
En el menú de navegación, haz clic en Herramientas de redes.
- En la sección Interfaces de red, haz clic en
default
y especifica los siguientes parámetros de configuración:- Red:
test-vpc
- Subred:
testvpc-subnet-ext IPv4 (192.168.1.0/24)
- Dirección IPv4 externa:efímera
- Red:
- Haz clic en Listo.
- En la sección Interfaces de red, haz clic en
En el menú de navegación, haz clic en Opciones avanzadas y, luego, 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 Crear.
Anota la dirección IP externa efímera asignada a esta VM en 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 de Apache que se ejecuta en testvpc-apache-vm
a través de 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 myvpc-vm
.
En la Google Cloud consola, 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 se 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:
- Habilita IAP para todas las VMs en
test-folder
para habilitar el acceso de administrador a las VMs. - Permite el tráfico de entrada a todas las VMs en la red
test-vpc
. - Delega el tráfico de salida de la red
myvpc
a la siguiente regla de la jerarquía, que es la reglaVPC firewall implied IPv4 rule egress all
. - Rechaza 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 de selección de proyecto 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. Agregarás las reglas de firewall en las siguientes secciones de esta guía de inicio rápido.
En la sección Asocia la política con los 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 VMs 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 con 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 Agregar regla.
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 VMs 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 Agregar regla.
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 Segmentación, 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 de 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 del firewall, que es la regla de firewall de VPC de permiso de salida IPv4 implícito.
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 Agregar regla.
En Prioridad, ingresa
300
.En Descripción, ingresa
delegate-egress-myvpc
.En Dirección del tráfico, selecciona Salida.
En Acción si hay coincidencia, selecciona Ir al siguiente.
En la sección Segmentación, 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 el servidor web Apache. Anotaste esta dirección IP en la sección Crea dos VMs 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 que sale 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 Agregar regla.
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 probarla:
Ve a la consola de Google Cloud .
En el selector de proyectos que se encuentra en la parte superior de la página, selecciona
test-project
, donde creaste las redes de VPC.En la Google Cloud consola, ve a la página Instancias de VM.
En la columna Conectar de
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
El comando anterior 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 desdeindex.html
.myvpc
Para verificar que el tráfico de salida esté bloqueado desde cualquier otra red de VPC de la organización, haz lo siguiente:
En la Google Cloud consola, ve a la página Instancias de VM.
En la columna Conectar de
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 de la organización, excepto demyvpc
.
Limpia
Para evitar que se apliquen cargos a tu Google Cloud cuenta por los recursos que se usan 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 que se encuentra en la parte superior de la página, selecciona
test-folder
, donde 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 Firewall policies associated with this node or inherited by the node, 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 la asociación con
test-folder
, haz clic en Borrar.Haz clic en Borrar.
En el 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 que se encuentra en la parte superior de la página, selecciona test-project.
En la Google Cloud consola, ve a la página Instancias de VM.
Selecciona las casillas de verificación de myvpc-vm, testvpc-vm y testvpc-apache-vm.
Haz clic en Borrar.
En el cuadro de diálogo Borrar 3 instancias, haz clic en Borrar.
Borra Cloud Router y la puerta de enlace de Cloud NAT
En la consola Google Cloud , ve a la página Cloud Routers.
Selecciona la casilla de verificación de myvpc-router.
Haz clic en Borrar.
En el 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 Google Cloud consola, 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, luego, haz clic en Borrar.
En el diálogo, escribe el ID de la carpeta y, luego, 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 políticas de firewall, consulta la descripción general de las reglas de políticas 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.