Crea e implementa una instancia del Proxy web seguro

En esta guía de inicio rápido, se explica cómo implementar y probar una instancia de proxy web seguro. En los pasos, se describe la implementación del Proxy web seguro en el modo de enrutamiento explícito, que funciona como un proxy explícito.

Las instancias de Secure Web Proxy en modo de enrutamiento explícito se pueden implementar como un servicio de Private Service Connect. Como alternativa, puedes implementar Secure Web Proxy en el modo de enrutamiento del próximo salto.

La implementación del Proxy web seguro en el modo de enrutamiento explícito incluye los siguientes pasos:

  1. Crea una política del Proxy web seguro.
  2. Crea reglas del Proxy web seguro y agrégalas a la política.
  3. Configura la instancia de Secure Web Proxy en el modo de enrutamiento explícito.
  4. Prueba la conectividad desde una instancia de máquina virtual (VM) de Linux para confirmar que el proxy y sus políticas funcionan correctamente.
Implementa Secure Web Proxy en el modo de enrutamiento de proxy explícito.
Implementa Secure Web Proxy en el modo de enrutamiento de proxy explícito (haz clic para ampliar).

Antes de comenzar

  1. Completa los pasos de configuración inicial.

  2. Opcional: Para ejecutar los ejemplos de la línea de comandos de gcloud que se especifican en este documento, instala Google Cloud CLI en cualquiera de los siguientes entornos de desarrollo:

    Cloud Shell

    Para usar una terminal en línea con gcloud CLI ya configurada, activa Cloud Shell.

    Al final de esta página, se inicia una sesión de Cloud Shell y se muestra una ventana de línea de comandos. La sesión puede tardar unos segundos en inicializarse.

    Si ya instalaste gcloud CLI, asegúrate de tener la versión más reciente disponible ejecutando el comando gcloud components update.

    Shell local

    Para usar un entorno de desarrollo local, sigue estos pasos:

    1. Instala Google Cloud CLI
    2. Inicializa la CLI de gcloud
  3. Crea o selecciona un Google Cloud proyecto existente.

    Si no planeas conservar los recursos que crearás en este procedimiento, te recomendamos que crees un proyecto en lugar de seleccionar uno existente. Después de completar los pasos de esta guía de inicio rápido, puedes borrar el proyecto para quitar todos los recursos asociados con él.

    Console

    En la consola de Google Cloud , en la página del selector de proyectos, crea un proyecto de Google Cloud o selecciona uno existente.

    Ir al selector de proyectos

    Cloud Shell

    1. Crea un proyecto de Google Cloud .

      gcloud projects create PROJECT_ID
      

      Reemplaza PROJECT_ID por el ID del proyecto que elijas.

    2. Selecciona el proyecto Google Cloud que creaste.

      gcloud config set project PROJECT_ID
      
  4. Crea una instancia de VM de Linux.

    gcloud compute instances create swp-test-vm \
        --subnet=default \
        --zone=ZONE \
        --image-project=debian-cloud \
        --image-family=debian-11
    

    Reemplaza ZONE por la zona de tu instancia de VM de prueba.

    Compute Engine otorga el rol de administrador de instancias de Compute (roles/compute.instanceAdmin) al usuario que crea la instancia de VM. Compute Engine también agrega ese usuario al grupo sudo.

  5. Crea una regla de firewall.

    gcloud compute firewall-rules create default-allow-ssh \
        --direction=INGRESS \
        --priority=1000 \
        --network=default \
        --action=ALLOW \
        --rules=tcp:22 \
        --source-ranges=0.0.0.0/0
    

Roles obligatorios

Asegúrate de tener los siguientes roles para completar las tareas de este instructivo:

Para obtener más información, consulta lo siguiente:

Crea una política del Proxy web seguro

En esta sección, se explican los pasos para crear una política del Proxy web seguro. Luego, la política puede servir como contenedor de todas las reglas de seguridad que rigen el flujo de tráfico a través del Proxy web seguro. Después de crear la política, puedes crear reglas y agregarlas a ella.

Console

  1. En la consola de Google Cloud , ve a la página Políticas de SWP.

    Ir a Políticas de SWP

  2. Haz clic en Crear una política.

  3. En el campo Nombre, ingresa un nombre para la política, como myswppolicy.

  4. En el campo Descripción, ingresa una descripción para la política, como My new swp policy.

  5. En Regiones, selecciona la región en la que deseas crear la política, como us-central1.

  6. Si deseas crear reglas para tu política, haz clic en Agregar regla. Para obtener más información, consulta la sección Crea reglas de Proxy web seguro.

  7. Haz clic en Crear.

Cloud Shell

  1. Usa tu editor de texto preferido para crear un archivo policy.yaml.

  2. Agrega lo siguiente al archivo policy.yaml.

      description: basic Secure Web Proxy policy
      name: projects/PROJECT_ID/locations/REGION/gatewaySecurityPolicies/myswppolicy
    

    Reemplaza lo siguiente:

    • PROJECT_ID: ID de tu proyecto
    • REGION: Es la región en la que se crea tu política, como us-central1.
  3. Crea la política del Proxy web seguro.

    gcloud network-security gateway-security-policies import myswppolicy \
        --source=policy.yaml \
        --location=REGION
    

