Este artículo te guiará a través de la implementación de AWS Network Firewall en una arquitectura multicuenta de alta disponibilidad (que abarca 3 zonas de disponibilidad) en conjunto con un Transit Gateway para conectar VPCs a través de diferentes cuentas dentro de una estructura de AWS Organizations. La arquitectura sigue un patrón de Hub & Spoke, donde la cuenta Hub es la cuenta de Networking, y las cuentas Spoke incluyen Desarrollo, QA, Producción y DevOps.
En un entorno multicuenta, AWS Network Firewall juega un papel clave al proporcionar protección de red centralizada, permitiendo controles de seguridad consistentes e inspección de tráfico a través de todas las cuentas. Esta implementación adopta un modelo de ingreso centralizado, egreso centralizado e inspección centralizada, asegurando que el tráfico entrante, saliente y entre VPCs sea enrutado de manera segura a través de una única capa de inspección gestionada por la cuenta de Networking.
Pasos de Implementación
Las siguientes secciones proporcionan un recorrido paso a paso del proceso de configuración de la red, mostrando cómo cada componente, incluyendo el Transit Gateway, VPCs compartidas, VPCs de carga de trabajo y AWS Network Firewall, se integra para crear una base segura y escalable para la conectividad y la inspección entre cuentas.
Configura el Transit Gateway
Crea un Transit Gateway.
-
Crea dos tablas de enrutamiento de Transit Gateway:
tgw-default-association-rtb
tgw-default-propagation-rtb
-
Modifica el Transit Gateway y asigna:
-
tgw-default-association-rtb
como la Tabla de Enrutamiento de Asociación Predeterminada -
tgw-default-propagation-rtb
como la Tabla de Enrutamiento de Propagación Predeterminada
-
-
En AWS RAM, crea un Resource Share con:
- El Transit Gateway recién creado como el Shared resource
- Las cuentas Spoke como los Shared principals
(Opcional) Crea un TGW Flow Log para el Transit Gateway para monitorear y registrar el tráfico que fluye a través de él.
Notas para la Creación de Subred y Selección de Zona de Disponibilidad:
Creación de Subred: Cuando creas una VPC que tendrá conectividad con el Transit Gateway (TGW), se recomienda crear una subred /28 exclusivamente para alojar las Interfaces de Red Elásticas (ENIs) desplegadas por TGW. Esto sigue las mejores prácticas para una gestión eficiente de recursos.
Selección de AZ: Elige el mismo ID de Zona de Disponibilidad (AZ), en lugar del nombre de AZ, para evitar cargos por tráfico entre zonas. Por ejemplo, en este caso, estamos usando use1-az1, use1-az2, use1-az4. Es importante notar que us-east-1a y us-east-1b son alias únicos para cada cuenta de AWS. Para asegurarte de que despliegas tus recursos en la misma AZ, usa IDs de AZ en lugar de alias.
Soporte de Network Firewall: AWS Network Firewall no es soportado en us1-az3, por lo que elegimos usar use1-az4 en su lugar.
Identificación de Subred: Se recomienda añadir el ID de AZ en la etiqueta de nombre de la subred y la tabla de enrutamiento asociada para una fácil identificación y gestión.
Construye la VPC de Ingreso
-
Crea una VPC (por ejemplo, nombrada VPC de ingreso, CIDR
10.20.0.0/20
) con:- 3 subredes públicas (por ejemplo,
/22
) - 3 subredes privadas para conectividad TGW (
/28
) - 1 Internet Gateway
- 3 subredes públicas (por ejemplo,
Crea un Transit Gateway attachment entre el Transit Gateway y la VPC de Ingreso, seleccionando los IDs de Subred de las 3 subredes de conectividad TGW.
-
Configura la Tabla de Enrutamiento de Subred de Conectividad TGW (esta tabla de enrutamiento solo tendrá una ruta local):
-
ingress-vpc-tgw-connectivity-rtb
Destino Objetivo Descripción 10.20.0.0/20
local
VPC de Ingreso
-
-
Configura la Tabla de Enrutamiento de Subred Pública (esta tabla de enrutamiento necesita una ruta
0.0.0.0/0
al Internet Gateway y rutas a los CIDRs de las VPCs Spoke para ir a través del attachment TGW):-
ingress-vpc-public-rtb
Destino Objetivo Descripción 10.20.0.0/20
local
VPC de Ingreso 10.21.0.0/16
tgw
VPC de Desarrollo 10.22.0.0/16
tgw
VPC de QA 10.23.0.0/16
tgw
VPC de Producción 10.24.0.0/16
tgw
VPC de DevOps 0.0.0.0/0
igw
Acceso a Internet
-
Opcional: Crea un VPC Flow Log para la VPC para monitorear y registrar el tráfico que fluye a través de la VPC de Ingreso.
Construye la VPC de Inspección
-
Crea una VPC (por ejemplo, nombrada VPC de inspección, CIDR
10.20.16.0/20
) con:- 3 subredes privadas para Network Firewall (por ejemplo,
/22
) - 3 subredes privadas para conectividad TGW (
/28
)
- 3 subredes privadas para Network Firewall (por ejemplo,
-
Crea un Transit Gateway attachment entre el Transit Gateway y la VPC de Inspección, seleccionando los IDs de Subred de las 3 subredes de conectividad TGW. Habilita Appliance Mode Support.
- Nota: Habilitar Appliance Mode en el attachment del Transit Gateway asegura que todo el tráfico de una sesión fluya a través del mismo firewall en la misma Zona de Disponibilidad, previniendo que el tráfico entre AZ sea inspeccionado por el firewall. Esta configuración es importante para mantener una inspección de tráfico consistente y mejorar el rendimiento en arquitecturas multi-AZ.
-
Edita manualmente las Tablas de Enrutamiento del Transit Gateway:
- Remueve la propagación del attachment de la VPC de Inspección en la Tabla de Enrutamiento de Propagación Predeterminada del TGW.
- Remueve la asociación del attachment de la VPC de Inspección en la Tabla de Enrutamiento de Asociación Predeterminada del TGW.
- Asocia la Tabla de Enrutamiento de Propagación Predeterminada del TGW con el Attachment de la VPC de Inspección.
- En la Tabla de Enrutamiento de Asociación Predeterminada del TGW, crea una ruta estática a
0.0.0.0/0
hacia el Attachment de la VPC de Inspección.
-
En la consola de AWS Network Firewall:
- Elige Crear firewall.
- En Describir firewall: Añade un nombre y (opcionalmente) una descripción.
- En Tipo de asociación: Elige “VPC” y selecciona la VPC de Inspección.
- En Subredes del Firewall: Selecciona las 3 subredes privadas (no las subredes de conectividad).
- En Asociar Política de Firewall: Elige “Crear y asociar una política de firewall vacía” y especifica un nuevo nombre de política de firewall.
- Crea el firewall; esto tomará unos minutos.
-
Configura las Tablas de Enrutamiento de Subred de Conectividad TGW (una por AZ). En cada tabla de enrutamiento, añade una ruta a su correspondiente endpoint de VPC de AWS Network Firewall (de tipo Gateway Load Balancer Endpoint) por AZ:
-
inspection-vpc-tgw-connectivity-rtb-use1-az1
Destino Objetivo Descripción 10.20.16.0/20
local
VPC de Inspección 0.0.0.0/0
nfw-use1-az1
Endpoint de firewall para use1-az1 -
inspection-vpc-tgw-connectivity-rtb-use1-az2
Destino Objetivo Descripción 10.20.16.0/20
local
VPC de Inspección 0.0.0.0/0
nfw-use1-az2
Endpoint de firewall para use1-az2 -
inspection-vpc-tgw-connectivity-rtb-use1-az4
Destino Objetivo Descripción 10.20.16.0/20
local
VPC de Inspección 0.0.0.0/0
nfw-use1-az4
Endpoint de firewall para use1-az4
-
-
Configura la Tabla de Enrutamiento de Subred Privada (esta tabla de enrutamiento necesita una ruta
0.0.0.0/0
al attachment del Transit Gateway):-
inspection-vpc-private-rtb
Destino Objetivo Descripción 10.20.16.0/20
local
VPC de Inspección 0.0.0.0/0
tgw
Transit Gateway
-
Opcional: Crea un VPC Flow Log para la VPC para monitorear y registrar el tráfico que fluye a través de la VPC de Inspección.
Construye la VPC de Egreso
-
Crea una VPC (por ejemplo, nombrada VPC de egreso, CIDR
10.20.32.0/20
) con:- 3 subredes públicas (por ejemplo,
/22
) - 3 subredes privadas para conectividad TGW (
/28
) - 1 Internet Gateway
- 1 NAT Gateway por AZ para alta disponibilidad
- 3 subredes públicas (por ejemplo,
Crea un Transit Gateway attachment entre el Transit Gateway y la VPC de Egreso, seleccionando los IDs de Subred de las 3 subredes de conectividad TGW.
-
Edita manualmente las Tablas de Enrutamiento del Transit Gateway:
- En la Tabla de Enrutamiento de Propagación Predeterminada del TGW, crea una ruta estática a
0.0.0.0/0
hacia el Attachment de la VPC de Egreso.
- En la Tabla de Enrutamiento de Propagación Predeterminada del TGW, crea una ruta estática a
-
Configura las Tablas de Enrutamiento de Subred de Conectividad TGW (crea una tabla de enrutamiento por AZ, y en cada tabla añade una ruta
0.0.0.0/0
a su correspondiente NAT Gateway):-
egress-vpc-tgw-connectivity-rtb-use1-az1
Destino Objetivo Descripción 10.20.32.0/20
local
VPC de Egreso 0.0.0.0/0
natgw-use1-az1
NAT para use1-az1 -
egress-vpc-tgw-connectivity-rtb-use1-az2
Destino Objetivo Descripción 10.20.32.0/20
local
VPC de Egreso 0.0.0.0/0
natgw-use1-az2
NAT para use1-az2 -
egress-vpc-tgw-connectivity-rtb-use1-az4
Destino Objetivo Descripción 10.20.32.0/20
local
VPC de Egreso 0.0.0.0/0
natgw-use1-az4
NAT para use1-az4
-
-
Configura la Tabla de Enrutamiento de Subred Pública (esta tabla de enrutamiento necesita una ruta
0.0.0.0/0
al Internet Gateway y rutas a los CIDRs de las VPCs Spoke para ir a través del attachment TGW):-
egress-vpc-public-rtb
Destino Objetivo Descripción 10.20.32.0/20
local
VPC de Egreso 10.21.0.0/16
tgw
VPC de Desarrollo 10.22.0.0/16
tgw
VPC de QA 10.23.0.0/16
tgw
VPC de Producción 10.24.0.0/16
tgw
VPC de DevOps 0.0.0.0/0
igw
Acceso a Internet
-
Opcional: Crea un VPC Flow Log para la VPC para monitorear y registrar el tráfico que fluye a través de la VPC de Egreso.
Construye las VPCs de Carga de Trabajo
-
Crea una VPC (por ejemplo, nombrada VPC de desarrollo, CIDR
10.21.0.0/16
) con:- 3 subredes privadas para cargas de trabajo (por ejemplo,
/20
) - 3 subredes privadas para conectividad TGW (
/28
)
- 3 subredes privadas para cargas de trabajo (por ejemplo,
Crea un Transit Gateway attachment entre el Transit Gateway y la VPC, seleccionando los IDs de Subred de las 3 subredes de conectividad TGW.
-
Configura la Tabla de Enrutamiento de Subred de Conectividad TGW — esta tabla de enrutamiento solo tendrá una ruta local:
-
development-vpc-tgw-connectivity-rtb
Destino Objetivo Descripción 10.21.0.0/16
local
VPC de Desarrollo
-
-
Configura la Tabla de Enrutamiento de Subred Privada — añade una ruta
0.0.0.0/0
al attachment del Transit Gateway:-
development-vpc-private-rtb
Destino Objetivo Descripción 10.21.0.0/16
local
VPC de Desarrollo 0.0.0.0/0
tgw
Transit Gateway
-
Opcional: Crea un VPC Flow Log para la VPC para monitorear y registrar el tráfico que fluye a través de la VPC de Carga de Trabajo.
Configura AWS Network Firewall
Este artículo se enfoca principalmente en configurar la Baseline de Red y el enrutamiento necesario para usar Network Firewall. A un alto nivel, AWS Network Firewall es un servicio gestionado que te permite proteger tu red filtrando el tráfico hacia y desde tus VPCs. Proporciona un firewall stateful y un sistema de detección y prevención de intrusiones que puede ser desplegado en línea con tu tráfico de red, inspeccionando y filtrando paquetes en tiempo real.
- En el Firewall, habilita el registro de Alerta y Flujo, y configura CloudWatch como el destino de los logs creando los grupos de logs necesarios.
-
Opcional: Edita la Política de Firewall previamente creada para:
- Añadir grupos de reglas gestionados por AWS
- Crear y añadir grupos de reglas stateless
- Crear y añadir grupos de reglas stateful
Revisa la Arquitectura Final
La arquitectura desplegada sigue un modelo de inspección centralizada usando AWS Transit Gateway y AWS Network Firewall para controlar y monitorear el tráfico entre VPCs compartidas y de carga de trabajo.
-
La Tabla de Enrutamiento de Asociación Predeterminada del Transit Gateway debería verse así:
-
tgw-default-association-rtb
CIDR Attachment Tipo de Recurso Tipo de Ruta 0.0.0.0/0
AWS Network Firewall Firewall Estático
-
-
La Tabla de Enrutamiento de Propagación Predeterminada del Transit Gateway debería verse así:
-
tgw-default-propagation-rtb
CIDR Attachment Tipo de Recurso Tipo de Ruta 10.21.0.0/16
VPC de Desarrollo VPC Propagado 10.22.0.0/16
VPC de QA VPC Propagado 10.23.0.0/16
VPC de Producción VPC Propagado 10.24.0.0/16
VPC de DevOps VPC Propagado 10.20.0.0/20
VPC de Ingreso VPC Propagado 10.20.32.0/20
VPC de Egreso VPC Propagado 0.0.0.0/0
VPC de Egreso VPC Estático
-
Si las tablas de enrutamiento no aparecen como se esperaba, desasocia y remueve cualquier asociación o propagación incorrecta, luego reasocia y repropaga los attachments con las tablas de enrutamiento apropiadas hasta que las tablas reflejen la configuración correcta.
El siguiente diagrama de arquitectura ilustra la configuración multicuenta final, donde el tráfico de las cuentas spoke (Desarrollo, QA, Producción y DevOps) es enrutado a través de la capa de inspección centralizada.
Valida Conectividad e Inspección de Tráfico
-
Opcionalmente, despliega instancias EC2 en las VPCs de Carga de Trabajo en subredes privadas de carga de trabajo a través de diferentes cuentas.
- Conecta usando Session Manager e intenta hacer ping entre las IPs privadas de las instancias.
- Asegúrate de que los grupos de seguridad permitan ICMP entrante y HTTPS saliente (
443
) a Internet (para Session Manager). - Los pings deberían ser exitosos.
-
Opcionalmente, despliega una VPN de cliente como OpenVPN o WireGuard en una instancia EC2 en una subred pública en la VPC de Ingreso.
- Conecta a través de la VPN e intenta hacer ping a las IPs privadas de las instancias EC2 en las VPCs de Carga de Trabajo.
- Asegúrate de que los grupos de seguridad permitan ICMP entrante.
- Los pings deberían ser exitosos.
-
Revisa los Grupos de Logs de CloudWatch para verificar los logs de Firewall de tipo Flujo. Deberías ver que todo el tráfico de prueba está pasando exitosamente a través del Network Firewall.
- El Grupo de Logs de tipo Alerta debería estar vacío por ahora, ya que la Política de Firewall de Red no ha sido configurada aún o el tráfico de prueba no coincide con ninguna regla de alerta.
Bonus: Attachment de Transit Gateway de Network Firewall
Durante re:Inforce 2025, AWS anunció la nueva característica de Attachment de Transit Gateway de Network Firewall, que reemplaza el patrón tradicional de “VPC de Inspección”, simplificando la implementación y mejorando la visibilidad del tráfico.
En lugar del paso "4. Crear VPC de Inspección", harías "4. Crear Attachment de Transit Gateway de Network Firewall".
-
En la consola de AWS Network Firewall:
- Selecciona Crear firewall.
- En Describir firewall: Añade un nombre y descripción para el firewall (opcional).
- En Tipo de Attachment: Elige
Transit Gateway
y selecciona el Transit Gateway. - En Zonas de Disponibilidad: Selecciona las 3 Zonas de Disponibilidad con las que has estado trabajando.
- En Asociar Política de Firewall: Selecciona
Crear y asociar una política de firewall vacía
y especifica un nuevo nombre para la política de firewall. - Crea el Firewall; tardará unos minutos.
-
Edita manualmente las Tablas de Enrutamiento de Transit Gateway:
- Remueve la propagación del attachment de Network Firewall TGW en la Tabla de Enrutamiento de Propagación Predeterminada del TGW.
- Remueve la asociación del attachment de Network Firewall TGW en la Tabla de Enrutamiento de Asociación Predeterminada del TGW.
- Asocia la Tabla de Enrutamiento de Propagación Predeterminada del TGW con el attachment de Network Firewall TGW.
- En la Tabla de Enrutamiento de Asociación Predeterminada del TGW, crea una ruta estática a
0.0.0.0/0
hacia el nuevo attachment de Network Firewall TGW.
-
La Tabla de Enrutamiento de Asociación Predeterminada del Transit Gateway se verá así:
-
tgw-default-association-rtb
CIDR Attachment Tipo de Recurso Tipo de Ruta 0.0.0.0/0
AWS Network Firewall Firewall Estático
-
La Tabla de Enrutamiento de Propagación Predeterminada del Transit Gateway permanecerá sin cambios en este escenario.
Conclusión
En conclusión, implementar AWS Network Firewall en una arquitectura multicuenta con Transit Gateway proporciona una infraestructura de red robusta, escalable y segura. Siguiendo los pasos descritos en este artículo, puedes implementar y configurar efectivamente Network Firewall para proteger tus VPCs a través de diferentes cuentas dentro de una estructura de AWS Organizations. El patrón Hub & Spoke, combinado con la alta disponibilidad de 3 Zonas de Disponibilidad, asegura que tu red sea resiliente y capaz de manejar varios patrones de tráfico y requisitos de seguridad. Además, el uso de VPC Flow Logs y el registro de Network Firewall permite un monitoreo y análisis detallado del tráfico de red, permitiéndote identificar y responder a posibles amenazas de seguridad con prontitud.
Top comments (0)