Como configurar VPN site-to-site entre filiais com WireGuard, OpenVPN e IPsec | Tutoriais Toda Solução

8 min de leitura Infraestrutura

Introdução

Configurar uma VPN site-to-site entre filiais é uma solução eficiente para garantir a segurança e a conectividade entre redes distintas. Neste tutorial, abordaremos três tecnologias populares para configurar essa VPN: WireGuard, OpenVPN e IPsec. Cada uma delas possui características específicas que podem se adequar a diferentes cenários e requisitos de segurança.

O objetivo é permitir que as filiais possam se comunicar de forma segura, como se estivessem na mesma rede local, independentemente da distância geográfica. Através da configuração correta de uma VPN, é possível:

  • Proteger dados sensíveis durante a transmissão;
  • Facilitar o acesso remoto a recursos da rede;
  • Conectar diferentes locais de forma eficiente e segura.

Nos próximos passos, iremos explorar cada tecnologia, suas configurações específicas e como implementá-las de maneira eficaz. Esteja preparado para seguir as instruções cuidadosamente, garantindo que sua rede esteja segura e configurada corretamente.

Pré-requisitos

Antes de iniciar a configuração da VPN site-to-site entre filiais utilizando WireGuard, OpenVPN e IPsec, é importante garantir que você possua os seguintes pré-requisitos:

  1. Servidores: Você precisará de dois servidores (um em cada filial) com acesso à internet e sistema operacional Linux (preferencialmente Ubuntu ou CentOS).
  2. Permissões de administrador: Acesso root ou sudo nos servidores para instalar pacotes e configurar as interfaces de rede.
  3. Firewall configurado: Certifique-se de que as portas necessárias para cada protocolo VPN estão abertas. Para WireGuard, a porta padrão é 51820; para OpenVPN, a porta 1194 (UDP por padrão); e para IPsec, as portas 500 e 4500 (UDP).
  4. DNS: Um servidor DNS configurado e acessível para resolver nomes de domínio, se necessário.
  5. Conhecimento básico de rede: Familiaridade com conceitos de rede, como endereçamento IP e roteamento, será útil durante a configuração.

Certifique-se de que todos os pré-requisitos estão atendidos antes de prosseguir para as seções de configuração de cada protocolo.

WireGuard

O WireGuard é uma solução moderna e eficiente para a criação de VPNs. Para configurar uma VPN site-to-site entre suas filiais, siga os passos abaixo:

sudo apt install wireguard
wg genkey | tee privatekey | wg pubkey > publickey
[Interface]
Address = 10.0.1.1/24
PrivateKey = 

[Peer]
PublicKey = 
Endpoint = :51820
AllowedIPs = 10.0.2.0/24
[Interface]
Address = 10.0.2.1/24
PrivateKey = 

[Peer]
PublicKey = 
Endpoint = :51820
AllowedIPs = 10.0.1.0/24
sudo wg-quick up wg0
sudo wg
  1. Instalar o WireGuard: Em ambas as filiais, instale o WireGuard. Execute o seguinte comando:
  2. Gerar chaves: Em cada filial, gere um par de chaves pública e privada:
  3. Configurar o arquivo de interface: Crie o arquivo de configuração em ambas as filiais. Por exemplo, em Filial A, crie o arquivo /etc/wireguard/wg0.conf com o seguinte conteúdo:
  4. Configurar a Filial B: Em Filial B, crie um arquivo similar, alterando os endereços e chaves conforme necessário:
  5. Iniciar o WireGuard: Após configurar os arquivos, inicie o WireGuard em ambas as filiais:
  6. Verificar a conexão: Utilize o comando abaixo para verificar se a conexão está ativa:

Com esses passos, você configurou o WireGuard para estabelecer a VPN site-to-site entre suas filiais. Certifique-se de que as portas estejam liberadas no firewall para a comunicação adequada.

OpenVPN

O OpenVPN é uma solução robusta e amplamente utilizada para a criação de VPNs. A seguir, apresentamos os passos para configurar uma VPN site-to-site usando OpenVPN.

