Crea una VPN clásica mediante el enrutamiento estático

En esta página, se describe cómo crear una puerta de enlace de VPN clásica y un túnel con enrutamiento estático. Este túnel es un túnel basado en políticas o en rutas.

Con la VPN basada en rutas, solo especificas el selector de tráfico remoto. En cambio, si necesitas especificar un selector de tráfico local, crea un túnel de Cloud VPN que use enrutamiento basado en políticas.

Si deseas obtener prácticas recomendadas antes de configurar Cloud VPN, consulta Prácticas recomendadas para Cloud VPN.

Diferencias de opciones de enrutamiento

Cuando creas un túnel basado en políticas mediante Google Cloud Console, la VPN clásica realiza todas las tareas que se muestran a continuación:

  • Configura el selector de tráfico local del túnel en el rango de IP que especifiques
  • Configura el selector de tráfico remoto del túnel en los rangos de IP que especifiques en Rangos de IP de red remota
  • Para cada rango en Rangos de IP de red remota, Google Cloud crea una ruta estática personalizada cuyo destino (prefijo) es el CIDR del rango y cuyo salto siguiente es el túnel.

Cuando creas un túnel basado en rutas mediante Cloud Console, la VPN clásica realiza las siguientes dos tareas:

  • Configura los selectores de tráfico local y remoto del túnel en cualquier dirección IP (0.0.0.0/0)
  • Para cada rango en Rangos de IP de red remota, Google Cloud crea una ruta estática personalizada cuyo destino (prefijo) es el CIDR del rango y cuyo salto siguiente es el túnel.

Cuando se crea un túnel basado en políticas o rutas mediante la herramienta de línea de comandos de gcloud, los selectores de tráfico del túnel se definen de la misma manera. Sin embargo, debido a que la creación de rutas estáticas personalizadas se realiza con otros comandos, tienes más control sobre esas rutas. Para obtener más información, consulta Redes y enrutamiento de túneles.

Especifica varios CIDR por selector de tráfico

La cantidad de CIDR que se puede especificar en un selector de tráfico depende de la versión de IKE. Revisa con atención Opciones de enrutamiento y selectores de tráfico y Varios CIDR por selector de tráfico para obtener información adicional importante.

Antes de comenzar

Configurar los siguientes elementos en Google Cloud facilita la configuración de Cloud VPN:

  1. Accede a tu Cuenta de Google.

    Si todavía no tienes una cuenta, regístrate para obtener una nueva.

  2. En la página del selector de proyectos de Google Cloud Console, selecciona o crea un proyecto de Google Cloud.

    Ir a la página del selector de proyectos

  3. Comprueba que la facturación esté habilitada en tu proyecto.

    Descubre cómo puedes habilitar la facturación

  4. Instala e inicializa el SDK de Cloud.
  1. Si usas comandos de gcloud, configura tu ID del proyecto con el siguiente comando. En las instrucciones de gcloud de esta página, se da por hecho que estableciste el ID del proyecto antes de emitir comandos.
  gcloud config set project [PROJECT_ID]

También puedes ver un ID del proyecto que ya se configuró:

  gcloud config list --format='text(core.project)'

Crea una red y una subred de nube privada virtual personalizada

Antes de crear una puerta de enlace de VPN clásica y un túnel, debes crear una red de nube privada virtual y al menos una subred en la región donde residirá la puerta de enlace de VPN clásica.

Crea una puerta de enlace y un túnel

El asistente de configuración de VPN es la única opción de la consola para crear una puerta de enlace de VPN clásica. En el asistente se incluyen todos los pasos de configuración necesarios para crear una puerta de enlace de VPN clásica, túneles, sesiones de BGP y un recurso de puerta de enlace de VPN externa. Sin embargo, puedes completar ciertos pasos más adelante. Por ejemplo, configurar sesiones de BGP.

El botón Crear puerta de enlace VPN solo admite la creación de puertas de enlace de VPN con alta disponibilidad.

Asistente de VPN

