Conectando-se a um peer do strongSwan
É possível usar o IBM Cloud VPN for VPC para conectar de forma segura sua VPC a uma rede no local por meio de um túnel VPN. Este tópico fornece orientação sobre como configurar o seu gateway VPN do strongSwan para se conectar ao VPN for VPC.
Estas instruções são baseadas no Linux strongSwan U5.3.5/K4.4.0-133-generic.
Leia os problemas conhecidos dos gateways de VPN antes de continuar a se conectar ao seu par local.
Vá para o diretório /etc e crie um novo arquivo de configuração de túnel personalizado com um nome (como ipsec.abc.conf
). Edite o arquivo /etc/ipsec.conf
para incluir o novo arquivo ipsec.abc.conf
incluindo a linha a seguir:
include /etc/ipsec.abc.conf
Quando a VPN do strongSwan recebe uma solicitação de conexão do VPN for VPC, o strongSwan usa os parâmetros da Fase 1 do IPsec para estabelecer uma conexão segura e autenticar o gateway do VPN for VPC. Em seguida, se a política de segurança permitir a conexão, a VPN de strongSwan estabelecerá o túnel usando os parâmetros da Fase 2 do IPsec e aplicará a política de segurança do IPsec. Os serviços de gerenciamento de chaves, de autenticação e de segurança são negociados dinamicamente por meio do protocolo IKE.
Para suportar essas funções, as etapas gerais de configuração a seguir devem ser executadas na VPN do strongSwan:
- Defina os parâmetros da Fase 1 que o strongSwan requer para autenticar o VPN for VPC e estabelecer uma conexão segura.
- Defina os parâmetros da Fase 2 que o strongSwan requer para criar um túnel VPN com o VPN for VPC.
Conectando uma VPN baseada em política IBM a um peer strongSwan
Use a configuração a seguir:
-
Escolha
IKEv2
na autenticação. -
Ative
DH-group 2
na proposta da Fase 1. -
Configure
lifetime = 36000
na proposta da Fase 1. -
Desative o PFS na proposta da Fase 2.
-
Configure
lifetime = 10800
na proposta da Fase 2. -
Insira suas informações de peers e sub-redes na proposta da Fase 2.
O exemplo a seguir define uma conexão entre a sub-rede local
10.160.26.64/26
(cujo gateway de VPN strongSwan tem o endereço IP169.45.74.119
) e a sub-rede VPC192.168.17.0/28
(cujo gateway VPN for VPC tem o endereço 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
-
Configure a chave pré-compartilhada em
/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 "******"
-
Após o arquivo de configuração concluir a execução, reinicie a VPN do strongSwan.
ipsec restart
Conexão de uma VPN baseada em rota IBM a um par strongSwan
O exemplo de configuração a seguir mostra como configurar dois túneis baseados em rota entre o strongSwan e a VPN for VPC.
-
Para ativar o encaminhamento de IP, digite o seguinte comando:
sudo sysctl -w net.ipv4.conf.all.forwarding=1
-
Crie um arquivo chamado
/etc/strongswan.d/charon-no-route-install.conf
e adicione o seguinte conteúdo:charon { install_routes = no }
-
Para configurar a conexão VPN, atualize o arquivo
/etc/ipsec.abc.conf
. No exemplo a seguir, o gateway de VPN tem dois IPs públicos (135.90.134.86
,135.90.134.87
). O IP do servidor strongSwan é169.59.212.125
. Essa configuração cria duas conexões. Oleftid
é o IP público do servidor strongSwan, enquanto oright
e orightid
representam o IP público do gateway de 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
-
Defina a chave pré-compartilhada no arquivo
/etc/ipsec.secrets
e substitua******
pelo valor real da chave pré-compartilhada:169.59.212.125 135.90.134.86 : PSK "******" 169.59.212.125 135.90.134.86 : PSK "******"
-
Crie interfaces virtuais no servidor e defina o status da interface VTI como
up
. Substituamark_num
pelo valor demark
(conforme definido na etapa 3). Olocal_ip
é o IP privado do servidor strongSwan, e oremote_ip
é o IP público dos endereços IP públicos do gateway 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
-
Adicione uma rota no servidor strongSwan. Neste exemplo,
10.240.0.0/24
é a sub-rede do gateway de VPN ao qual se conectar e os nomes de VTI são os nomes de VTI da etapa 5.sudo ip route add 10.240.0.0/24 proto static nexthop dev vti1 nexthop dev vti2
-
Após o arquivo de configuração concluir a execução, reinicie a VPN do strongSwan.
ipsec restart