IBM Cloud Docs
Conexión a un igual de Vyatta

Conexión a un igual de Vyatta

Puede utilizar IBM Cloud VPN for VPC para conectar de forma segura el VPC a una red local a través de un túnel VPN. En este tema encontrará una orientación sobre cómo configurar la pasarela VPN de Viatta para conectarse con VPN for VPC.

Estas instrucciones se basan en la versión de Vyatta: AT&T vRouter 5600 1801d.

Lea las limitaciones de la pasarela VPN antes de seguir conectándose al igual local.

Cuando la VPN de Vyatta recibe una solicitud de conexión de VPN for VPC, Vyatta utiliza los parámetros de fase 1 de IPsec para establecer una conexión segura y autenticar la pasarela de VPN for VPC. A continuación, si la política de seguridad permite la conexión, la VPN de Vyatta establece el túnel utilizando los parámetros de la Fase 2 de IPsec y aplica la política de seguridad de IPsec. Los servicios de seguridad, autenticación y gestión de claves se negocian dinámicamente mediante el protocolo IKE.

Para ofrecer soporte a estas funciones, se deben seguir los siguientes pasos de configuración general en la VPN de Vyatta:

  • Defina los parámetros de fase 1 que Vyatta necesita para autenticar VPN for VPC y establecer una conexión segura.
  • Defina los parámetros de fase 2 que Vyatta necesita para crear un túnel VPN con VPN for VPC.

Conexión de una VPN basada en políticas de IBM a un igual de Vyatta

Utilice la configuración siguiente:

  1. Elija IKEv2 en la autenticación.
  2. Habilite DH-group 19 en la propuesta de fase 1.
  3. Establezca lifetime = 36000 en la propuesta de fase 1.
  4. Inhabilite PFS en la propuesta de fase 2.
  5. Establezca lifetime = 10800 en la propuesta de fase 2.
  6. Especifique la información de subredes y de iguales en la propuesta de fase 2.

Los siguientes mandatos utilizan las variables a continuación, donde:

  • {{ peer_address }} es la dirección IP pública de la pasarela VPN.
  • {{ ibm_vpc_cidr }} es una subred de IBM VPC.
  • {{ vyatta_address }} es la dirección IP pública de Vyatta.
  • {{ vyatta_cidr }} es la subred de Vyatta.

Antes de empezar

Para configurar el igual de Vyatta remoto, asegúrese de crear los siguientes requisitos previos.

  • Una VPC

  • Una subred en la VPC

  • Una pasarela VPN en la VPC sin conexiones

    Una vez suministrada la pasarela VPN, anote su dirección IP pública.

  • La dirección IP pública de Vyatta

  • La subred de Vyatta que desea conectar utilizando una VPN

Configuración de Vyatta

Hay dos maneras de ejecutar la configuración en Vyatta:

  1. Inicie sesión en Vyatta y ejecute el archivo create_vpn.vcli con los siguientes mandatos.
  2. Ejecute los siguientes mandatos en la consola de Vyatta.

Recuerde:

  • Elija IKEv2 en la autenticación.
  • Habilite DH-group 19.
  • Establezca lifetime = 36000.
  • Inhabilite PFS.
  • Establezca lifetime = 10800.

Estos mandatos utilizan las siguientes variables, donde:

  • {{ peer_address }} es la dirección IP pública de la pasarela VPN.
  • {{ ibm_vpc_cidr }} es la subred de IBM VPC.
  • {{ vyatta_address }} es la dirección IP pública de Vyatta.
  • {{ vyatta_cidr }} es la subred de Vyatta.
vim vyatta_temp/create_vpn.vcli
#!/bin/vcli -f
configure

set security vpn ipsec ike-group {{ peer_address }}_{{ ike["name"] }}
set security vpn ipsec ike-group {{ peer_address }}_{{ ike["name"] }} dead-peer-detection timeout 120
set security vpn ipsec ike-group {{ peer_address }}_{{ ike["name"] }} lifetime {{ ike["lifetime"] }}
set security vpn ipsec ike-group {{ peer_address }}_{{ ike["name"] }} ike-version {{ ike["version"] }}

set security vpn ipsec ike-group {{ peer_address }}_{{ ike["name"] }} proposal {{ loop.index }}
set security vpn ipsec ike-group {{ peer_address }}_{{ ike["name"] }} proposal {{ loop.index }} dh-group {{ proposal["dhgroup"] }}
set security vpn ipsec ike-group {{ peer_address }}_{{ ike["name"] }} proposal {{ loop.index }} encryption {{ proposal["encryption"] }}
set security vpn ipsec ike-group {{ peer_address }}_{{ ike["name"] }} proposal {{ loop.index }} hash {{ proposal["integrity"] }}


