Conexión a un igual de strongSwan
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 de VPN. En este tema se proporciona orientación sobre cómo configurar la pasarela VPN de strongSwan para conectarse a VPN for VPC.
Estas instrucciones se basan en Linux strongSwan U5.3.5/K4.4.0-133-generic.
Lea Problemas conocidos de las pasarelas VPN antes de continuar conectándose a su homólogo local.
Vaya al directorio /etc y cree un nuevo archivo de configuración de túnel personalizado con un nombre (como ipsec.abc.conf
). Edite el archivo /etc/ipsec.conf
para que incluya el nuevo archivo ipsec.abc.conf
añadiendo la línea siguiente:
include /etc/ipsec.abc.conf
Cuando una VPN de strongSwan recibe una solicitud de conexión de VPN for VPC, strongSwan utiliza los parámetros de fase 1 de IPsec para establecer una conexión segura y autenticarse en la pasarela de VPN for VPC. A continuación, si la política de seguridad permite la conexión, la VPN de strongSwan 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 realizar los siguientes pasos de configuración general en la VPN de strongSwan:
- Defina los parámetros de fase 1 que la VPN de strongSwan necesita para autenticar VPN for VPC y establecer una conexión segura.
- Defina los parámetros de fase 2 que la VPN de strongSwan 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 strongSwan
Utilice la configuración siguiente:
-
Elija
IKEv2
en la autenticación. -
Habilite
DH-group 2
en la propuesta de fase 1. -
Establezca
lifetime = 36000
en la propuesta de fase 1. -
Inhabilite PFS en la propuesta de fase 2.
-
Establezca
lifetime = 10800
en la propuesta de fase 2. -
Especifique la información de subredes y de iguales en la propuesta de fase 2.
El siguiente ejemplo define una conexión entre la subred local
10.160.26.64/26
(cuya pasarela VPN strongSwan tiene la dirección IP169.45.74.119
) y la subred VPC192.168.17.0/28
(cuya pasarela VPN for VPC tiene la dirección IP169.61.181.116
).vim /etc/ipsec.abc.conf conn all type=tunnel auto=start #aggressive=no esp=aes256-sha256! ike=aes256-sha256-modp2048! left=%any leftsubnet=10.160.26.64/26 rightsubnet=192.168.17.0/28 right=169.61.181.116 leftauth=psk rightauth=psk leftid="169.45.74.119" keyexchange=ikev2 rightid="169.61.181.116" lifetime=10800s ikelifetime=36000s dpddelay=30s dpdaction=restart dpdtimeout=120s
-
Establezca la clave precompartida en
/etc/ipsec.secrets
:vim ipsec.secrets # This file holds shared secrets or RSA private keys for authentication. 169.45.74.119 169.61.181.116 : PSK "******"
-
Reinicie la VPN de StrongSwan cuando el archivo de configuración haya terminado de ejecutarse.
ipsec restart
Conexión de una VPN basada en rutas IBM a un peer strongSwan
El siguiente ejemplo de configuración muestra cómo configurar dos túneles basados en rutas entre el strongSwan y VPN for VPC.
-
Para activar el reenvío IP, introduzca el siguiente comando:
sudo sysctl -w net.ipv4.conf.all.forwarding=1
-
Crea un archivo llamado
/etc/strongswan.d/charon-no-route-install.conf
y añade el siguiente contenido:charon { install_routes = no }
-
Para configurar la conexión VPN, actualice el archivo
/etc/ipsec.abc.conf
. En el siguiente ejemplo, la pasarela VPN tiene dos IP públicas (135.90.134.86
,135.90.134.87
). La IP del servidor strongSwan es169.59.212.125
. Esta configuración crea dos conexiones. Laleftid
es la IP pública del servidor strongSwan, mientras que lasright
yrightid
representan la IP pública de la pasarela VPN.conn peer_135.90.134.86 keyexchange=ikev2 left=%any leftid=169.59.212.125 leftsubnet=0.0.0.0/0 rightsubnet=0.0.0.0/0 right=135.90.134.86 rightid=135.90.134.86 auto=start ike=aes256-aes192-aes128-sha512-sha384-sha256-modp2048s256-modp2048s224-modp1024s160-ecp521-ecp384-ecp256-modp8192-modp6144-modp4096-modp3072-modp2048-x25519! ikelifetime=36000s esp=aes256gcm16-aes192gcm16-aes128gcm16,aes256-aes192-aes128-sha512-sha384-sha256! lifetime=10800s type=tunnel leftauth=psk rightauth=psk dpdaction = restart dpddelay = 10s mark = 1 conn peer_135.90.134.87 keyexchange=ikev2 left=%any leftid=169.59.212.125 leftsubnet=0.0.0.0/0 rightsubnet=0.0.0.0/0 right=135.90.134.87 rightid=135.90.134.87 auto=start ike=aes256-aes192-aes128-sha512-sha384-sha256-modp2048s256-modp2048s224-modp1024s160-ecp521-ecp384-ecp256-modp8192-modp6144-modp4096-modp3072-modp2048-x25519! ikelifetime=36000s esp=aes256gcm16-aes192gcm16-aes128gcm16,aes256-aes192-aes128-sha512-sha384-sha256! lifetime=10800s type=tunnel leftauth=psk rightauth=psk dpdaction = restart dpddelay = 10s mark = 2
-
Establece la clave precompartida en el archivo
/etc/ipsec.secrets
y sustituye******
por el valor real de la clave precompartida:169.59.212.125 135.90.134.86 : PSK "******" 169.59.212.125 135.90.134.86 : PSK "******"
-
Cree interfaces virtuales en el servidor y establezca el estado de la interfaz VTI en
up
. Sustituyamark_num
por el valor demark
(definido en el paso 3). Ellocal_ip
es la IP privada del servidor strongSwan, y elremote_ip
es la IP pública de las direcciones IP públicas de la pasarela VPN.# sample: sudo ip tunnel add vti<mark_num> local <local_ip> remote <remote_ip> mode vti key <mark_num> sudo ip tunnel add vti1 local 10.240.2.11 remote 135.90.134.86 mode vti key 1 sudo ip tunnel add vti1 local 10.240.2.11 remote 135.90.134.87 mode vti key 2 sudo ip link set vti1 up sudo ip link set vti2 up
-
Añade una ruta en el servidor strongSwan. En este ejemplo,
10.240.0.0/24
es la subred de la pasarela VPN a la que conectarse y los nombres VTI son los nombres VTI del paso 5.sudo ip route add 10.240.0.0/24 proto static nexthop dev vti1 nexthop dev vti2
-
Reinicie la VPN de StrongSwan cuando el archivo de configuración haya terminado de ejecutarse.
ipsec restart