Habilitar la inspección de TLS

En esta página, se describe cómo habilitar la inspección de la seguridad de la capa de transporte (TLS). para tu instancia del Proxy web seguro.

Antes de comenzar

Antes de configurar el Proxy web seguro para la inspección de TLS, completa las tareas de las siguientes secciones.

Habilitar CAS

El proxy web seguro usa Certificate Authority Service (CAS) para generar los certificados que se usan para la inspección de TLS.

Para habilitar CAS, usa el siguiente comando:

  gcloud services enable privateca.googleapis.com
  

Crear grupo de CA

Debes crear un grupo de autoridades certificadoras (AC) antes de poder usar CAS para crear una AC. En esta sección, se explican los permisos que necesitas para completar esta tarea y, luego, se describe cómo crear un grupo de AC.

Para generar certificados, la inspección de TLS usa una cuenta de servicio independiente para cada proyecto llamado service-{project ID}@gcp-sa-certmanager.iam.gserviceaccount.com Asegúrate de haberle otorgado permisos a esta cuenta de servicio para que los use tu grupo de AC. Si se revoca este acceso, la inspección de TLS deja de funcionar.

Para crear el grupo, usa el comando gcloud privateca pools create y especificar el ID del grupo subordinado, el nivel, el ID del proyecto y la ubicación.

    gcloud privateca pools create SUBORDINATE_POOL_ID 
--tier=TIER
--project=PROJECT_ID
--location=REGION

Reemplaza lo siguiente:

  • SUBORDINATE_POOL_ID: Es el nombre del grupo de AC.
  • TIER: Es el nivel de la AC, ya sea devops o enterprise.

    Te recomendamos que crees el grupo de AC en el nivel devops porque no es necesario hacer un seguimiento de los certificados emitidos de forma individual.

  • PROJECT_ID: Es el ID del proyecto del grupo de AC.

  • REGION: Es la ubicación del grupo de AC.

Crea un grupo de AC subordinado

Puedes crear un grupo de AC subordinadas, y la AC raíz firma todas las AC de ese grupo. Estos certificados se usan para firmar el servidor certificados generados para la inspección de TLS.

Para crear un grupo subordinado, usa cualquiera de los siguientes métodos.

Crea un grupo de AC subordinado con una AC raíz existente almacenada dentro de CAS

Para generar una AC subordinada, haz lo siguiente:

  1. Crea un grupo de CA.
  2. Crea AC subordinadas dentro de un grupo de AC.

Crea un grupo de AC subordinado a través de una AC raíz existente que se mantenga externamente.

Para generar una AC subordinada, haz lo siguiente:

  1. Crea un grupo de CA.
  2. Crea AC subordinadas firmadas por una AC raíz externa.

Crea una AC raíz:

Si no tienes una AC raíz existente, puedes crear una en CAS. Para crear una AC raíz, haz lo siguiente:

  1. Crea una AC raíz.
  2. Sigue los pasos que se indican en Crea un grupo de AC subordinado con una AC raíz existente almacenada en CAS.

Para obtener más información sobre los grupos de AC, consulta la documentación del servicio de AC.

Crea una cuenta de servicio

Si no tienes una cuenta de servicio, debes crear una y otorgar los permisos necesarios.

  1. Crear una cuenta de servicio:

    gcloud beta services identity create \
        --service=networksecurity.googleapis.com \
        --project=PROJECT_ID
    

    En respuesta, Google Cloud CLI crea una cuenta de servicio llamada service-{project ID}@gcp-sa-networksecurity.iam.gserviceaccount.com

  2. Para la cuenta de servicio que creaste, otorga permisos para generar certificados con tu grupo de AC:

    gcloud privateca pools add-iam-policy-binding CA_POOL \
        --member='serviceAccount:SERVICE_ACCOUNT' \
        --role='roles/privateca.certificateManager' \
        --location='REGION'
    

Configurar el Proxy web seguro para la inspección de TLS

Solo puedes continuar con las tareas de esta sección después de completar las tareas previas que se indican en la sección Antes de comenzar.

Para configurar la inspección de TLS, completa las tareas de las siguientes secciones.

Crea una política de inspección de TLS

  1. Crea el archivo TLS_INSPECTION_FILE.yaml. Reemplazar TLS_INSPECTION_FILE por el nombre de archivo deseado

  2. Agrega el siguiente código al archivo YAML para configurar la TlsInspectionPolicy deseada:

    name: projects/PROJECT_ID/locations/REGION/tlsInspectionPolicies/TLS_INSPECTION_NAME
    caPool: projects/PROJECT_ID/locations/REGION/caPools/CA_POOL
    

    Reemplaza lo siguiente:

    • PROJECT_ID: Es el número del proyecto.
    • REGION: Es la región en la que se creará la política.
    • TLS_INSPECTION_NAME: Es el nombre de la Política de inspección de TLS del Proxy web seguro
    • CA_POOL: el nombre del grupo de CA desde el que se crearán los certificados

      El grupo de CA debe existir dentro de la misma región.

