Se acompanha as novidades em infraestrutura de redes, sabe que o lançamento do RouterOS v7 da MikroTik trouxe uma das features mais aguardadas pela comunidade: o suporte nativo ao WireGuard.
Adeus às configurações infinitas do IPsec e ao peso do OpenVPN no processamento do roteador. O WireGuard atua diretamente no kernel, o que significa que até mesmo equipamentos de entrada (como uma hEX ou hAP ac2) conseguem fechar túneis VPN com velocidades assustadoras e baixíssima latência.
Neste tutorial, vamos configurar um servidor VPN WireGuard no MikroTik para acesso remoto de utilizadores (Client-to-Site), permitindo que os colaboradores acedam à rede interna da empresa com máxima performance.
Pré-requisitos
Um roteador MikroTik rodando o RouterOS v7 ou superior.
IP Público válido no MikroTik (para que os clientes o encontrem na internet).
Winbox ou acesso via Terminal.
Passo 1: Criar a Interface WireGuard
No WireGuard, tudo gira em torno de chaves públicas e privadas. Ao criar a interface no MikroTik, ele gera este par de chaves automaticamente.
Pelo terminal do MikroTik, execute:
/interface wireguard
add listen-port=13231 mtu=1420 name=wireguard1
listen-port=13231: É a porta UDP que o MikroTik vai escutar. Pode escolher outra, mas anote-a.Dica da Trincheira: Abra a interface gráfica (Winbox), vá a WireGuard, clique na interface criada e anote a Public Key. Precisará dela para configurar os clientes.
Passo 2: Atribuir um Endereço IP à Interface VPN
O WireGuard precisa da sua própria sub-rede. Não use a mesma faixa de IP da sua rede local (LAN). Vamos usar a rede 10.255.255.0/24. O MikroTik será o gateway dessa rede (10.255.255.1).
/ip address
add address=10.255.255.1/24 interface=wireguard1 network=10.255.255.0
Passo 3: Liberar a Porta no Firewall
De nada adianta o serviço estar a rodar se o firewall do RouterOS estiver a bloquear conexões externas. Precisamos de permitir o tráfego de entrada na porta UDP escolhida (13231).
/ip firewall filter
add action=accept chain=input dst-port=13231 protocol=udp place-before=1 comment="Permitir WireGuard"
(Certifique-se de que esta regra de accept fica acima da regra geral de drop na chain de input).
Passo 4: Criar o Peer (O Cliente)
Diferente do OpenVPN ou IPsec, no WireGuard não criamos "utilizadores e senhas", criamos Peers (pares). Para criar o Peer no MikroTik, precisa primeiro de instalar o cliente WireGuard no dispositivo remoto (Windows, Linux, iOS, Android) e gerar as chaves lá.
Supondo que o cliente remoto gerou uma Public Key, vamos adicioná-la ao MikroTik e atribuir-lhe o IP 10.255.255.2:
/interface wireguard peers
add allowed-address=10.255.255.2/32 interface=wireguard1 public-key="CHAVE_PUBLICA_DO_CLIENTE_AQUI=" comment="Notebook do Suporte"
allowed-address: É fundamental usar/32no MikroTik para especificar que apenas este cliente em particular usará este IP.
Passo 5: Permitir Roteamento e Acesso à Rede Local
Para que o cliente (agora conectado) consiga pingar e aceder aos servidores na LAN do MikroTik (ex: 192.168.88.0/24), pode ser necessário ajustar o firewall ou fazer um NAT. A forma mais simples (se não tiver rotas estáticas na sua rede apontando de volta para o IP da VPN) é fazer um Masquerade do tráfego da VPN para a LAN:
/ip firewall nat
add action=masquerade chain=srcnat src-address=10.255.255.0/24 out-interface-list=LAN comment="NAT WireGuard para LAN"
Passo 6: A Configuração no Lado do Cliente
No software cliente do WireGuard (no computador do utilizador), a configuração será algo como isto:
[Interface]
PrivateKey = (chave privada gerada no cliente)
Address = 10.255.255.2/24
DNS = 8.8.8.8, 1.1.1.1
[Peer]
PublicKey = (CHAVE_PUBLICA_DO_MIKROTIK)
Endpoint = IP_PUBLICO_DO_MIKROTIK:13231
AllowedIPs = 10.255.255.0/24, 192.168.88.0/24
PersistentKeepalive = 25
AllowedIPs: Define qual tráfego será enviado pelo túnel. No exemplo acima, apenas o tráfego para a própria VPN e para a rede local da empresa. Se quiser que toda a internet do cliente passe pela empresa, use0.0.0.0/0.
Resumo da Ópera: Com 5 linhas de comando no MikroTik, subimos uma VPN de nível Enterprise, sem as dores de cabeça do IPsec. O handshake do WireGuard é praticamente instantâneo e a conexão é extremamente estável.
Já atualizou os seus roteadores de borda para o RouterOS v7 apenas para usar o WireGuard ou ainda está preso no legado? Partilhe a sua experiência!