Configura la puerta de enlace

  1. Ve a la página VPN en Google Cloud Console.
    Ir a la página VPN
    1. Si creas una puerta de enlace por primera vez, selecciona el botón Crear conexión de VPN.
    2. Selecciona el Asistente de configuración de VPN.
  2. Selecciona el botón de selección de VPN clásica.
  3. Haz clic en Continuar.
  4. En la página Crear una conexión de VPN, especifica la siguiente configuración de puerta de enlace:
    • Nombre: El nombre de la puerta de enlace VPN. El nombre no se puede cambiar más adelante.
    • Descripción: Si lo deseas, agrega una descripción.
    • Red: Especifica una red de VPC existente en la que se creará la puerta de enlace de VPN y el túnel.
    • Región: Las puertas de enlace y túneles de Cloud VPN son objetos regionales. Elige la región de Google Cloud en la que se ubicará la puerta de enlace. Las instancias y otros recursos en diferentes regiones pueden usar el túnel para el tráfico de salida sujeto al orden de las rutas. Para obtener un mejor rendimiento, ubica la puerta de enlace y el túnel en la misma región que los recursos relevantes de Google Cloud.
    • Dirección IP: Crea o elige una dirección IP externa regional existente.

Configura túneles

  1. Especifica la siguiente configuración en la sección Túneles para el túnel nuevo:

    • Nombre: El nombre del túnel VPN. El nombre no se puede cambiar más adelante.
    • Descripción: Opcionalmente, escribe una descripción.
    • Dirección IP de par remoto: Especifica la dirección IP externa de la puerta de enlace de VPN de intercambio de tráfico.
    • Versión de IKE: Elige la versión de IKE adecuada compatible con la puerta de enlace de VPN de intercambio de tráfico. Se prefiere IKEv2 si es compatible con el dispositivo de intercambio de tráfico. Secreto compartido: Proporciona una clave precompartida que se usa para la autenticación. El secreto compartido del túnel de Cloud VPN debe coincidir con el que se usa cuando configuras el túnel equivalente en la puerta de enlace de VPN de intercambio de tráfico. Puedes seguir estas instrucciones para generar un secreto compartido que sea seguro de manera criptográfica.

    Para túneles basados en políticas, sigue estos pasos:

    • En Opciones de enrutamiento, selecciona Basado en políticas.
    • En Rangos de IP de red remota, proporciona una lista separada por espacios de los rangos de IP que usa la red de intercambio de tráfico. Este es el selector de tráfico remoto; el “lado derecho” desde la perspectiva de Cloud VPN.
    • En Rangos de IP locales, selecciona uno de los siguientes métodos:
      • Usa el menú Subredes locales para elegir un rango de IP local existente.
      • En su defecto, usa el campo Rangos de IP locales para ingresar una lista de rangos de IP separados por espacios que se usan en tu red de VPC. Consulta los selectores de tráfico para obtener consideraciones importantes.

    Para túneles basados en rutas, sigue estos pasos:

    • En Opciones de enrutamiento, selecciona Según la ruta.
    • En Rangos de IP de red remota, proporciona una lista separada por espacios de los rangos de IP que usa la red de intercambio de tráfico. Estos rangos se usan para crear rutas estáticas personalizadas cuyo salto siguiente es este túnel VPN.
  2. Si necesitas crear más túneles en la misma puerta de enlace, haz clic en Agregar túnel y repite el paso anterior. También puedes agregar más túneles luego.

  3. Haz clic en Crear.

gcloud

En estos comandos, reemplaza lo siguiente:

  • PROJECT_ID con el ID de tu proyecto.
  • NETWORK con el nombre de tu red de Google Cloud.
  • REGION con la región de Google Cloud en la que necesitas crear la puerta de enlace y el túnel.
  • --target-vpn-gateway-region es la región de la puerta de enlace de VPN clásica en la que se debe operar (opcional). Su valor debe ser el mismo que el de --region. Si no se especifica, esta opción se configura de forma automática. Con esta opción, se anula el valor predeterminado de la propiedad de procesamiento según región para esta invocación de comando.
  • GW_NAME con el nombre de la puerta de enlace.
  • GW_IP_NAME con un nombre para la IP externa utilizada por la puerta de enlace.