Importa la política de inspección de TLS

Importa la política de inspección de TLS que creaste en el paso anterior:

gcloud network-security tls-inspection-policies import TLS_INSPECTION_NAME \
  --source=TLS_INSPECTION_FILE.yaml \
  --location=REGION

Agrega la política de inspección de TLS a la política de seguridad

Console

Crea la política de proxy web

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

    Ir a Seguridad de red

  2. Haz clic en Proxy web seguro.

  3. Haz clic en la pestaña Políticas.

  4. Haz clic en Crear una política.

  5. Escribe un nombre para la política que quieres crear. como myswppolicy.

  6. Ingresa una descripción de la política, como My new swp policy.

  7. En la lista Regiones, selecciona la región en la que deseas crear la política de Proxy web seguro.

  8. Para configurar la inspección de TLS, selecciona Configura la inspección de TLS.

  9. En la lista Política de inspección de TLS, selecciona el política de inspección que creaste.

  10. Si deseas crear reglas para tu política, haz clic en Continuar y, luego, en Agregar regla. Para obtener más información, consulta Cómo crear reglas del Proxy web seguro.

  11. Haz clic en Crear.

Crea las reglas del proxy web

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

    Ir a Seguridad de red

  2. Haz clic en Proxy web seguro.

  3. En el menú del selector de proyectos, elige el ID de tu organización. o la carpeta que contiene tu política.

  4. Haz clic en el nombre de la política.

  5. Haz clic en Agregar regla.

  6. Propaga los campos de la regla:

    1. Nombre
    2. Descripción
    3. Estado
    4. Prioridad: El orden de evaluación numérico de la regla. Las reglas se evalúan de mayor a menor prioridad, en la que 0 es la prioridad más alta.
    5. En la sección Acción, especifica si las conexiones que coinciden si se permite (Permitir) o se rechaza (Rechazar) la regla.
    6. En la sección Coincidencia de sesión, especifica los criterios para que coincida con la sesión. Para obtener más información sobre la sintaxis de SessionMatcher, consulta la Referencia del lenguaje del comparador de CEL.
    7. Para habilitar la inspección de TLS, selecciona Habilitar inspección de TLS.
    8. En la sección Coincidencia de aplicaciones, especifica los criterios para que coincida con la solicitud. Si no habilitas la regla para la inspección de TLS, la solicitud solo puede coincidir con el tráfico HTTP.
    9. Haz clic en Crear.
  7. Haz clic en Agregar regla para agregar otra regla.

  8. Haz clic en Crear para crear la política.

Configura un proxy web

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

    Ir a Seguridad de red

  2. Haz clic en Proxy web seguro.

  3. Haz clic en la pestaña Proxy web.

  4. Haz clic en Configurar un proxy web.

  5. Ingresa un nombre para el proxy web que quieras crear. como myswp.

  6. Ingresa una descripción del proxy web, como My new swp.

  7. En la lista Regiones, selecciona la región a la que deseas ir. crear el proxy web.

  8. En la lista Red, selecciona la red a la que quieres crear el proxy web.

  9. En la lista Subred, selecciona la subred en la que desees crear el proxy web.

  10. Ingresa la dirección IP del proxy web.

  11. En la lista Certificado, selecciona el certificado que deseas usar para crear el proxy web.

  12. En la lista Política, selecciona la política que creaste para asociar el proxy web.

  13. Haz clic en Crear.

Cloud Shell

  1. Crea el archivo policy.yaml:

      description: basic Secure Web Proxy policy
      name: projects/PROJECT_ID/locations/REGION/gatewaySecurityPolicies/policy1
      tlsInspectionPolicy: projects/PROJECT_ID/locations/REGION/tlsInspectionPolicies/TLS_INSPECTION_NAME
    
  2. Crea la política del Proxy web seguro:

      gcloud network-security gateway-security-policies import policy1 \
          --source=policy.yaml --location=REGION
    
  3. Crea el archivo rule.yaml:

      name: projects/PROJECT_ID/locations/REGION/gatewaySecurityPolicies/policy1/rules/allow-example-com
      description: Allow example.com
      enabled: true
      priority: 1
      basicProfile: ALLOW
      sessionMatcher: host() == 'example.com'
      applicationMatcher: request.path.contains('index.html')
      tlsInspectionEnabled: true
    
  4. Crea la regla de la política de seguridad:

      gcloud network-security gateway-security-policies rules import allow-example-com \
          --source=rule.yaml \
          --location=REGION \
          --gateway-security-policy=policy1
    
  5. Para adjuntar una política de inspección de TLS a una política de seguridad existente, crea el archivo POLICY_FILE.yaml. Reemplazar POLICY_FILE por el nombre de archivo deseado

      description: My Secure Web Proxy policy
      name: projects/PROJECT_ID/locations/REGION/gatewaySecurityPolicies/POLICY_NAME
      tlsInspectionPolicy: projects/PROJECT_ID/locations/REGION/tlsInspectionPolicies/TLS_INSPECTION_NAME
    

Próximos pasos