Crea reglas del Proxy web seguro

En esta sección, se detallan los pasos para crear reglas del Proxy web seguro. Las reglas ayudan a definir los controles de acceso reales para el tráfico web.

Dentro de la política que creaste anteriormente, puedes definir reglas como allow-wikipedia-org. Estas reglas especifican los criterios para hacer coincidir las sesiones web (por ejemplo, hacer coincidir un host específico como www.wikipedia.org) y, luego, permitir o rechazar el tráfico web.

Console

  1. En la consola de Google Cloud , ve a la página Políticas de SWP.

    Ir a Políticas de SWP

  2. Haz clic en el nombre de tu política, como myswppolicy.

  3. Haz clic en Agregar regla.

  4. Para cada regla, haz lo siguiente:

    1. En Prioridad, ingresa un orden de evaluación numérico para la regla. Las reglas se evalúan de mayor a menor prioridad, en la que 0 es la prioridad más alta.

    2. En el campo Nombre, ingresa un nombre para la regla, como allow-wikipedia-org.

    3. En el campo Descripción, ingresa una descripción para la regla, como Allow wikipedia.org.

    4. En Acción, selecciona una de las siguientes opciones:

      • Permitir: Para permitir las solicitudes de conexión que coinciden con la regla
      • Rechazar: Para rechazar las solicitudes de conexión que coinciden con la regla.
    5. En el campo Estado, selecciona una de las siguientes opciones para la aplicación de la regla:

      • Habilitada: Para aplicar la regla en tu instancia de Proxy web seguro
      • Inhabilitado: Para no aplicar la regla en tu instancia de Proxy web seguro
    6. En la sección Coincidencia de sesión, especifica los criterios para la coincidencia de la sesión, como host() == 'www.wikipedia.org'.

      Para obtener más información sobre la sintaxis de SessionMatcher, consulta la referencia del lenguaje del comparador de CEL.

    7. En la sección Application Match, especifica los criterios para correlacionar la solicitud. Como no habilitamos la regla para la inspección de TLS, la solicitud solo puede coincidir con el tráfico HTTP.

      Para obtener más información sobre la correlación del tráfico de TCP, consulta Configura reglas de proxy TCP.

    8. Haz clic en Crear.

  5. Para agregar otra regla, haz clic en Agregar regla.

Cloud Shell

  1. Usa tu editor de texto preferido para crear el archivo rule.yaml.

  2. Agrega lo siguiente al archivo rule.yaml. Para obtener más información sobre la sintaxis de SessionMatcher, consulta la referencia del lenguaje del comparador de CEL.

    name: projects/PROJECT_ID/locations/REGION/gatewaySecurityPolicies/policy1/rules/RULE_NAME
    description: Allow wikipedia.org
    enabled: true
    priority: 1
    basicProfile: ALLOW
    sessionMatcher: host() == 'www.wikipedia.org'
    

    Reemplaza lo siguiente:

    • PROJECT_ID: ID de tu proyecto
    • REGION: Región de tu política
    • RULE_NAME: Es el nombre de la regla, como allow-wikipedia-org.
  3. Crea la regla de la política de seguridad.

    gcloud network-security gateway-security-policies rules import allow-wikipedia-org \
        --source=rule.yaml \
        --location=REGION \
        --gateway-security-policy=policy1
    

Configura un proxy web

En esta sección, se describe cómo implementar el Proxy web seguro en el modo de enrutamiento explícito, que funciona como un proxy explícito. También se explica cómo asociar la política y las reglas creadas anteriormente con tu instancia de Proxy web seguro, lo que garantiza que todo el tráfico que fluya a través de ella esté sujeto a los controles de acceso definidos.

Console

  1. En la consola de Google Cloud , ve a la página Proxies web.

    Ir a Proxies web

  2. Haz clic en Crear un proxy web seguro.

  3. En el campo Nombre, ingresa un nombre para el proxy web, como myswp.

  4. En el campo Descripción, ingresa una descripción para el proxy web, como My new swp.

  5. En Modo de enrutamiento, selecciona la opción Explícito.

  6. En Regiones, selecciona la región en la que deseas crear el proxy web, como us-central1.

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

  8. En Subred, selecciona la subred de VPC que creaste anteriormente como parte de los pasos de configuración inicial.

  9. Opcional: En el campo Dirección IP del proxy web, ingresa la dirección IP del proxy web seguro.

    Puedes ingresar una dirección IP del rango de direcciones IP del proxy web seguro que se encuentra en la subred que creaste en el paso anterior. Si no ingresas la dirección IP, tu instancia de Secure Web Proxy elegirá automáticamente una dirección IP de la subred seleccionada.

  10. En Puertos, ingresa los números de puerto, como 80 o 443, en los que deseas que escuche el proxy web.

  1. En Certificado, selecciona el certificado que deseas usar para crear el proxy web.

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

  3. Haz clic en Crear.

