Implementa el proxy web seguro como próximo salto

En esta página, se proporciona una descripción general para crear una política de Secure Web Proxy y, luego, se explica cómo configurar el enrutamiento de próximo salto para tu instancia de Secure Web Proxy. Además, en esta página, se describe cómo configurar el enrutamiento estático o el enrutamiento basado en políticas para tu próximo salto.

De forma predeterminada, las instancias de SecureWebProxy tienen un valor RoutingMode de EXPLICIT_ROUTING_MODE, lo que significa que debes configurar tus cargas de trabajo para que envíen explícitamente el tráfico HTTP(S) a Secure Web Proxy. En lugar de configurar clientes individuales para que apunten a tu instancia de Secure Web Proxy, puedes establecer el RoutingMode de tu instancia de Secure Web Proxy como NEXT_HOP_ROUTING_MODE, lo que te permite definir rutas que dirijan el tráfico a tu instancia de Secure Web Proxy.

Cuando implementas tu instancia de Secure Web Proxy como próximo salto, puedes habilitar la puerta de enlace para que escuche en todos los puertos (de 1 a 65535), lo que simplifica la configuración para entornos dinámicos o servicios que usan varios puertos.

Configura el enrutamiento de próximo salto para Secure Web Proxy

En esta sección, se describen los pasos para crear una política de Secure Web Proxy y el procedimiento para implementar tu instancia de Secure Web Proxy como próximo salto.

Crea una política de Secure Web Proxy

  1. Completa todos los pasos de requisitos previos obligatorios.
  2. Crea una política de Secure Web Proxy.
  3. Crea reglas de Secure Web Proxy.

Implementa tu instancia de Secure Web Proxy como próximo salto

Console

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

    Ir a Proxies web

  2. Haz clic en Crear un proxy web seguro.

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

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

  5. En Modo de enrutamiento, selecciona la opción Próximo salto.

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

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

  8. En la lista Subred, selecciona la subred en la que deseas crear el proxy web.

  9. Opcional: Ingresa la dirección IP del Secure Web Proxy. Puedes ingresar una dirección IP del rango de direcciones IP de Secure Web Proxy que reside en la subred que creaste en el paso anterior. Si no ingresas la dirección IP, tu instancia de Secure Web Proxy elige automáticamente una dirección IP de la subred seleccionada.

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

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

  12. Haz clic en Crear.

Cloud Shell

  1. Crea el archivo gateway.yaml.

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

    Opcional: Para configurar la puerta de enlace para que escuche en todos los puertos (de 1 a 65535), agrega el campo all_ports en el archivo gateway.yaml y configúralo como true. Esta función es compatible con la versión preliminar.

    Para obtener información sobre las limitaciones relacionadas con el uso de la función all_ports, consulta Limitaciones.

    name: projects/PROJECT_ID/locations/REGION/gateways/swp1
    type: SECURE_WEB_GATEWAY
    addresses: ["IP_ADDRESS"]
    all_ports: true
    gatewaySecurityPolicy: projects/PROJECT_ID/locations/REGION/gatewaySecurityPolicies/policy1
    network: projects/PROJECT_ID/global/networks/NETWORK
    subnetwork: projects/PROJECT_ID/regions/REGION/subnetworks/SUBNETWORK
    routingMode: NEXT_HOP_ROUTING_MODE
    
  2. Crea una instancia de Secure Web Proxy.

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

    Una instancia de Secure Web Proxy puede tardar varios minutos en implementarse.

Crea rutas para el próximo salto

Después de crear una instancia de Proxy web seguro, puedes configurar el enrutamiento estático o el enrutamiento basado en políticas para tu próximo salto:

  • Las rutas estáticas dirigen el tráfico dentro de tu red a tu instancia de Secure Web Proxy en la misma región. Para configurar una ruta estática con tu Secure Web Proxy como próximo salto, debes configurar etiquetas de red.
  • Las rutas basadas en políticas te permiten dirigir el tráfico a tu instancia de Proxy web seguro desde un rango de direcciones IP de origen. Cuando configuras una ruta basada en políticas por primera vez, también debes configurar otra ruta basada en políticas para que sea la ruta predeterminada.