set security vpn ipsec esp-group {{ peer_address }}_{{ ipsec["name"] }} compression disable
set security vpn ipsec esp-group {{ peer_address }}_{{ ipsec["name"] }} lifetime {{ ipsec["lifetime"] }}
set security vpn ipsec esp-group {{ peer_address }}_{{ ipsec["name"] }} mode tunnel
set security vpn ipsec esp-group {{ peer_address }}_{{ ipsec["name"] }} pfs {{ ipsec["proposals"][0]["dhgroup"] }}

set security vpn ipsec esp-group {{ peer_address }}_{{ ipsec["name"] }} proposal {{ loop.index }} encryption {{ proposal["encryption"] }}
set security vpn ipsec esp-group {{ peer_address }}_{{ ipsec["name"] }} proposal {{ loop.index }} hash {{ proposal["integrity"] }}

set security vpn ipsec site-to-site peer {{ peer_address }} authentication mode pre-shared-secret
set security vpn ipsec site-to-site peer {{ peer_address }} authentication pre-shared-secret {{ psk }}
set security vpn ipsec site-to-site peer {{ peer_address }} ike-group {{ peer_address }}_{{ ike["name"] }}
set security vpn ipsec site-to-site peer {{ peer_address }} default-esp-group {{ peer_address }}_{{ ipsec["name"] }}
set security vpn ipsec site-to-site peer {{ peer_address }} description "automation test"
set security vpn ipsec site-to-site peer {{ peer_address }} local-address {{ vyatta_address }}
set security vpn ipsec site-to-site peer {{ peer_address }} connection-type {{ connection_type }}
set security vpn ipsec site-to-site peer {{ peer_address }} authentication remote-id {{ peer_address }}

set security vpn ipsec site-to-site peer {{ peer_address }} tunnel {{ ns.tunnel_index }} local prefix {{ vyatta_cidr }}
set security vpn ipsec site-to-site peer {{ peer_address }} tunnel {{ ns.tunnel_index }} remote prefix {{ ibm_vpc_cidr }}

commit
end_configure

Por ejemplo, puede ejecutar los siguientes mandatos:

#!/bin/vcli -f
configure

set security vpn ipsec ike-group 169.61.247.167_test_ike
set security vpn ipsec ike-group 169.61.247.167_test_ike dead-peer-detection timeout 120
set security vpn ipsec ike-group 169.61.247.167_test_ike lifetime 36000
set security vpn ipsec ike-group 169.61.247.167_test_ike ike-version 2

set security vpn ipsec ike-group 169.61.247.167_test_ike proposal 1
set security vpn ipsec ike-group 169.61.247.167_test_ike proposal 1 dh-group 19
set security vpn ipsec ike-group 169.61.247.167_test_ike proposal 1 encryption aes256
set security vpn ipsec ike-group 169.61.247.167_test_ike proposal 1 hash sha2_256
set security vpn ipsec esp-group 169.61.247.167_test_ipsec compression disable
set security vpn ipsec esp-group 169.61.247.167_test_ipsec lifetime 10800
set security vpn ipsec esp-group 169.61.247.167_test_ipsec mode tunnel
set security vpn ipsec esp-group 169.61.247.167_test_ipsec pfs disable


set security vpn ipsec esp-group 169.61.247.167_test_ipsec proposal 1 encryption aes256
set security vpn ipsec esp-group 169.61.247.167_test_ipsec proposal 1 hash sha2_256
set security vpn ipsec site-to-site peer 169.61.247.167 authentication mode pre-shared-secret
set security vpn ipsec site-to-site peer 169.61.247.167 authentication pre-shared-secret ***YOUR-PSK***
set security vpn ipsec site-to-site peer 169.61.247.167 ike-group 169.61.247.167_test_ike
set security vpn ipsec site-to-site peer 169.61.247.167 default-esp-group 169.61.247.167_test_ipsec
set security vpn ipsec site-to-site peer 169.61.247.167 description "automation test"
set security vpn ipsec site-to-site peer 169.61.247.167 local-address 169.63.66.53
set security vpn ipsec site-to-site peer 169.61.247.167 connection-type initiate
set security vpn ipsec site-to-site peer 169.61.247.167 authentication remote-id 169.61.247.167