Cloud Shell

  1. Usa tu editor de texto preferido para crear un archivo gateway.yaml.

  2. Agrega lo siguiente al archivo gateway.yaml.

    name: projects/PROJECT_ID/locations/REGION/gateways/myswp
    type: SECURE_WEB_GATEWAY
    addresses: ["IP_ADDRESS"]
    ports: [443]
    gatewaySecurityPolicy: projects/PROJECT_ID/locations/REGION/gatewaySecurityPolicies/policy1
    network: projects/PROJECT_ID/global/networks/NETWORK
    subnetwork: projects/PROJECT_ID/regions/REGION/subnetworks/SUBNETWORK
    routingMode: EXPLICIT_ROUTING_MODE
    

    Reemplaza lo siguiente:

    • PROJECT_ID: ID de tu proyecto
    • REGION: Es la región en la que se crea tu instancia de Secure Web Proxy.
    • IP_ADDRESS: Dirección IP de tu instancia de Secure Web Proxy
    • NETWORK: Es la red de tu instancia de Secure Web Proxy.
    • SUBNETWORK: Es la subred de tu instancia de Secure Web Proxy. Debes usar la subred de VPC que creaste anteriormente como parte de los pasos de configuración inicial.
  3. Crea una instancia del Proxy web seguro basada en el archivo gateway.yaml.

    gcloud network-services gateways import myswp \
        --source=gateway.yaml \
        --location=REGION
    

    La implementación de una instancia de proxy web seguro puede tardar varios minutos.

Probar conectividad

En esta sección, se explica cómo probar la conectividad desde una VM de Linux para confirmar que el proxy web seguro implementado recientemente, sus políticas y sus reglas asociadas funcionan correctamente.

  1. Conéctate a la VM que aprovisionaste anteriormente.

    gcloud compute ssh swp-test-vm \
        --zone=ZONE
    

    Reemplaza ZONE por la zona de tu instancia de VM de prueba.

  2. Prueba la instancia del Proxy web seguro.

    curl -s -o /dev/null -w "%{http_code}\\n" -x IP_ADDRESS:443 https://www.wikipedia.org
    

    Reemplaza IP_ADDRESS por la dirección IP de tu instancia de Proxy web seguro.

    Este comando imprime el código de estado HTTP que se devuelve desde www.wikipedia.org. Si el comando se ejecuta correctamente, el código de estado es 200. Sin embargo, si hay un problema con el proxy, el comando devuelve un código de estado 000 para indicar un error de conexión. Para ver los mensajes de error detallados, agrega la opción -v al comando.

No configuramos la inspección de TLS en el ejemplo que se menciona en esta página. Para obtener más información sobre cómo configurar el Proxy web seguro para la inspección de TLS y, luego, probar tu instancia del Proxy web seguro, consulta Habilita la inspección de TLS.

Realiza una limpieza

Sigue estos pasos para evitar que se apliquen cargos a tu cuenta de Google Cloud por los recursos que usaste en esta página.

Borra la instancia de swp1 Secure Web Proxy

Console

  1. En la consola de Google Cloud , ve a la página Proxies web. Puedes ver la lista de todos los proxies web o solo los que están disponibles en una red en particular.

    Ir a Proxies web

  2. Selecciona el proxy web que deseas borrar. Aquí, el nombre del proxy web es swp1.

  3. Haz clic en Borrar y, luego, en Borrar de nuevo para confirmar.

Cloud Shell

gcloud network-services gateways delete swp1 \
    --location=REGION

Reemplaza REGION por la región de tu instancia de Proxy web seguro.

Borra la regla allow-wikipedia-org.

Console

  1. En la consola de Google Cloud , ve a la página Proxies web. Puedes ver la lista de todos los proxies web o solo los que están disponibles en una red en particular.

    Ir a Proxies web

  2. Haz clic en tu política. Aquí, el nombre de la política es policy1.

  3. Selecciona la regla que quieres borrar. Aquí, el nombre de la regla es allow-wikipedia-org.

  4. Haz clic en Borrar y, luego, en Borrar de nuevo para confirmar.

Cloud Shell

gcloud network-security gateway-security-policies rules delete allow-wikipedia-org \
    --location=REGION \
    --gateway-security-policy=policy1

Reemplaza REGION por la región de tu política.

Borra la política de Proxy web seguro policy1

Console

  1. En la consola de Google Cloud , ve a la página Proxies web. Puedes ver la lista de todos los proxies web o solo los que están disponibles en una red en particular.

    Ir a Proxies web

  2. Selecciona la política que deseas borrar. Aquí, el nombre de la política es policy1.

  3. Haz clic en Borrar y, luego, en Borrar de nuevo para confirmar.

Cloud Shell

gcloud network-security gateway-security-policies delete policy1 \
    --location=REGION

Reemplaza REGION por la región de tu política.

Borra la instancia de VM de Linux swp-test-vm

Console

  1. En la consola de Google Cloud , ve a la página Instancias de VM.

    Ir a Instancias de VM

  2. Selecciona las instancias que deseas borrar. Aquí, swp-test-vm es el nombre de la instancia de VM de Linux.

  3. Haz clic en Borrar.

Cloud Shell

gcloud compute instances delete swp-test-vm

¿Qué sigue?