Completa la siguiente secuencia de comandos para crear una puerta de enlace de Google Cloud:

  1. Crea los recursos para la puerta de enlace de Cloud VPN:

    1. Crea el objeto de puerta de enlace VPN de destino.

      gcloud compute target-vpn-gateways create GW_NAME \
          --network NETWORK \
          --region REGION \
          --project PROJECT_ID
      
    2. Reserva una dirección IP externa regional (estática):

      gcloud compute addresses create GW_IP_NAME \
          --region REGION \
          --project PROJECT_ID
      
    3. Anota la dirección IP (para que puedas usarla cuando configures tu puerta de enlace de VPN de intercambio de tráfico):

      gcloud compute addresses describe GW_IP_NAME \
          --region REGION \
          --project PROJECT_ID \
          --format='flattened(address)'
      
    4. Crea tres reglas de reenvío. Estas reglas le indican a Google Cloud que envíe tráfico ESP (IPsec), UDP 500 y UDP 4500 a la puerta de enlace.

      gcloud compute forwarding-rules create fr-GW_NAME-esp \
          --ip-protocol ESP \
          --address GW_IP_NAME \
          --target-vpn-gateway GW_NAME \
          --region REGION \
          --project PROJECT_ID
      
      gcloud compute forwarding-rules create fr-GW_NAME-udp500 \
          --ip-protocol UDP \
          --ports 500 \
          --address GW_IP_NAME \
          --target-vpn-gateway GW_NAME \
          --region REGION \
          --project PROJECT_ID
      
      gcloud compute forwarding-rules create fr-GW_NAME-udp4500 \
          --ip-protocol UDP \
          --ports 4500 \
          --address GW_IP_NAME \
          --target-vpn-gateway GW_NAME \
          --region REGION \
          --project PROJECT_ID
      
  2. Crea el túnel de Cloud VPN con los siguientes detalles:

    • Reemplaza TUNNEL_NAME por un nombre para el túnel.
    • Reemplaza ON_PREM_IP por la dirección IP externa de la puerta de enlace de VPN de intercambio de tráfico.
    • Reemplaza IKE_VERS por 1 para IKEv1 o 2 para IKEv2.
    • Reemplaza SHARED_SECRET por tu secreto compartido. El secreto compartido del túnel de Cloud VPN debe coincidir con el que se usa cuando configuras el túnel equivalente en la puerta de enlace de VPN de intercambio de tráfico. Puedes seguir estas instrucciones para generar un secreto compartido que sea seguro de manera criptográfica.

    Para la VPN basada en políticas, sigue estos pasos:

    • Reemplaza LOCAL_IP_RANGES por una lista delimitada por comas de los rangos de IP de Google Cloud. Por ejemplo, puedes suministrar el bloque CIDR para cada subred en una red de VPC. Este es el “lado izquierdo” desde la perspectiva de Cloud VPN.
    • Reemplaza REMOTE_IP_RANGES por una lista delimitada por comas de los rangos de IP de la red de intercambio de tráfico. Este es el “lado derecho” desde la perspectiva de Cloud VPN.

    Comando de VPN basada en políticas:

    gcloud compute vpn-tunnels create TUNNEL_NAME \
        --peer-address ON_PREM_IP \
        --ike-version IKE_VERS \
        --shared-secret SHARED_SECRET \
        --local-traffic-selector=LOCAL_IP_RANGES \
        --remote-traffic-selector=REMOTE_IP_RANGES \
        --target-vpn-gateway GW_NAME \
        --region REGION \
        --project PROJECT_ID
    

    Para la VPN basada en rutas, sigue estos pasos:

    gcloud compute vpn-tunnels create TUNNEL_NAME \
        --peer-address ON_PREM_IP \
        --ike-version IKE_VERS \
        --shared-secret SHARED_SECRET \
        --local-traffic-selector=0.0.0.0/0 \
        --remote-traffic-selector=0.0.0.0/0 \
        --target-vpn-gateway GW_NAME \
        --region REGION \
        --project PROJECT_ID
    
  3. Crea una ruta estática para cada rango de IP remota que especificaste en la opción --remote-traffic-selector del paso anterior. Si quieres repetir este comando para cada rango de IP remota, reemplaza ROUTE_NAME por un nombre único para la ruta y [REMOTE_IP_RANGE] por el rango de IP remota adecuado.

    gcloud compute routes create ROUTE_NAME \
        --destination-range REMOTE_IP_RANGE \
        --next-hop-vpn-tunnel TUNNEL_NAME \
        --network NETWORK \
        --next-hop-vpn-tunnel-region REGION \
        --project PROJECT_ID
    