En las siguientes dos secciones, se explica cómo crear rutas estáticas y rutas basadas en políticas.

Crea rutas estáticas

Para enrutar el tráfico a tu instancia de Secure Web Proxy, configura una ruta estática con el comando gcloud compute routes create. Debes asociar la ruta estática con una etiqueta de red y usar la misma etiqueta de red en todos tus recursos de origen para garantizar que su tráfico se redireccione a tu instancia de Secure Web Proxy. Las rutas estáticas no te permiten definir un rango de direcciones IP de origen.

Para obtener más información sobre cómo funcionan las rutas estáticas en Google Cloud, consulta Rutas estáticas.

gcloud

Usa el siguiente comando para crear una ruta estática.

gcloud compute routes create STATIC_ROUTE_NAME \
    --network=NETWORK_NAME \
    --next-hop-ilb=SWP_IP \
    --destination-range=DESTINATION_RANGE \
    --priority=PRIORITY \
    --tags=TAGS \
    --project=PROJECT
 

Reemplaza lo siguiente:

  • STATIC_ROUTE_NAME: Es el nombre de tu ruta estática.
  • NETWORK_NAME: Es el nombre de tu red.
  • SWP_IP: Es la dirección IP de tu instancia de SecureWebProxy en la subred especificada en el archivo gateway.yaml.
  • DESTINATION_RANGE: Es el rango de direcciones IP al que deseas redireccionar el tráfico. Por ejemplo, usa 0.0.0.0/0 para enrutar todo el tráfico de Internet a tu instancia de Secure Web Proxy.
  • PRIORITY: Es la prioridad de tu ruta. Los números más altos indican una prioridad más baja. Asegúrate de que la prioridad de tu ruta sea numéricamente más baja que la ruta de Internet predeterminada, que suele ser 1000.
  • TAGS: Es una lista separada por comas de las etiquetas que usarás con tu instancia de Secure Web Proxy.
  • PROJECT: Es el ID de tu proyecto.

Crea una VM en la subred adecuada con las etiquetas de red especificadas en la ruta

gcloud compute instances create swp-nexthop-test-vm \
    --subnet=SUBNETWORK \
    --zone=ZONE \
    --image-project=debian-cloud \
    --image-family=debian-11 \
    --tags=TAGS

Reemplaza lo siguiente:

  • SUBNETWORK: Es la subred que configuraste para el proxy web.
  • ZONE: Es la zona de tu instancia de VM de prueba.
  • TAGS: Es una lista separada por comas de las etiquetas que usarás con tu instancia de Secure Web Proxy.

Crea rutas basadas en políticas

Como alternativa al enrutamiento estático, puedes configurar una ruta basada en políticas con el comando network-connectivity policy-based-routes create. También debes crear una ruta basada en políticas para que sea la ruta predeterminada, lo que habilita el enrutamiento predeterminado para el tráfico entre instancias de máquina virtual (VM) dentro de tu red. Para obtener más información sobre cómo funcionan las rutas basadas en políticas en Google Cloud, consulta Enrutamiento basado en políticas.

La prioridad de la ruta que habilita el enrutamiento predeterminado debe ser más alta (numéricamente más baja) que la prioridad de la ruta basada en políticas que dirige el tráfico a la instancia de Secure Web Proxy. Si creas la ruta basada en políticas con una prioridad más alta que la ruta que habilita el enrutamiento predeterminado, tendrá prioridad sobre todas las demás rutas de VPC.

Usa el siguiente ejemplo para crear una ruta basada en políticas que dirija el tráfico a tu instancia de Secure Web Proxy.

gcloud

Usa el siguiente comando para crear la ruta basada en políticas.

