Habilitar la inspección de TLS

En esta página, se describe cómo habilitar la inspección de 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 que se indican en las siguientes secciones.

Habilitar CAS

El Proxy web seguro usa Certificate Authority Service (CAS) para generar los certificados que se usan en 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.

A fin de generar certificados, la inspección de TLS usa una cuenta de servicio independiente para cada proyecto llamada service-{project ID}@gcp-sa-certmanager.iam.gserviceaccount.com. Asegúrate de haber otorgado permisos a esta cuenta de servicio para usar 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 especifica 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, ya que no es necesario rastrear 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 subordinado, y la AC raíz firmará todas las AC en ese grupo. Estos se usan para firmar los certificados del servidor 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 mediante una AC raíz existente almacenada en CAS.

Para obtener más información sobre los grupos de AC, consulta la documentación de Certificate Authority Service.

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. En 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 haber completado las tareas de requisitos previos 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. Reemplaza TLS_INSPECTION_FILE por el nombre de archivo que desees.

  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. Ingresa un nombre para la política que deseas 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 del Proxy web seguro.

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

  9. En la lista Política de inspección de TLS, selecciona la política de inspección de TLS 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 Crea 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 contenga 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 con la regla están permitidas (Permitir) o rechazadas (Rechazar).
    6. En la sección Coincidencia de sesión, especifica los criterios para hacer coincidir la sesión. Para obtener más información sobre la sintaxis de SessionMatcher, consulta la referencia del lenguaje de coincidencia de CEL.
    7. Para habilitar la inspección de TLS, selecciona Habilitar la inspección de TLS.
    8. En la sección Coincidencia de aplicación, especifica los criterios para que coincidan 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 Proxies web.

  4. Haz clic en Configurar un proxy web.

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

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

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

  8. En la lista Red, selecciona la red en la que deseas crear el proxy web.

  9. En la lista Subred, selecciona la subred en la que deseas 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. Reemplaza POLICY_FILE por el nombre de archivo que desees.

      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