Pasos de seguimiento

Debes completar los siguientes pasos antes de poder utilizar una nueva puerta de enlace y túnel de Cloud VPN:

  1. Configura la puerta de enlace de VPN de intercambio de tráfico y configura el túnel correspondiente allí. Consulta estas páginas:
  2. Configura las reglas de firewall en Google Cloud y en la red de intercambio de tráfico según sea necesario. Consulta la página de reglas de firewall para obtener sugerencias.
  3. Comprueba el estado del túnel, incluidas las reglas de reenvío.
  4. Puedes ver las rutas de VPN si visitas la tabla de enrutamiento del proyecto
    y filtras por “Tipo de siguiente salto: Túnel VPN”.
Aplica una política de la organización de VPN

Aplica una restricción de política de la organización que restrinja las direcciones IP de las puertas de enlace VPN de intercambio de tráfico

Puedes crear una restricción de política de la organización de Google Cloud que defina un conjunto de direcciones IP permitidas o denegadas para el intercambio de tráfico entre puertas de enlace de VPN a través de VPN clásicas o túneles VPN con alta disponibilidad. Esta restricción contiene una lista de permisos o una lista de denegación de estas direcciones IP de par, que entra en vigor para los túneles de Cloud VPN creados después de aplicar la restricción. Para obtener más información, consulta la Descripción general de Cloud VPN.

Permisos necesarios

Para establecer una restricción de IP de par en el nivel de organización o proyecto, primero debes tener la función de Administrador de políticas de la organización (orgpolicy.policyAdmin).

Cómo establecer restricciones

Si quieres crear políticas de la organización y asociarlas con una organización, una carpeta o un proyecto, usa los ejemplos de las siguientes secciones y sigue los pasos en Usa las restricciones.

Restringe la conectividad de direcciones IP de par específicas a través de un túnel de Cloud VPN

Para permitir solo direcciones IP de par específicas, sigue estos pasos:

  1. Ingresa el siguiente comando para buscar el ID de la organización:
    gcloud organizations list

    El resultado del comando debería verse como el siguiente ejemplo:

          DISPLAY NAME             ID
          example-organization     29252605212
        
  2. Crea un archivo JSON que defina la política. Debes proporcionar una política como un archivo JSON, como en el siguiente ejemplo:

         {
           "constraint": "constraints/compute.restrictVpnPeersIPs",
           "listPolicy": {
             "allowedValues": [
               "100.1.1.1",
             ],
           }
         }
       
  3. Usa el comando set-policy de Resource Manager de gcloud para configurar la política de la organización, pasar el archivo JSON y usar el “ORGANIZATION_ID” que obtuviste en el paso anterior.

Restringe la conectividad de cualquier IP de par de tráfico a través de un túnel de Cloud VPN

Si quieres prohibir la creación de cualquier túnel de Cloud VPN nuevo, sigue los pasos de esta restricción de ejemplo.

  1. Busca el ID de la organización o el ID del nodo en la jerarquía de recursos en la que deseas establecer una política.
  2. Crea un archivo JSON como se muestra en el siguiente ejemplo.

        {
          "constraint": "constraints/compute.restrictVpnPeersIPs",
          "listPolicy": {
            "allValues": "DENY"
          }
        }
    
  3. Ingresa el mismo comando que usarías para restringir direcciones IP de par específicas para pasar el archivo JSON.