Configurar Google Cloud Armor Adaptive Protection

En esta página se ofrece información sobre cómo configurar Protección adaptativa. Antes de configurar Adaptive Protection, familiarízate con la información del resumen de Adaptive Protection y con los casos prácticos de Adaptive Protection.

Antes de empezar

En las siguientes secciones se explican todos los roles y permisos de Gestión de Identidades y Accesos (IAM) necesarios para configurar las políticas de seguridad de Cloud Armor. Para los casos prácticos de este documento, solo necesitas el permiso compute.securityPolicies.update.

Configurar permisos de gestión de identidades y accesos para políticas de seguridad de Cloud Armor

Las siguientes operaciones requieren el rol de gestión de identidades y accesos Administrador de seguridad de Compute (roles/compute.securityAdmin):

  • Configurar, modificar, actualizar y eliminar una política de seguridad de Cloud Armor
  • Usando los siguientes métodos de la API:
    • SecurityPolicies insert
    • SecurityPolicies delete
    • SecurityPolicies patch
    • SecurityPolicies addRule
    • SecurityPolicies patchRule
    • SecurityPolicies removeRule

Un usuario con el rol Administrador de red de Compute (roles/compute.networkAdmin) puede realizar las siguientes operaciones:

  • Configurar una política de seguridad de Cloud Armor para un servicio de backend
  • Usando los siguientes métodos de la API:
    • BackendServices setSecurityPolicy
    • BackendServices list (solo gcloud)

Los usuarios con el rol Administrador de seguridad (roles/iam.securityAdmin) y el rol Administrador de redes de Compute pueden ver las políticas de seguridad de Cloud Armor mediante los métodos de la API SecurityPolicies get, list y getRule.

Configurar permisos de gestión de identidades y accesos para roles personalizados

En la siguiente tabla se indican los permisos base de los roles de gestión de identidades y accesos y los métodos de API asociados.

Permiso de gestión de identidades y accesos Métodos de la API
compute.securityPolicies.create SecurityPolicies insert
compute.securityPolicies.delete SecurityPolicies delete
compute.securityPolicies.get SecurityPolicies get
SecurityPolicies getRule
compute.securityPolicies.list SecurityPolicies list
compute.securityPolicies.use BackendServices setSecurityPolicy
compute.securityPolicies.update SecurityPolicies patch
SecurityPolicies addRule
SecurityPolicies patchRule
SecurityPolicies removeRule
compute.backendServices.setSecurityPolicy BackendServices setSecurityPolicy

Habilitar Protección adaptativa

Sigue estos pasos para habilitar Protección adaptativa en tu política de seguridad. Adaptive Protection se aplica a cada política de seguridad de forma individual.

Consola

Para activar Adaptive Protection en una política de seguridad, sigue estos pasos:

  1. En la Google Cloud consola, ve a la página Seguridad de red.

    Ir a Seguridad de red

  2. En la página Políticas, haga clic en el nombre de una política de seguridad.

  3. Haz clic en Editar.

  4. En Protección adaptativa, selecciona Habilitar.

  5. Haz clic en Actualizar.

Para desactivar Protección adaptativa en una política de seguridad, sigue estos pasos:

  1. En la Google Cloud consola, ve a la página Seguridad de red.

    Ir a Seguridad de red

  2. En la página Políticas, haga clic en el nombre de una política de seguridad.

  3. Haz clic en Editar.

  4. En Protección adaptativa, desmarca Habilitar.

  5. Haz clic en Actualizar.

gcloud

Para activar Adaptive Protection en una política de seguridad, sigue estos pasos:

gcloud compute security-policies update MY-SECURITY-POLICY \
    --enable-layer7-ddos-defense

Para desactivar Protección adaptativa en una política de seguridad, sigue estos pasos:

gcloud compute security-policies update MY-SECURITY-POLICY \
    --no-enable-layer7-ddos-defense

Configurar modelos granulares

La función de modelos granulares le permite configurar hosts o rutas específicos como unidades granulares que analiza Protección adaptativa. En los siguientes ejemplos, se crean unidades de tráfico granulares para cada host, se personaliza una unidad de tráfico granular y se configura Protección adaptativa para que tome medidas cuando el tráfico supere las consultas por segundo (CPS) de referencia. Para obtener más información sobre los modelos granulares, consulta la descripción general de Protección adaptativa.

