Configuração VPN Site-to-Site entre VPC da Nuvem e Linux

Instalar os pacotes openswan e lsof

dnf install strongswan lsof

Desativar redirects de VPN

for vpn in /proc/sys/net/ipv4/conf/*;
do echo 0 > $vpn/accept_redirects;
echo 0 > $vpn/send_redirects;
done

Editar arquivo /etc/sysctl.conf e adicionar as linhas:

net.ipv4.ip_forward = 1
net.ipv4.conf.all.accept_redirects = 0
net.ipv4.conf.all.send_redirects = 0

Recarregar o arquivo /etc/sysctl.conf

sysctl -p

Liberar as portas no firewall local

iptables -A INPUT -p udp --dport 500 -j ACCEPT
iptables -A INPUT -p tcp --dport 4500 -j ACCEPT
iptables -A INPUT -p udp --dport 4500 -j ACCEPT

*liberar também no gateway caso necessário

Configurar ipsec /etc/ipsec.conf

conn vpn-nuvem
        authby=secret
        auto=start
        ike=aes256-sha512-modp1536
        ## phase 1 ##
        keyexchange=ike
        ## phase 2 ##
        phase2=esp
        phase2alg=aes256-sha512-modp1536
        compress=no
        pfs=no
        type=tunnel
        left=<siteA-public-IP>
        leftsourceip=<siteA-public-IP>
        leftsubnet=<siteA-private-subnet>/netmask
        leftnexthop=%defaultroute
        right=<siteB-public-IP>
        rightsubnet=<siteB-private-subnet>/netmask

Configurar chave ipsec /etc/ipsec.secrets

siteA-public-IP  siteB-public-IP:  PSK  "pre-shared-key"

Reiniciar o ipsec

ipsec restart

Informações:

  • <siteA-public-IP> - IP do linux da unidade onde está o ipsec. Ex: 143.106.100.10

  • <siteA-private-subnet>/netmask - Rede da unidade e máscara. Ex: 143.106.100.0/24

  • <siteB-public-IP> - IP do gateway da nuvem. Ex: 143.106.252.100

  • <siteB-private-subnet>/netmask - Rede da nuvem e máscara. Ex: 10.10.0.0/16

Caso seja necessário informar várias subredes, coloque entre chaves e separe com vírgulas: Ex: {143.106.100.0/24,143.106.200.0/24}

No Cloudstack vá em Rede -> VPC (1), e clique na VPC desejada (2)

Clique em Gateway de VPN (3) e em Create Site-to-Site VPN Gateway (4)

O Gateway de VPN será criado;

Vá em Rede -> Gateway de VPN de usuário (5) e clique em Adicionar Gateway de VPN de usuário (6)

Preencha com os dados do seu gateway e sua rede, altere os campos conforme abaixo:

Volte no VPC (passos 1 e 2) selecione Conexão VPN (7) e Create Site-to-Site VPN Connection (8)

Selecione o gateway que foi criado anteriormente e clique em OK

Após os passos do Cloudstack e do Linux serem executados, sua VPN estará estabelecida