Conexão VPN Site-to-Site entre OPNsense e pfSense
Introdução
O processo de estabelecer uma VPN Site-to-Site entre um OPNsense e um pfSense é relativamente simples e estável, desde que alguns cuidados sejam tomados previamente.
Antes de iniciar, certifique-se de que ambos os firewalls estão executando versões recentes e estáveis, pois incompatibilidades entre versões antigas podem causar falhas na negociação do túnel.
Essa integração é bastante comum em cenários onde o OPNsense está na matriz e o pfSense na filial, permitindo comunicação segura entre redes distintas via IPsec.
Ambiente
Antes de iniciar o procedimento, é importante alinhar as condições do ambiente para garantir coerência nas configurações.
| Descrição | OPNsense (Matriz) | pfSense (Filial) |
|---|---|---|
| WAN | 180.0.0.1 | 200.0.0.1 |
| LAN | 192.168.1.0/24 | 192.168.179.0/24 |
| Versão | 25.7 | 2.7.2 |
Premissas:
- Ambos os firewalls possuem IPs públicos válidos.
- Provedores de internet não bloqueiam portas IPsec (UDP 500, UDP 4500 e protocolo ESP).
Configuração no OPNsense (Matriz)
1. Criar a Chave Pré-Compartilhada (PSK)
- Acesse o menu VPN → IPsec → Pre-Shared Keys.
-
Clique em + Add e preencha conforme o exemplo abaixo:
- Local Identifier:
180.0.0.1 - Remote Identifier:
200.0.0.1 - Pre-Shared Key:
password - Type:
PSK
- Local Identifier:
-
Clique em Save.
Essa chave será usada por ambas as pontas para autenticação do túnel IPsec.
2. Criar a Conexão IPsec (Phase 1)
- Acesse VPN → IPsec → Connections.
-
Clique em + Add e configure os campos:
- Local Address:
180.0.0.1 - Remote Address:
200.0.0.1 - Description:
VPN-COM-FILIAL-PFSENSE
- Local Address:
-
Clique em Save.
Após salvar, novas opções relacionadas à autenticação e redes (Child SAs) estarão disponíveis.
3. Configurar Autenticações Locais e Remotas
- Clique em Add Local Authentication e defina:
- ID:
180.0.0.1
- ID:
- Clique em Save.
- Clique em Add Remote Authentication e defina:
- ID:
200.0.0.1
- ID:
- Clique em Save novamente.
Esses identificadores garantem que o túnel reconheça corretamente a origem e o destino durante a negociação IKE.
4. Configurar a Fase 2 (Child SA)
- Ainda na mesma conexão, localize a seção Children.
- Clique em + Add para adicionar um novo Child SA.
-
Preencha com as redes locais e remotas conforme o cenário:
- Local Network:
192.168.1.0/24 - Remote Network:
192.168.179.0/24
- Local Network:
-
Clique em Save.
- Marque a opção Enable IPsec próxima ao botão Apply, e depois em Apply Changes.
5. Criar Regras de Firewall
Para permitir o tráfego IPsec, é necessário liberar os protocolos e portas adequadas.
a) Regras para entrada da conexão IPsec
- Acesse Firewall → Rules → WAN.
- Crie uma nova regra com as seguintes configurações:
- Action: Pass
- Protocol:
UDP - Destination Port:
500 - Description:
Permite conexões IPsec (IKE)
- Crie uma outra regra com as seguintes configurações:
- Action: Pass
- Protocol:
UDP - Destination Port:
4500 - Description:
Permite conexões IPsec (NAT-T)
- Adicione também uma regra para o protocolo ESP.
- Action: Pass
- Protocol:
ESP - Description:
Permite conexões IPsec (ESP)
b) Regras para tráfego dentro do túnel
- Acesse Firewall → Rules → IPsec.
-
Crie uma regra permitindo o tráfego entre as redes conectadas:
- Source:
192.168.179.0/24 - Destination:
192.168.1.0/24 - Action: Pass
- Description:
Permite tráfego da Filial para Matriz
- Source:
-
Clique em Apply Changes.
Configuração no pfSense (Filial)
1. Criar a Conexão IPsec (Phase 1)
- Vá em VPN → IPsec.
-
Clique em + Add P1 e preencha:
- Description:
VPN-COM-MATRIZ-OPNSENSE - Key Exchange Version:
IKEv2 - Interface:
WAN - Remote Gateway:
180.0.0.1 - Pre-Shared Key:
password - Child SA Start Action:
Initiate at start - Child SA Close Action:
Restart/Reconnect - Dead Peer Detection (DPD): desmarque
- Description:
-
Clique em Save e depois em Apply Changes.
2. Configurar a Fase 2 (Child SA)
- Clique em Show Phase 2 Entries → Add P2.
-
Preencha:
- Remote Network:
192.168.1.0/24 - Local Network:
192.168.179.0/24 - Hash Algorithms:
SHA256, SHA384, SHA512
- Remote Network:
-
Clique em Save e depois em Apply Changes.
3. Criar Regras de Firewall
a) Regras de entrada (WAN)
- Vá até Firewall → Rules → WAN.
-
Adicione as regras abaixo:
Action Source Destination Protocol Port/Type Description Allow any This Firewall ESP – Permite conexões IPsec (ESP) Allow any This Firewall UDP 500 (ISAKMP) Permite conexões IPsec (IKE) Allow any This Firewall UDP 4500 (NAT-T) Permite conexões IPsec (NAT-T) -
Clique em Apply Changes.
b) Regras na Interface IPsec
- Acesse Firewall → Rules → IPsec.
-
Crie uma regra para liberar o tráfego entre as redes:
Action Source Destination Protocol Description Allow 192.168.1.0/24 192.168.179.0/24 any Permite tráfego da Matriz para Filial -
Clique em Save e Apply Changes.
Validação e Testes
- No pfSense, acesse Status → IPsec.
- Verifique se o túnel aparece como Established (ativo).
- Repita a verificação no OPNsense, em VPN → IPsec → Status Overview.
- Faça um teste de conectividade, podendo ser através do Ping (não se esqueça que para IPsec é necessário especificar o Source como IP da lan do próprio firewall na tela do Ping):
Se as respostas forem bem-sucedidas, o túnel está funcional e trafegando corretamente.
Próximos Passos
- Ajuste as regras de firewall do túnel para permitir apenas o tráfego estritamente necessário entre as redes.
- Configure um serviço de monitoramento automático (Monit) para reiniciar o túnel em caso de falha.
- Considere implementar roteamento dinâmico (BGP ou OSPF) sobre o IPsec em ambientes com múltiplos túneis.