Configurar unidades de tráfico granulares

En los ejemplos de esta sección se usa el comando add-layer7-ddos-defense-threshold-config con algunas o todas las marcas siguientes:

Bandera Descripción
--threshold-config-name Nombre de la configuración del umbral.
--traffic-granularity-configs Opciones de configuración para habilitar Adaptive Protection en la granularidad de servicio especificada.
--auto-deploy-impacted-baseline-threshold Umbral del impacto estimado de Adaptive Protection en el tráfico de referencia de la regla de mitigación sugerida para un ataque detectado. Las defensas automáticas solo se aplican si no se supera el umbral.
--auto-deploy-expiration-sec La duración de las acciones que lleve a cabo la implementación automática, si las hay.
--detection-load-threshold Umbral de detección basado en la carga del servicio de backend.
--detection-absolute-qps Umbral de detección basado en QPS absoluto.
--detection-relative-to-baseline-qps Umbral de detección basado en las QPS en relación con la media del tráfico de referencia.

En el primer ejemplo, se configura Protección adaptativa para detectar ataques y sugerir mitigaciones independientes para cada host que se encuentre detrás del servicio de backend, sin anular ningún umbral predeterminado.

gcloud

  1. Crea una política de seguridad con el nombre POLICY_NAME o usa una que ya tengas.
  2. Si Protección adaptativa aún no está habilitada, usa el siguiente comando para habilitarla en tu política:
    gcloud compute security-policies update POLICY_NAME 
    --enable-layer7-ddos-defense
  3. Aplica la política de seguridad a un servicio de backend con varios hosts.
  4. Usa el siguiente comando add-layer7-ddos-defense-threshold-config con la marca --traffic-granularity-configs para configurar una unidad de tráfico granular:
    gcloud compute security-policies add-layer7-ddos-defense-threshold-config POLICY_NAME 
    --threshold-config-name=per-host-config
    --traffic-granularity-configs=type=HTTP_HEADER_HOST;enableEachUniqueValue=true

En el segundo ejemplo, se configuran diferentes umbrales de detección y de implementación automática para algunas o todas las unidades de tráfico granulares que se configuraron en el primer ejemplo.

gcloud

  1. Si la implementación automática de Protección adaptativa aún no está habilitada, crea una regla de marcador de posición.
  2. El siguiente comando personaliza el umbral de implementación automática de una unidad de tráfico granular con un HTTP_HEADER_HOST de HOST y un HTTP_PATH de PATH. Use este comando para cada unidad de tráfico granular que quiera personalizar. Sustituya las variables según sea necesario para cada host y ruta de URL:
    gcloud compute security-policies add-layer7-ddos-defense-threshold-config POLICY_NAME 
    --threshold-config-name=my-host-config
    --auto-deploy-impacted-baseline-threshold=0.01
    --auto-deploy-expiration-sec=3600
    --traffic-granularity-configs=type=HTTP_HEADER_HOST;value=HOST,type=HTTP_PATH;value=PATH

Detectar cuándo el volumen de ataques supera el promedio de QPS de referencia

En el siguiente ejemplo, se configura Protección adaptativa para detectar un ataque solo cuando el volumen del ataque supere en más de un 50 % el promedio de consultas por segundo de la línea de base y solo cuando la carga del servicio backend sea superior al 90% de su capacidad.

gcloud

  1. Crea una política de seguridad con el nombre POLICY_NAME o usa una que ya tengas.
  2. Si Protección adaptativa aún no está habilitada, usa el siguiente comando para habilitarla en tu política:

    gcloud compute security-policies update POLICY_NAME \
      --enable-layer7-ddos-defense
    
  3. Aplica la política de seguridad a un servicio de backend.

  4. Usa el siguiente comando para configurar Protección adaptativa con umbrales de detección personalizados:

    gcloud compute security-policies add-layer7-ddos-defense-threshold-config POLICY_NAME \
       --threshold-config-name=my-customized-thresholds \
       --detection-load-threshold=0.9 \
       --detection-relative-to-baseline-qps=1.5
    

Siguientes pasos