A VPN de acesso remoto é uma necessidade consolidada em PME — teletrabalho, técnicos a aceder a sistemas internos a partir do cliente, gestores que precisam de aceder ao ERP fora do escritório. A questão já não é “precisamos de VPN?” mas “qual o tipo certo para o nosso contexto?”

Este artigo compara as principais soluções de VPN de acesso remoto disponíveis para PME — SSL VPN (FortiClient, OpenVPN), IPSec (IKEv2), e WireGuard — com critérios práticos de escolha, configuração e diagnóstico.

1. Comparar tecnologias VPN — SSL, IPSec e WireGuard

Tecnologia Protocolo / Porta Facilidade setup Performance Ideal para
SSL VPN (FortiClient / OpenVPN) TLS sobre TCP 443 ou UDP 1194 Alta Média PME com FortiGate; utilizadores não técnicos; atravessa proxies e hotéis
IPSec IKEv2 UDP 500 + 4500 Média Alta Always On VPN Windows; iOS/macOS nativos; alta performance
WireGuard UDP (porta configurável, ex: 51820) Alta Muito Alta Técnicos de IT; acesso a servidores; alternativa simples e moderna
PPTP / L2TP (legado) TCP 1723 / UDP 1701 Obsoleto Baixa + inseguro Não usar — vulnerabilidades conhecidas; substituir por IKEv2 ou WireGuard

2. Split Tunneling vs Full Tunnel — qual escolher

Split Tunneling Full Tunnel
Como funciona Apenas o tráfego para redes internas passa pela VPN; Internet sai directamente pelo ISP local Todo o tráfego passa pela VPN — Internet incluída
Performance Melhor — não sobrecarrega a ligação VPN Menor — todo o tráfego passa pela firewall da empresa
Segurança Menor — Internet do utilizador não é inspeccionada pela empresa Maior — todo o tráfego passa pelos filtros da empresa (IPS, web filter)
Recomendação PME Split tunnel para a maioria das PME — rotas específicas para redes internas (192.168.x.x, 10.x.x.x) via VPN; resto vai directamente Full tunnel para entidades com requisitos de compliance (NIS2 rigorosa, financeiras) que precisam de monitorizar todo o tráfego dos utilizadores remotos

3. SSL VPN com FortiGate — configuração completa

A SSL VPN do FortiGate é a opção mais comum em PME com FortiGate — os utilizadores instalam o FortiClient (gratuito para uso básico) e ligam-se com as credenciais do Active Directory.

# Configurar SSL VPN Settings
config vpn ssl settings
    set status enable
    set servercert "Fortinet_Factory"  # Usar certificado real em produção
    set tunnel-ip-pools "SSLVPN_TUNNEL_ADDR1"
    set dns-server1 10.10.10.1       # IP do DC/DNS interno
    set port 443
end

# Criar pool de IPs para clientes VPN
config firewall address
    edit "SSLVPN_TUNNEL_ADDR1"
        set type iprange
        set start-ip 10.10.200.10
        set end-ip 10.10.200.50
    next
end

# Integrar autenticação com Active Directory (LDAP)
config user ldap
    edit "AD-EMPRESA"
        set server "10.10.10.10"       # IP do Domain Controller
        set cnid "sAMAccountName"
        set dn "DC=empresa,DC=local"
        set type regular
        set username "CN=svc-fortigate,OU=ServiceAccounts,DC=empresa,DC=local"
        set password ENC_PASSWORD
    next
end

5. WireGuard — VPN moderna para técnicos e PME

O WireGuard é uma VPN moderna com código extremamente simples (~4000 linhas vs ~400 000 no OpenVPN), performance superior e configuração baseada em par de chaves criptográficas. Ideal para técnicos de IT que precisam de acesso remoto simples, ou PME que querem uma VPN sem dependência de hardware específico.

# Instalar WireGuard no servidor Linux (Ubuntu 22.04+)
apt install wireguard -y

# Gerar par de chaves do servidor
wg genkey | tee /etc/wireguard/server_private.key | wg pubkey > /etc/wireguard/server_public.key

# Configuração do servidor (/etc/wireguard/wg0.conf)
[Interface]
PrivateKey = <chave-privada-do-servidor>
Address = 10.100.0.1/24          # IP do servidor na rede VPN
ListenPort = 51820
PostUp = iptables -A FORWARD -i wg0 -j ACCEPT; iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE
PostDown = iptables -D FORWARD -i wg0 -j ACCEPT; iptables -t nat -D POSTROUTING -o eth0 -j MASQUERADE

[Peer]                            # Um bloco por cliente
PublicKey = <chave-publica-do-cliente>
AllowedIPs = 10.100.0.2/32       # IP atribuído a este cliente

# Activar e iniciar WireGuard
systemctl enable wg-quick@wg0
systemctl start wg-quick@wg0
wg show                           # Ver estado e peers ligados

# Configuração do cliente Windows/Linux/macOS
[Interface]
PrivateKey = <chave-privada-do-cliente>
Address = 10.100.0.2/32

[Peer]
PublicKey = <chave-publica-do-servidor>
Endpoint = vpn.empresa.pt:51820
AllowedIPs = 10.10.0.0/16        # Split tunnel — apenas redes internas pela VPN
PersistentKeepalive = 25

6. Autenticação e MFA em VPN

A VPN sem MFA é um risco sério — uma credencial comprometida dá acesso directo à rede interna. O MFA deve ser obrigatório em qualquer solução VPN de acesso remoto.

Solução VPN Opção de MFA Como configurar
FortiGate SSL VPN FortiToken, RADIUS com MFA, TOTP (Google Authenticator) VPN → SSL-VPN Settings → Authentication/Portal Mapping → adicionar MFA
Always On VPN (Windows) Certificado de dispositivo + MFA Entra ID (condicional) Integrar com NPS (Network Policy Server) e Azure MFA via extensão NPS
WireGuard Autenticação por chave criptográfica (inerente) — não tem MFA tradicional A chave privada do cliente é equivalente ao MFA — proteger com passphrase. Considerar gateway WireGuard com autenticação web (ex: Netbird, Tailscale)

7. Diagnóstico de problemas VPN

Problema Causa Diagnóstico
VPN conecta mas não acede a recursos internos Split tunnel mal configurado; DNS não aponta para DC interno; política de firewall em falta Verificar rotas com route print. Confirmar DNS recebido com ipconfig /all
VPN cai frequentemente Timeout de sessão; DPD (Dead Peer Detection) agressivo; instabilidade de rede Aumentar idle-timeout. Activar PersistentKeepalive (WireGuard) ou DPD com intervalo maior
Credenciais correctas mas autenticação falha LDAP/AD não acessível; conta bloqueada; grupo não atribuído ao portal VPN FortiGate: diagnose test authserver ldap AD-EMPRESA joao password
VPN bloqueada em redes de hotel ou hotspot Firewall do hotel bloqueia UDP 500/4500 (IPSec) ou portas não padrão SSL VPN em TCP 443 atravessa quase todas as redes. Configurar WireGuard em porta 443 UDP como alternativa