Capítulo 25 – VPN Site-to-Site com WireGuard
Introdução
O WireGuard é uma solução de VPN moderna, leve e de alto desempenho, desenvolvida com foco em simplicidade e segurança.
Diferentemente de protocolos tradicionais como IPsec e OpenVPN, o WireGuard utiliza um código-fonte extremamente enxuto, algoritmos criptográficos atuais e uma configuração mais intuitiva, tornando-se uma excelente escolha para conexões site-to-site e acesso remoto seguro.
Neste capítulo, aprenderemos a configurar um túnel WireGuard site-to-site entre matriz e filial no OPNsense, destacando como o protocolo pode ser implementado em cenários em que apenas uma das pontas possui IP público fixo.
Ao final, teremos uma comunicação segura e transparente entre as redes locais de ambas as unidades, com desempenho superior e simplicidade operacional.
Cenário de Exemplo
| Local | Função | IP Público | Rede LAN | IP do Túnel |
|---|---|---|---|---|
| Matriz (Firewall A) | Servidor (aguarda conexão) | 200.0.0.1 (fixo) | 192.168.1.0/24 | 10.90.0.1 |
| Filial (Firewall B) | Cliente (inicia conexão) | IP dinâmico / NAT | 192.168.2.0/24 | 10.90.0.2 |
Objetivo:
Estabelecer uma conexão VPN site-to-site que permita comunicação entre as redes 192.168.1.0/24 e 192.168.2.0/24, utilizando o túnel 10.90.0.0/30.
Cliente e Servidor no WireGuard
No WireGuard, tecnicamente não há distinção rígida entre cliente e servidor.
Usamos o termo servidor apenas para indicar o lado com IP público fixo, que aguarda conexões iniciadas pela outra ponta (cliente).
Etapa 1 – Configurar o WireGuard na Matriz
Acesse VPN → WireGuard → Instances.
- Marque Enable WireGuard e clique em Apply.
- Clique em + Add para criar uma nova instância.
- Preencha os campos conforme abaixo:
| Campo | Valor |
|---|---|
| Name | Tunel-Filial |
| Listen Port | 51820 |
| Tunnel Address | 10.90.0.1/30 |
| Public/Private Key | Clique no ícone de engrenagem para gerar automaticamente |
| Description | Instância WireGuard – Matriz |
- Clique em Save e depois em Apply.
Etapa 2 – Configurar o WireGuard na Filial
Acesse VPN → WireGuard → Instances.
- Marque Enable WireGuard e clique em Apply.
- Clique em + Add e configure conforme abaixo:
| Campo | Valor |
|---|---|
| Name | Tunel-Matriz |
| Listen Port | 51820 |
| Tunnel Address | 10.90.0.2/32 |
| Public/Private Key | Clique no ícone de engrenagem para gerar automaticamente |
| Description | Instância WireGuard – Filial |
- Clique em Save e depois em Apply.
Etapa 3 – Configurar os Peers (Par da Conexão)
No Firewall da Matriz
Acesse VPN → WireGuard → Peers.
- Clique em + Add.
- Configure conforme a tabela:
| Campo | Valor |
|---|---|
| Name | Tunel-Filial |
| Public Key | Cole a chave pública da instância Tunel-Matriz (Filial) |
| Allowed IPs | 10.90.0.2/32, 192.168.2.0/24 |
| Endpoint Address | (deixe em branco) |
| Endpoint Port | (deixe em branco) |
| Keepalive Interval | 10 |
| Instance | Tunel-Filial |
- Clique em Save e depois em Apply.
No Firewall da Filial
Acesse VPN → WireGuard → Peers.
- Clique em + Add.
-
Configure conforme abaixo:
Campo Valor Name Tunel-Matriz Public Key Cole a chave pública da instância Tunel-Filial (Matriz) Allowed IPs 10.90.0.0/30,192.168.1.0/24Endpoint Address 200.0.0.1(IP público da Matriz) ou nome DDNSEndpoint Port 51820Keepalive Interval 10 Instance Tunel-Matriz -
Clique em Save e depois em Apply.
Keepalive Interval
O Keepalive Interval (ex.: 10 segundos) evita que o túnel caia silenciosamente, especialmente quando há NAT entre as pontas.
Etapa 4 – Configurar as Regras de Firewall
Regras na WAN (Matriz)
Acesse Firewall → Rules → WAN.
| Protocolo | Porta | Destino | Descrição |
|---|---|---|---|
| UDP | 51820 | This Firewall | Libera VPN WireGuard |
Clique em Save e Apply Changes.
Regras na Interface WireGuard
O OPNsense cria automaticamente o grupo de interfaces "WireGuard (Group)", representando todas as instâncias ativas. As regras configuradas aqui controlam o tráfego dentro do túnel, sendo necessário sua criação tanto na matriz quando na filial.
Acesse Firewall → Rules → WireGuard (Group).
| Campo | Valor |
|---|---|
| Action | Pass |
| Protocol | Any |
| Source | Any (ou a rede remota, ex.: 192.168.2.0/24) |
| Destination | Any (ou rede local, ex.: 192.168.1.0/24) |
| Description | Libera tráfego VPN WireGuard |
Clique em Save e Apply Changes.
Warning
As regras do WireGuard devem ser criadas na interface do túnel (WireGuard Group), e não na aba IPsec ou WAN, salvo para a porta de entrada (51820/UDP).
Etapa 5 – Verificar o Status do Túnel
Acesse VPN → WireGuard → Status.
- O túnel será considerado ativo quando a coluna Status exibir a marca verde.
- Caso apareça vermelha, revise as configurações de chaves públicas, portas e Allowed IPs.
Diagnóstico rápido
Você pode verificar a última atividade de handshake e volume de dados transmitidos diretamente nesta tela.
Isso é útil para confirmar que o tráfego está fluindo pelo túnel.
Etapa 6 – Validar a Comunicação
Para confirmar que o túnel está funcional:
-
A partir de um computador da Filial, execute:
ping 192.168.1.1
-
A partir de um computador da Matriz, execute:
ping 192.168.2.1
Se ambos responderem, a VPN WireGuard site-to-site está ativa e funcional.
Túnel estabelecido com sucesso
Ao obter respostas de ambos os lados, o ambiente está interligado com segurança e desempenho superior, pronto para operações corporativas contínuas.
Observações Importantes
- O WireGuard não utiliza Fases 1 e 2, o que simplifica o processo em comparação ao IPsec.
- Apenas uma das pontas precisa ter IP público fixo; a outra pode estar atrás de NAT ou usar DDNS.
- O campo
Allowed IPsdefine quais sub-redes serão roteadas pelo túnel — inclua tanto o IP remoto quanto a LAN correspondente. - A porta padrão é
51820/UDP, mas pode ser alterada, lembrando de ajustar as regras de firewall. - Em caso de lentidão, verifique MTU e MSS Clamping, pois alguns provedores bloqueiam pacotes grandes.
Boas Práticas
- Gere chaves criptográficas diretamente no OPNsense e armazene-as com segurança.
- Restrinja as regras de firewall do grupo WireGuard apenas às redes realmente necessárias.
- Utilize Keepalive para manter estabilidade, especialmente sob NAT.
- Habilite logs nas regras de firewall para facilitar o troubleshooting.
- Sempre teste o tráfego em ambos os sentidos (Matriz ↔ Filial).
- Em ambientes críticos, combine o WireGuard com roteamento dinâmico (BGP) ou múltiplos túneis para redundância e failover.
Caso de Uso Prático
Cenário:
Uma empresa com matriz em São Paulo e filial em Curitiba precisava substituir um túnel IPsec instável e complexo.
Ambas as unidades usavam OPNsense, mas apenas a matriz possuía IP público fixo.
Solução:
Foi implementada uma VPN WireGuard site-to-site, com a matriz atuando como servidor e a filial conectando-se via DDNS.
O tráfego entre as redes foi criptografado com Curve25519, mantendo baixo uso de CPU e latência mínima.
Resultados:
- Comunicação estável e criptografada entre as unidades.
- Redução de 20% no uso de CPU comparado ao IPsec.
- Configuração mais simples e fácil de manter.
Conclusão
O WireGuard representa uma nova geração de VPNs — simples, segura e de alto desempenho.
Ao configurar um túnel site-to-site no OPNsense, você obtém conectividade confiável entre filiais, com baixo overhead e fácil manutenção.
No próximo capítulo, exploraremos o uso de VPNs para acesso remoto de colaboradores, parceiros e terceiros. Será feito de forma segura através da internet, sem comprometer a segurança da sua rede interna.