Guia Completo para VPN Entre Escritórios com pfSense
25 de março de 2025
Como Configurar uma VPN Site-to-Site com pfSense

Se você precisa
interligar uma matriz e uma filial, permitindo que ambas compartilhem dados de forma segura, uma
VPN site-to-site com pfSense é uma das melhores soluções.
Neste guia, vamos configurar
duas formas de VPN:
- IPSec (método recomendado, mais seguro e padrão corporativo)
- OpenVPN (alternativa mais simples e flexível)
Também veremos
erros comuns, como corrigi-los e
boas práticas para ambientes corporativos.
Cenário
- Matriz/SP: LAN
192.168.1.0/24
, WAN IP fixo (ex.:200.100.50.1
). - Filial/RJ: LAN
192.168.2.0/24
, WAN IP dinâmico (vai usar DDNS). - VPN recomendada: IPSec IKEv2 (OpenVPN fica como alternativa no fim).
'
Preparação (antes de ligar qualquer coisa)
Hardware e cabos
- pfSense precisa de 2 NICs (WAN e LAN). Placas Intel costumam ser mais estáveis.
- Conecte WAN ao modem/roteador do provedor. Conecte LAN a um switch ou direto no notebook para a instalação.
Mídia de instalação
- Baixe a ISO do pfSense CE/Plus compatível com seu hardware.
- Grave em um pendrive (Rufus/Etcher) e boote pelo USB.
Planejamento de redes (não pule!)
- SP:
LAN 192.168.1.0/24
, gateway LAN192.168.1.1
. - RJ:
LAN 192.168.2.0/24
, gateway LAN192.168.2.1
.
Nunca tenha faixas iguais ou sobrepostas entre sites.
Verificações no provedor
- SP (IP fixo): confirme máscara e gateway públicos.
- RJ (dinâmico): cheque se NÃO está em CGNAT. Se estiver, peça IP público ou modo bridge; IPSec costuma falhar atrás de CGNAT.
- Garanta portas liberadas: UDP 500/4500 (IPSec) e, se for usar OpenVPN, UDP 1194.
Erro comum: “IPSec não sobe de jeito nenhum.”
Causa provável: CGNAT ou modem roteando em cascata.
Correção: Coloque o modem em bridge ou faça port forward 500/4500 UDP direto para a WAN do pfSense. Ideal é bridge.
1. Instalação do pfSense (igual para SP e RJ)
Instalar
- No boot do USB, escolha Install.
- Layout de teclado, disco (aceite ZFS ou UFS padrão) e confirme instalação.
- Remova o USB e reinicie.
Assign das interfaces (console)
- O pfSense pergunta quais interfaces são
WAN e
LAN.
Exemplo comum:igb0 = WAN
,igb1 = LAN
. - Deixe DHCP habilitado na LAN (padrão) — ele dará IP
192.168.1.1/24
temporário.
Acesso web inicial
- Conecte notebook na
LAN e acesse
https://192.168.1.1
(ou192.168.2.1
se você já alterar no assistente). - Usuário
admin
, senhapfsense
(trocaremos já já).
Assistente (Setup Wizard)
- Timezone:
America/Sao_Paulo
. - Senha do admin: defina forte.
- DNS: opcional (pode usar 1.1.1.1 / 8.8.8.8).
- WAN SP: selecione Static IPv4, preencha IP/máscara/gateway do provedor.
- WAN RJ: selecione DHCP (ou PPPoE se for seu caso).
- LAN SP: mude para
192.168.1.1/24
. - LAN RJ: mude para
192.168.2.1/24
.
Erro comum: “perdi acesso à gui depois de mudar a lan.”
Correção: renove o dhcp do seu notebook (novo gateway) ou defina ip estático na mesma rede e acesse o novo endereço.
Ajustes de rede do sistema
- System > Advanced > Networking: marque
Disable hardware checksum offloading, TSO e LRO (evita bugs de NIC). - Services > NTP e
System > General Setup: confira
hora e timezone corretos.
IPSec e certificados quebram com hora errada.
Erro comum: “OpenVPN dá TLS failed.”
Correção: acerte data/hora e, se preciso, regenere certificados.
2. Configuração específica de cada ponta
2.1 Matriz/SP (WAN fixa)
WAN estática
- Interfaces > WAN: confirme IP público, máscara e gateway informados pela operadora.
- Block private networks pode ficar ativo (padrão).
Desative apenas se você tem certeza que precisa (raríssimo).
LAN
- Interfaces > LAN: confirme
192.168.1.1/24
. - Services > DHCP Server (LAN): ativo por padrão. Ajuste range se quiser.
DNS Resolver
- Services > DNS Resolver ativo (padrão).
- Se você tiver um domínio interno em RJ, poderá usar Domain Overrides depois.
2.2 Filial/RJ (WAN dinâmica + DDNS)
WAN dinâmica
- Interfaces > WAN: em IPv4 Configuration Type, deixe DHCP (ou PPPoE com usuário/senha).
- Se o modem está roteando, tente bridge. Se não der, faça port forward UDP 500/4500 para a WAN do pfSense.
DDNS
- Services > Dynamic DNS > Add: escolha seu provedor (No-IP, DuckDNS etc.).
- Hostname: por ex.
rj-empresa.ddns.net
. - Interface: WAN.
- Salve e veja o Status: precisa ficar “good”/“updated”.
Erro comum: “IPSec cai toda hora na mudança de IP do RJ.”
Correção: DDNS deve atualizar rápido; habilite “Check IP” frequente e confirme no log que o hostname aponta para o IP novo.
- LAN
- Interfaces > LAN: confirme
192.168.2.1/24
. - DHCP Server ativo para a rede 192.168.2.0/24.
3. IPSec IKEv2 site-to-site (recomendado)
Vamos criar primeiro no SP, depois espelhar no RJ. Use IKEv2 (mais moderno e estável).
3.1 SP: criar túnel
- VPN > IPsec > Tunnels > Add P1
- Key Exchange version: IKEv2
- Remote Gateway:
rj-empresa.ddns.net
(o hostname DDNS) - Authentication Method: Pre-Shared Key
- Pre-Shared Key: gere algo forte (ex.: use 32+ caracteres; não reutilize do exemplo)
- My identifier: My IP address
- Peer identifier:
FQDN e coloque
rj-empresa.ddns.net
- Encryption: AES-256-GCM
- DH Group: 14 (ou 19 se quiser ECC)
- Lifetime: 28800 (8h)
- DPD: habilite (ex.: delay 10s, max 5)
- Save e Add P2 (na mesma tela/entrada):
- Mode: Tunnel IPv4
- Local Network: LAN subnet (192.168.1.0/24)
- Remote Network:
Network
192.168.2.0/24
- Encryption: AES-256-GCM
- PFS: igual ao P1 (ex.: Group 14)
- Lifetime: 3600–14400 (ex.: 3600 para renovar chaves com frequência)
- Aplicar.
3.2 RJ: espelhar
- VPN > IPsec > Tunnels > Add P1
- Remote Gateway:
IP público da matriz (ex.:
200.100.50.1
) - Mesma PSK do SP
- My identifier:
FQDN
rj-empresa.ddns.net
- Peer identifier: My IP address (porque SP usa IP fixo)
- Mesmo conjunto de algoritmos, DH e lifetimes do SP
- Add P2
- Local Network: LAN subnet (192.168.2.0/24)
- Remote Network:
Network
192.168.1.0/24
- Demais parâmetros iguais aos do SP
- Aplicar.
3.3 Regras de firewall (obrigatórias)
- Firewall > Rules > IPsec (em ambos os lados):
- Adicione uma regra Pass IPv4 any → any (ou restrinja por sub-redes, portas e protocolos conforme a política da empresa).
- Em geral, a LAN já tem “allow any” por padrão; o tráfego entre sites precisa estar liberado na aba IPsec.
Erro comum: “Status mostra ESTABLISHED, mas nada passa.”
Correção: faltou regra na aba IPsec. Crie a regra e aplique. Se usa policy routing na LAN (gateway definido na regra), crie uma regra acima para o destino remoto sem gateway.
3.4 NAT
- Firewall > NAT > Outbound:
- Deixe Automatic ou Hybrid.
- Não NATe tráfego destinado à rede remota do IPsec. Em Manual, garanta exceção para as sub-redes do túnel.
4. Testes e validação
Status do túnel
- Status > IPsec: o P1 e o P2 devem ficar ESTABLISHED/INSTALLED.
- Clique em
“Show child SA” e verifique se os seletores mostram
192.168.1.0/24 <-> 192.168.2.0/24
.
Ping a partir do firewall
- Diagnostics > Ping (faça do SP para RJ):
- Source:
LAN; Host:
192.168.2.1
. - Repita no
RJ para
192.168.1.1
.
Teste de hosts
- De uma máquina na
RJ, pingue
192.168.1.100
(um servidor em SP). - Teste aplicações (RDP/SMB/HTTP).
Desempenho
- Se notar lentidão/timeout em RDP/SMB:
- System > Advanced > Networking: deixe offloading desabilitado.
- Ajuste MTU/MSS: em Interfaces > WAN, teste MTU 1472/1460/1400.
- Em VPN > IPsec > Advanced Settings, habilite NAT-T (Auto) e MOBIKE em IKEv2.
Erro comum: “ICMP funciona, SMB/RDP não.”
Correção: quase sempre MTU/MSS. Ache o menor valor estável (testes comping -f -l
no Windows) e aplique.
5. Diagnóstico de problemas (checklist rápido)
- “no proposal chosen”
Parametrização diferente entre SP e RJ.
→ Garanta que P1/P2 tenham mesmos algoritmos, DH e PFS. Lifetimes idênticos ajudam muito. - “AUTHENTICATION_FAILED”
PSK errada ou identifiers trocados.
→ Revise a PSK e My/Peer Identifier (IP vs FQDN conforme cada ponta). - Sem tráfego, túnel up
→ Falta regra na aba IPsec, sub-rede sobreposta, P2 com rede errada ou NAT indevido. - Cai após algumas horas
→ Lifetime e DPD desiguais; “Disable Rekey” marcado em só um lado. Padronize. - Nada conecta do RJ
→ DDNS desatualizado, CGNAT, modem sem port forward (se não for bridge), hora errada, ou IPS bloqueando UDP 500/4500. - DNS interna não resolve do outro lado
→ Use Services > DNS Resolver > Domain Overrides para encaminhar o domínio interno da outra ponta para o DNS dela. - Roteamento assimétrico
→ Regras com gateway forçado na LAN. Crie regra específica para a rede remota sem gateway e coloque acima das de política de saída. - Depois de grandes mudanças
→ Diagnostics > States > Reset States (limpa estados que “viciam” rotas antigas). - Logs úteis
- Status > System Logs > IPsec (erros de negociação).
- Diagnostics > Packet Capture na IPsec para ver se pacotes chegam/saem.
- Console/SSH:
ipsec statusall
,clog /var/log/ipsec.log
.
6. OpenVPN site-to-site (alternativa)
Use se o ambiente bloquear IPSec, ou se você preferir a flexibilidade do OpenVPN.
Atenção: não habilite compressão (LZO) — é obsoleta e tem implicações de segurança.
6.1 SP (servidor)
- System > Cert. Manager: crie CA e cert do servidor.
- VPN > OpenVPN > Servers > Add:
- Server mode: Peer to Peer (SSL/TLS)
- Protocol/Port: UDP/1194
- Tunnel Network:
10.10.10.0/24
- Local Network:
192.168.1.0/24
- TLS Authentication/TLS Crypt: habilite
- Cipher: AES-128-GCM (mais leve e seguro o suficiente)
- Topology: Subnet
- Keepalive: ex.
10 60
- Compression: Disabled
6.2 RJ (cliente)
- Instale OpenVPN Client Export no SP e exporte o perfil do peer.
- VPN > OpenVPN > Clients > Import no RJ, carregue o arquivo.
- Confirme
Server host (ex.:
sp-empresa.ddns.net
ou IP fixo), porta 1194.
6.3 Regras/NAT
- Firewall > Rules > OpenVPN: regra Pass any (ou restrita).
- Firewall > NAT > Outbound: em Manual, crie exceção para NÃO NATear redes remotas via OpenVPN.
- Push Routes: no servidor, garanta que a rede remota seja anunciada, ou configure Remote Network no cliente.
6.4 Problemas comuns (OpenVPN)
- “TLS Handshake Failed” → hora errada, CA/cert inválidos ou
remote
incorreto. - Lento → nunca use compressão; ajuste MTU/MSS e mantenha UDP + AES-128-GCM; habilite fast-io nas client options; evite TCP-over-TCP.
7. Segurança, operação e backups
- Senhas/PSK fortes e armazenadas em cofre (Bitwarden, 1Password, etc.).
- Backups: Diagnostics > Backup & Restore → exporte config.xml e guarde offsite.
- Atualizações: pfSense e pacotes em dia.
- Monitoramento: Status > IPsec/OpenVPN e System Logs.
- Documentação: anote todas as mudanças (data, motivo, quem fez).
- Revisão semestral: valide certificados, lifetimes, regras e desempenho.
Resumo das correções mais frequentes (e como agir na hora)
- Não sobe: ver porta/CGNAT/DDNS/hora primeiro.
- Sobe mas não passa: regra na aba do túnel, P2 correto, NAT não interferindo.
- Cai: alinhe lifetime/DPD/rekey nos dois lados.
- Lento/quebra app: MTU/MSS, offloading desativado, UDP preferível, nada de compressão.
- DNS do outro lado:
Domain Overrides no DNS Resolver.