gcloud network-connectivity policy-based-routes create POLICY_BASED_ROUTE_NAME \
    --network="projects/PROJECT/global/networks/NETWORK_NAME" \
    --next-hop-ilb-ip=SWP_IP \
    --protocol-version="IPV4" \
    --destination-range=DESTINATION_RANGE \
    --source-range=SOURCE_RANGE \
    --priority=2 \
    --project=PROJECT
 

Reemplaza lo siguiente:

  • POLICY_BASED_ROUTE_NAME: Es el nombre de tu ruta basada en políticas.
  • NETWORK_NAME: Es el nombre de tu red.
  • SWP_IP: Es la dirección IP de tu instancia de Secure Web Proxy.
  • DESTINATION_RANGE: Es el rango de direcciones IP al que deseas redireccionar el tráfico.
  • SOURCE_RANGE: Es el rango de direcciones IP desde el que deseas redireccionar el tráfico.
  • PROJECT: Es el ID de tu proyecto.

A continuación, sigue los pasos que se indican a continuación para crear la ruta basada en políticas de enrutamiento predeterminado.

gcloud

Usa el siguiente comando para crear la ruta basada en políticas de enrutamiento predeterminado.

gcloud network-connectivity policy-based-routes create DEFAULT_POLICY_BASED_ROUTE_NAME \
    --network="projects/PROJECT/global/networks/NETWORK_NAME" \
    --next-hop-other-routes="DEFAULT_ROUTING" \
    --protocol-version="IPV4" \
    --destination-range=DESTINATION_RANGE \
    --source-range=SOURCE_RANGE \
    --priority=1 \
    --project=PROJECT
 

Reemplaza lo siguiente:

  • DEFAULT_POLICY_BASED_ROUTE_NAME: Es el nombre de tu ruta basada en políticas.
  • NETWORK_NAME: Es el nombre de tu red.
  • DESTINATION_RANGE: Es el rango de direcciones IP al que deseas redireccionar el tráfico.
  • SOURCE_RANGE: Es el rango de direcciones IP desde el que deseas redireccionar el tráfico.
  • PROJECT: Es el ID de tu proyecto.

Lista de tareas posteriores a la implementación

Asegúrate de completar las siguientes tareas después de configurar una ruta estática o una ruta basada en políticas con tu instancia de Secure Web Proxy como próximo salto:

Limitaciones

  • Las instancias de SecureWebProxy con RoutingMode establecido como NEXT_HOP_ROUTING_MODE admiten tráfico de proxy HTTP(S) y TCP. Se descartan otros tipos de tráfico, incluido el tráfico entre regiones, sin notificación.
  • Cuando usas next-hop-ilb, las limitaciones que se aplican a los balanceadores de cargas de red de transferencia internos se aplican a los próximos saltos si el próximo salto de destino es una instancia de Secure Web Proxy. Para obtener más información, consulta las tablas de próximos saltos y funciones para rutas estáticas.
  • Todo el tráfico de las máquinas virtuales (VM), incluido el tráfico en segundo plano y las actualizaciones, que coincida con tu ruta de próximo salto se enrutará a tu instancia de Secure Web Proxy.
  • Para una red de VPC en una región, puedes implementar solo una instancia de Secure Web Proxy como próximo salto (SWPaNH).
  • Cuando usas la función all_ports, se aplican las siguientes limitaciones:
    • La función all_ports solo se aplica a las puertas de enlace con type: SECURE_WEB_GATEWAY.
    • Puedes usar la configuración all_ports: true solo cuando routingMode está configurado como NEXT_HOP_ROUTING_MODE.
    • No puedes especificar la configuración all_ports: true y enumerar puertos individuales en el campo de puertos para el mismo recurso de puerta de enlace. Debes usar solo un tipo de configuración de puerto, no ambos.
    • Dentro de una red y región determinadas, no puedes implementar simultáneamente una instancia de Secure Web Proxy en modo de próximo salto con la configuración all_ports: true y otra instancia de Secure Web Proxy en cualquier otro modo.