En las siguientes secciones, se analiza cómo interactúa Google Cloud Armor con otras funciones y productos de Google Cloud.
Reglas de firewall de VPC y Google Cloud Armor
Las políticas de seguridad de Google Cloud Armor y las reglas de firewall de VPC tienen funciones diferentes.
- Las políticas de seguridad de Google Cloud Armor brindan seguridad perimetral y actúan sobre el tráfico de clientes en Google Front Ends (GFE).
- Las reglas de firewall de VPC permiten o deniegan el tráfico hacia y desde tus backends. Debes crear reglas de firewall de permiso de entrada, cuyos destinos sean de backend con balanceo de cargas y cuyas fuentes se Rangos de IP que usan los balanceadores de cargas de aplicaciones externos globales o los balanceadores de cargas de aplicaciones clásicos. Estas reglas permiten que los GFE y los sistemas de verificación de estado se comuniquen con tus VM de backend.
Por ejemplo, imagina una situación en la que quieres permitir tráfico solo desde rango CIDR 100.1.1.0/24 y rango CIDR 100.1.2.0/24 para acceder a tu el balanceador de cargas de aplicaciones externo global o el balanceador de cargas de aplicaciones clásico. Tu objetivo es garantizar que el tráfico no pueda alcanzar directamente a las instancias de balanceo de cargas de backend. En otras palabras, solo el tráfico externo se procesa a través del balanceador de cargas de aplicaciones externo global o del balanceador de cargas de aplicaciones clásico con una política de seguridad asociada debería llegar a las instancias.
En la ilustración anterior, puedes lograr tus objetivos de seguridad mediante la configuración de la implementación de Google Cloud de la siguiente manera:
- Crea dos grupos de instancias, uno en la región
us-west1
y otro en la regióneurope-west1
. - Implementa instancias de aplicaciones de backend en las VM de los grupos de instancias.
- Crea un balanceador de cargas de aplicaciones externo global o un balanceador de cargas de aplicaciones clásico en el nivel Premium. Configura un mapa de URL simple y un servicio de backend único cuyos backends sean los dos grupos de instancias que creaste en el paso anterior. Asegúrate de que la regla de reenvío del balanceador de cargas use la dirección IP externa
120.1.1.1
. - Configura una política de seguridad de Google Cloud Armor que permita el tráfico desde 100.1.1.0/24 y 100.1.2.0/24 y deniegue todo el resto del tráfico.
- Asocia esta política con el servicio de backend del balanceador de cargas. Para obtener instrucciones, consulta Configura políticas de seguridad. Los balanceadores de cargas de HTTP(S) externos con mapas de URL más complejos pueden hacer referencia a varios servicios de backend. Puedes asociar la política de seguridad con uno o más de los servicios de backend, según sea necesario.
- Configura las reglas de firewall de permiso de entrada para permitir el tráfico desde el externo global o el clásico. Para obtener más información, consulta las Reglas de firewall.
Google Cloud Armor con balanceadores de cargas de aplicaciones externos y IAP
Identity-Aware Proxy (IAP) verifica la identidad de un usuario y, luego, determina si se le debe permitir el acceso a una aplicación. Si quieres habilitar IAP para el balanceador de cargas de aplicaciones externo global o el balanceador de cargas de aplicaciones clásico, debes habilitarlo en los servicios de backend del balanceador de cargas. Del mismo modo, el perímetro de Google Cloud Armor las políticas de seguridad se vinculan a los servicios de backend de una externo global o un balanceador de cargas de aplicaciones clásico.
Si las políticas de seguridad de Google Cloud Armor y IAP son habilitado para un servicio de backend, el orden de su evaluación depende del del balanceador de cargas:
Para un servicio de backend de un balanceador de cargas de aplicaciones externo global, Google Cloud Armor la evaluación sucede primero. Si Google Cloud Armor bloquea una solicitud, IAP no evalúa la solicitud. Si Google Cloud Armor permite una solicitud, Luego, IAP evalúa la solicitud. La solicitud se bloquea si IAP hace no autentica la solicitud.
Para un servicio de backend de un balanceador de cargas de aplicaciones clásico, La evaluación de IAP ocurre primero. Si IAP autentica una solicitud, Google Cloud Armor evaluará la solicitud. Si una solicitud falla la autenticación con IAP, Google Cloud Armor no evalúa la solicitud.
Para obtener más información sobre IAP y las opciones de configuración relacionadas, consulta la documentación de Identity-Aware Proxy.
Google Cloud Armor con implementaciones híbridas
En una implementación híbrida, un balanceador de cargas de aplicaciones externo global o un balanceador de cargas de aplicaciones clásico necesita acceso a una aplicación o fuente de contenido que se ejecuta fuera de Google Cloud, por ejemplo, en la infraestructura de otro proveedor de servicios en la nube. Puedes usar Google Cloud Armor para proteger esas implementaciones.
En el siguiente diagrama, el balanceador de cargas tiene dos servicios de backend. Uno tiene un grupo de instancias como backend. El otro servicio de backend tiene un NEG de Internet como backend, y el NEG de Internet está asociado con una aplicación que se ejecuta en el centro de datos de un proveedor externo.
Cuando adjuntas una política de seguridad de Google Cloud Armor al servicio de backend que tiene un NEG de Internet como backend, Google Cloud Armor inspecciona cada solicitud de L7 que llega al balanceador de cargas de aplicaciones externo global o al balanceador de cargas de aplicaciones clásico que está destinado a ese servicio de backend.
La protección de Google Cloud Armor para implementaciones híbridas está sujeta a las mismas limitaciones que se aplican a los NEG de Internet.
Entrada de Google Cloud Armor con Google Kubernetes Engine (GKE)
Después de configurar una política de seguridad de Google Cloud Armor, puedes usar Ingress de Kubernetes para habilitarla con GKE.
Para hacer referencia a tu política de seguridad con un recurso BackendConfig
, agrega el nombre de tu política de seguridad a BackendConfig
. En el siguiente manifiesto de BackendConfig
, se especifica una política de seguridad llamada example-security-policy
:
apiVersion: cloud.google.com/v1
kind: BackendConfig
metadata:
namespace: cloud-armor-how-to
name: my-backendconfig
spec:
securityPolicy:
name: "example-security-policy"
Para obtener más información sobre las características de Ingress, consulta Configura características de Ingress.
Google Cloud Armor con Cloud CDN
Para proteger los servidores de origen de CDN, puedes usar Google Cloud Armor con Cloud CDN. Google Cloud Armor protege tu servidor de origen de CDN de los ataques de las aplicaciones, mitiga los 10 riesgos principales de OWASP y aplica las políticas de filtrado de la capa 7. Existen dos tipos de políticas de seguridad que afectan cómo funciona Google Cloud Armor con Cloud CDN: las políticas de seguridad perimetral y las políticas de seguridad de backend.
Políticas de seguridad perimetral
Puedes usar las políticas de seguridad perimetral para los servicios de backend habilitados de Cloud CDN y los buckets de backend de Cloud Storage detrás del balanceador de cargas de aplicaciones externo global o el balanceador de cargas de aplicaciones clásico. Usa las políticas de seguridad perimetral para filtrar las solicitudes antes de que el contenido se entregue desde la caché.
Políticas de seguridad de backend
Cuando las políticas de seguridad de backend de Google Cloud Armor se aplican a los servicios de backend con Cloud CDN habilitado, solo se aplican a las solicitudes enrutadas al servicio de backend. Estas solicitudes incluyen solicitudes de contenido dinámico y errores de caché, es decir, solicitudes que omiten la caché de Cloud CDN.
Cuando las políticas de seguridad perimetral y de backend se vinculan al mismo servicio de backend, las políticas de seguridad de backend se aplican solo para error de caché solicitudes que pasaron las políticas de seguridad perimetral
En el siguiente diagrama, se muestra de forma exclusiva cómo funcionan las políticas de seguridad de backend con los orígenes de Cloud CDN, después de que las políticas de seguridad perimetral permiten las solicitudes.
Para obtener más información sobre Cloud CDN, consulta la documentación de Cloud CDN.
Google Cloud Armor con funciones de Cloud Run, App Engine o Cloud Run
Puedes usar las políticas de seguridad de Google Cloud Armor con un backend de NEG sin servidores que apunte a Cloud Run, App Engine o Cloud Run Functions servicio.
Sin embargo, cuando usas Google Cloud Armor con NEG sin servidores, Cloud Run, o Cloud Run Functions, debes aplicar pasos para garantizar que todo el acceso al extremo sin servidores se filtre Política de seguridad de Google Cloud Armor.
Los usuarios que tengan la URL predeterminada de una aplicación sin servidores pueden omitir la carga balanceador de cargas y se dirigirán directamente a la URL del servicio. De esta manera, se omite Google Cloud Armor las políticas de seguridad de Google Cloud. Para solucionar este problema, inhabilita la URL predeterminada que Google Cloud asigna automáticamente a los servicios de Cloud Run o a las funciones de Cloud Run (2ª gen.). Para proteger las aplicaciones de App Engine, puedes usar los controles de entrada.
Si usas controles de entrada para asegurarte de que tus controles de acceso se apliquen a todo el tráfico entrante, puedes usar internal-and-gclb
cuando configures las funciones de Cloud Run o Cloud Run. Esto solo permite el tráfico interno y el tráfico enviado a una dirección IP externa que expone el balanceador de cargas de aplicaciones externo global o el balanceador de cargas de aplicaciones clásico. El tráfico que se
enviados a estas URLs predeterminadas desde fuera de tu red privada
Esto evita que los usuarios eludan cualquier
configuración de controles de acceso (como las políticas de seguridad de Google Cloud Armor)
a través del balanceador de cargas de aplicaciones externo global o el balanceador de cargas de aplicaciones clásico.
Para obtener más información sobre los NEG sin servidores, consulta Descripción general de los grupos de extremos de redes sin servidores y Configura NEG sin servidores.
¿Qué sigue?
- Configura, reglas, expresiones y políticas de seguridad
- Obtén información sobre las funciones de los niveles de Cloud Armor Enterprise
- Soluciona problemas