set security vpn ipsec site-to-site peer 169.61.247.167 tunnel 1 local prefix 10.65.15.104/29
set security vpn ipsec site-to-site peer 169.61.247.167 tunnel 1 remote prefix 10.240.0.0/24


commit
end_configure

Por último, anote el valor de {{ psk }}. Es necesario que configure la conexión VPN en el paso siguiente.

Conexión de una VPN basada en ruta de IBM a un igual de Vyatta

Utilice la siguiente política IKE e IPsec para crear la conexión VPN a Vyatta:

  1. Elija IKEv2 en la autenticación.
  2. Habilite DH-group 19, aes256 y sha256 en la propuesta de fase 1.
  3. Establezca lifetime = 86400 en la propuesta de fase 1.
  4. Habilite PFS, aes256 y sha256 en la propuesta de fase 2.
  5. Establezca lifetime = 10800 en la propuesta de fase 2.

Esta política es solo un ejemplo. Puede utilizar cualquier otro valor que coincida con la propuesta de Vyatta.

Antes de empezar

Para configurar el igual de Vyatta remoto, asegúrese de crear los siguientes requisitos previos:

  • Una VPC

  • Una subred en la VPC

  • Una pasarela VPN en la VPC sin conexiones

    Una vez suministrada la pasarela VPN, anote su dirección IP pública. La dirección IP pequeña es la IP primaria y la dirección IP grande es la IP secundaria.

  • La dirección IP pública de Vyatta

  • La subred de Vyatta que desea conectar utilizando una VPN

Configuración de Vyatta

Los siguientes mandatos utilizan las variables a continuación, donde:

  • {{ primary_peer_address }} es la dirección IP pública pequeña de la pasarela VPN basada en ruta.
  • {{ ibm_vpc_cidr }} es la subred de IBM VPC.
  • {{ secondary_peer_address }} es la dirección IP pública grande de la pasarela VPN basada en ruta.
  • {{ vyatta_address }} es la dirección IP pública de Vyatta.