sudo apt update
sudo apt install openvpn
make-cadir ~/openvpn-ca
cd ~/openvpn-ca
source vars
./clean-all
./build-ca
./build-key-server server
port 1194
proto udp
dev tun
ca ca.crt
cert server.crt
key server.key
dh dh2048.pem
server 10.8.0.0 255.255.255.0
ifconfig-pool-persist ipp.txt
keepalive 10 120
cipher AES-256-CBC
comp-lzo
persist-key
persist-tun
status openvpn-status.log
verb 3
sudo systemctl start openvpn@server
  1. Instale o OpenVPN em ambas as filiais. No Debian/Ubuntu, use o seguinte comando:
  2. Gere os certificados e chaves. Utilize o Easy-RSA para facilitar esse processo. No servidor, crie um diretório para o Easy-RSA:
  3. Configure as variáveis em vars dentro do diretório criado e, em seguida, execute:
  4. Gere a chave do servidor e o certificado:
  5. Crie um arquivo de configuração para o servidor OpenVPN, normalmente em /etc/openvpn/server.conf. Um exemplo básico de configuração:
  6. Inicie o serviço do OpenVPN:
  7. Repita os passos nas filiais, ajustando as configurações conforme necessário para cada rede.

Após a configuração, verifique se a conexão está funcionando corretamente.

IPsec

A configuração do IPsec é uma alternativa robusta para garantir a segurança da comunicação entre as filiais. Siga os passos abaixo para configurar uma VPN site-to-site utilizando IPsec.

sudo apt update
sudo apt install strongswan
sudo nano /etc/ipsec.conf
config setup
    charon {
        load_modular = yes
    }

    conn %default
        keyexchange=ikev2
        ike=aes256-sha256-modp1024!
        esp=aes256-sha256!
        dpdaction=clear
        dpddelay=300s
        dpdtimeout=1h

    conn site-to-site
        left=
        leftsubnet=
        right=
        rightsubnet=
        auto=start
sudo nano /etc/ipsec.secrets
 : PSK "sua_senha_secreta"
sudo systemctl restart strongswan
sudo ipsec statusall
  1. Instale o pacote strongSwan em ambos os servidores:
  2. Edite o arquivo de configuração do strongSwan:
  3. Adicione a seguinte configuração no arquivo:
  4. Configure as credenciais de autenticação no arquivo:
  5. Adicione a linha de autenticação:
  6. Reinicie o serviço do strongSwan:
  7. Verifique se a conexão está ativa:

Com essas etapas, a VPN IPsec deve estar configurada e funcionando entre as filiais.

Verificação

Após a configuração da VPN site-to-site, é essencial realizar algumas verificações para garantir que a conectividade entre as filiais está funcionando corretamente. Siga os passos abaixo:

ping 
ip route
  1. Verifique o status da conexão VPN: Em cada servidor, utilize o comando correspondente para o tipo de VPN configurada.
    sudo wg show
    sudo systemctl status openvpn@server
    sudo ipsec status
    • Para WireGuard, execute:
    • Para OpenVPN, utilize:
    • Para IPsec, verifique com:
  2. Testar a conectividade: Realize um ping entre as máquinas de ambas as filiais para confirmar que a comunicação está estabelecida.
  3. Verifique as rotas: Confirme se as rotas estão corretamente configuradas utilizando o comando:

Se todas as verificações forem bem-sucedidas, sua VPN site-to-site está funcionando corretamente e a comunicação entre as filiais está segura e estável.

Conclusão

Configurar uma VPN site-to-site entre filiais utilizando WireGuard, OpenVPN e IPsec é uma solução eficaz para garantir a segurança e a conectividade entre redes. Ao seguir os passos descritos, você pode implementar uma infraestrutura robusta que atende às necessidades de comunicação entre as filiais da sua empresa.

É importante lembrar que cada protocolo possui suas características e vantagens. Ao escolher entre WireGuard, OpenVPN e IPsec, considere fatores como:

  • Desempenho: WireGuard é conhecido por sua eficiência e menor latência.
  • Compatibilidade: OpenVPN é amplamente suportado em diversas plataformas.
  • Segurança: IPsec oferece uma forte segurança, sendo uma escolha consolidada para empresas.

Após a configuração, é essencial monitorar a conexão VPN para garantir que a comunicação entre as filiais permaneça estável e segura. Utilize ferramentas de diagnóstico e logs para identificar e resolver possíveis problemas.

Com a implementação correta, sua empresa poderá usufruir de uma rede privada virtual confiável, facilitando a troca de dados e a colaboração entre equipes distribuídas geograficamente.

Esse tutorial foi útil?

Comentários (0)

Seja o primeiro a comentar.

Deixe seu comentário

Seu comentário será analisado antes de ser publicado.

0/2000
WhatsApp