A continuación, se muestra un ejemplo de configuración de Vyatta.

  1. Defina la propuesta IKE coincidente:

    set security vpn ipsec ike-group ibm-vpc-ike-group
    set security vpn ipsec ike-group ibm-vpc-ike-group dead-peer-detection interval 2
    set security vpn ipsec ike-group ibm-vpc-ike-group dead-peer-detection action clear
    set security vpn ipsec ike-group ibm-vpc-ike-group lifetime 86400
    set security vpn ipsec ike-group ibm-vpc-ike-group ike-version 2
    set security vpn ipsec ike-group ibm-vpc-ike-group proposal 1
    set security vpn ipsec ike-group ibm-vpc-ike-group proposal 1 dh-group 19
    set security vpn ipsec ike-group ibm-vpc-ike-group proposal 1 encryption aes256
    set security vpn ipsec ike-group ibm-vpc-ike-group proposal 1 hash sha2_256
    
  2. Defina la propuesta de IPsec coincidente:

    set security vpn ipsec esp-group ibm-vpc-ipsec-group compression disable
    set security vpn ipsec esp-group ibm-vpc-ipsec-group lifetime 10800
    set security vpn ipsec esp-group ibm-vpc-ipsec-group mode tunnel
    set security vpn ipsec esp-group ibm-vpc-ipsec-group pfs dh-group19
    set security vpn ipsec esp-group ibm-vpc-ipsec-group proposal 1 encryption aes256
    set security vpn ipsec esp-group ibm-vpc-ipsec-group proposal 1 hash sha2_256
    
  3. Cree la conexión VTI y VPN con el túnel primario de IBM:

    Cree la interfaz de túnel virtual y configure la dirección de enlace local (169.254.0.2/30) en la interfaz. Procure elegir la dirección de enlace local y asegúrese de que no se solape con otras direcciones del dispositivo. Hay dos direcciones IP disponibles (169.254.0.1 y 169.254.0.2) en una subred con una máscara de red de 30 bits. La primera dirección IP 169.254.0.1 se utiliza como dirección VTI de pasarela de IBM VPN; la segunda, 169.254.0.2, se utiliza como dirección VTI de Vyatta. Si tiene más de una VTI en Vyatta, puede elegir otra subred de enlace local como, por ejemplo, 169.254.0.4/30, 169.254.0.8/30, etc.

    No es necesario configurar 169.254.0.1 en la pasarela de IBM VPN. Solo se referencia al configurar las rutas en Vyatta.

    set interfaces vti vti1 description "to-IBM-VPN-primary"
    set interfaces vti vti1 address 169.254.0.2/30
    set interfaces vti vti1 ip tcp-mss limit 1360
    set security vpn ipsec site-to-site peer {{ primary_peer_address }} authentication mode pre-shared-secret
    set security vpn ipsec site-to-site peer {{ primary_peer_address }} authentication pre-shared-secret {{your_pre_shared_key}}
    set security vpn ipsec site-to-site peer {{ primary_peer_address }} ike-group ibm-vpc-ike-group
    set security vpn ipsec site-to-site peer {{ primary_peer_address }} default-esp-group ibm-vpc-ipsec-group
    set security vpn ipsec site-to-site peer {{ primary_peer_address }} description "to-IBM-VPN-primary"
    set security vpn ipsec site-to-site peer {{ primary_peer_address }} local-address {{ vyatta_address }}
    set security vpn ipsec site-to-site peer {{ primary_peer_address }} connection-type initiate
    set security vpn ipsec site-to-site peer {{ primary_peer_address }} authentication remote-id {{ primary_peer_address }}
    set security vpn ipsec site-to-site peer {{ primary_peer_address }} vti bind vti1
    
  4. Cree la ruta primaria:

    set protocols static route {{ ibm_vpc_cidr }} next-hop 169.254.0.1 distance 10
    set protocols static route {{ ibm_vpc_cidr }} next-hop 169.254.0.1 interface vti1
    
  5. Cree la conexión VTI y VPN con el túnel secundario de IBM:

    set interfaces vti vti2 description "to-IBM-VPN-secondary"
    set interfaces vti vti2 address 169.254.0.6/30
    set interfaces vti vti2 ip tcp-mss limit 1360
    set security vpn ipsec site-to-site peer {{ secondary_peer_address }} authentication mode pre-shared-secret
    set security vpn ipsec site-to-site peer {{ secondary_peer_address }} authentication pre-shared-secret {{your_pre_shared_key}}
    set security vpn ipsec site-to-site peer {{ secondary_peer_address }} ike-group ibm-vpc-ike-group
    set security vpn ipsec site-to-site peer {{ secondary_peer_address }} default-esp-group ibm-vpc-ipsec-group
    set security vpn ipsec site-to-site peer {{ secondary_peer_address }} description "to-IBM-VPN-secondary"
    set security vpn ipsec site-to-site peer {{ secondary_peer_address }} local-address {{ vyatta_address }}
    set security vpn ipsec site-to-site peer {{ secondary_peer_address }} connection-type initiate
    set security vpn ipsec site-to-site peer {{ secondary_peer_address }} authentication remote-id {{ secondary_peer_address }}
    set security vpn ipsec site-to-site peer {{ secondary_peer_address }} vti bind vti2
    

    La dirección IP de VTI 169.254.0.6 es un ejemplo. Puede utilizar cualquier otra dirección IP no utilizada.

  6. Cree la ruta primaria:

    set protocols static route {{ ibm_vpc_cidr }} next-hop 169.254.0.5 distance 20
    set protocols static route {{ ibm_vpc_cidr }} next-hop 169.254.0.5 interface vti2
    

Resolución de problemas

  • Si habilita el cortafuegos de CPP en Vyatta, debe configurar las reglas para permitir el tráfico desde la pasarela de IBM. Por ejemplo, si el nombre de cortafuegos de CPP es GATEWAY_CPP, añada estas reglas al cortafuegos:

    # set security firewall name GATEWAY_CPP rule 250 source address 169.61.247.167
    # set security firewall name GATEWAY_CPP rule 250 action accept
    
  • Si va a aplicar el cortafuegos a la interfaz, debe permitir el tráfico desde IBM VPC. Por ejemplo:

    # set security firewall name to-vpc rule 20 destination address 10.240.0.0/24
    # set security firewall name to-vpc rule 20 action accept
    # set security firewall name from-vpc rule 20 source address 10.240.0.0/24
    # set security firewall name from-vpc rule 20 action accept
    # set interfaces bonding dp0bond0 vif 862 firewall out to-vpc
    # set interfaces bonding dp0bond0 vif 862 firewall in from-vpc
    

    Es posible que tenga que añadir otras reglas de acuerdo con el requisito de red para permitir otro tráfico.

  • Si utiliza un cortafuegos de zona con IPsec, consulte Configuración de un túnel IPsec que funcione con cortafuegos de zona.