Configurar o ApexGuard no Firmware AsusWRT-Merlin
1. Pré-requisitos
- Router Asus com firmware AsusWRT-Merlin (ex.: versão 384.19 ou superior).
- Acesso SSH/linha de comandos ativado no seu router.
- Na interface web do Merlin:
- Vá a Administration → System.
- Ative o SSH e defina as credenciais.
- Na interface web do Merlin:
- Credenciais IKEv2 do ApexGuard (servidor, chave pré-partilhada, credenciais de acesso ou certificados).
- Entware instalado no seu router (para instalar o strongSwan).
Se ainda não instalou o Entware, consulte a wiki do Entware para AsusWRT-Merlin para instruções.
2. Instale o strongSwan via Entware
Ligue-se por SSH ao router num terminal (PuTTY, Terminal, etc.):
ssh admin@192.168.1.1
- Substitua
admine192.168.1.1pelo seu utilizador/IP, se forem diferentes.
Atualize pacotes do Entware:
opkg update
Instale o strongSwan:
opkg install strongswan
- Instala os binários principais strongSwan IKEv2/IPsec.
(Opcional) Instale plugins adicionais se exigidos pelo ApexGuard (ex.: strongswan-mod-eap-mschapv2, strongswan-mod-eap-tls, ou outros):
opkg install strongswan-mod-eap-mschapv2
opkg install strongswan-mod-eap-identity
...
3. Reúna os Seus Dados IKEv2 do ApexGuard
- Inicie sessão na conta ApexGuard.
- Navegue até Definições Avançadas → Configurar o ApexGuard manualmente → Credenciais de Serviço/IPsec.
- Anote:
- Endereço do servidor:
ikev2.apexguard.comou IP. - Chave pré-partilhada (PSK) se usar IKEv2 baseado em PSK.
- Utilizador/Palavra-passe (se baseado em EAP).
- Certificados (se aplicável).
- Endereço do servidor:
Para este exemplo, vamos assumir:
- Servidor:
ikev2.apexguard.com - PSK:
YOUR_PSK_HERE - Utilizador local (se usar EAP):
YOUR_USER_HERE - Mostraremos um exemplo básico com PSK.
4. Crie/Modifique a Configuração do strongSwan
A configuração principal do strongSwan está em /opt/etc/strongswan.conf e /opt/etc/ipsec.conf (e por vezes /opt/etc/ipsec.secrets). Segue um exemplo mínimo para um cenário “road warrior” baseado em PSK. Ajuste às propostas de fase 1/fase 2 recomendadas pelo ApexGuard.
4.1 strongswan.conf
Crie ou edite o ficheiro /opt/etc/strongswan.conf:
# /opt/etc/strongswan.conf
charon {
# Plugins you need, e.g. for kernel-netlink, stroke
load_modular = yes
install_routes = no
# Logging, optional
filelog {
/opt/var/log/strongswan.log {
time_format = %b %e %T
append = no
default = 1
flush_line = yes
}
}
}
Configuração básica que diz ao charon (daemon IKE) para carregar módulos e define um ficheiro de registo.
4.2 ipsec.conf
Crie ou edite o ficheiro /opt/etc/ipsec.conf:
# /opt/etc/ipsec.conf
config setup
uniqueids = never
conn apexguard-ikev2
# IKE settings
keyexchange = ikev2
ike = aes256-sha512-modp2048!
esp = aes256-sha512!
# Adjust proposals as needed
# Remote server
left=%defaultroute
leftid=%any
leftauth=psk
leftsourceip=%config # Request an internal IP if supported
# Right side: ApexGuard server
right=ikev2.apexguard.com
rightauth=psk
rightsubnet=0.0.0.0/0 # If you want to route all traffic
auto=add
Nota:
ike = aes256-sha512-modp2048!eesp = aes256-sha512!são exemplos. Use as cifras que o ApexGuard recomenda.auto=addsó adiciona a ligação, que pode ativar manualmente ou comipsec up apexguard-ikev2. Em alternativa, useauto=startpara iniciar o túnel automaticamente no arranque.
4.3 ipsec.secrets
Crie/edite /opt/etc/ipsec.secrets para guardar a chave pré-partilhada:
# /opt/etc/ipsec.secrets
: PSK "YOUR_PSK_HERE"
Se precisar de outra identidade ou de credenciais de utilizador EAP, a sintaxe muda. Por exemplo:
YOUR_USER_HERE : EAP "YOUR_PASSWORD_HERE"
: PSK "YOUR_PSK_HERE"
5. Iniciar/Ativar strongSwan no Arranque
Iniciar strongSwan agora:
ipsec start
Testar a config.:
ipsec up apexguard-ikev2
- Se estiver tudo correto, deverá ver mensagens de negociação a terminar com algo como
connection 'apexguard-ikev2' established successfully. - Se não, veja
/opt/var/log/strongswan.logpara erros.
Crie ou edite /jffs/scripts/post-mount (se não existir, crie-o com chmod +x /jffs/scripts/post-mount):
#!/bin/sh
if [ -x /opt/sbin/ipsec ]; then
ipsec start
fi
- Em alternativa, adicione comandos a
/jffs/scripts/services-startou a script semelhante. Garanta que o Entware está montado antes de iniciar o strongSwan.
6. Encaminhamento por Política ou NAT (Opcional)
6.1 Policy Routing
Se quiser que todos os dispositivos LAN usem o túnel IKEv2, configure encaminhamento baseado em política ou adicione rotas manualmente. Exemplo na interface Merlin:
- Aceda a LAN → Route (ou Firewall → Routing rules para política).
- Adicione rotas estáticas ou regras para a sub-rede LAN passar pela interface do túnel IPsec.
Por predefinição, o strongSwan “instala rotas” se leftsourceip=%config e install_routes=yes forem usados (em strongswan.conf). Também pode ser necessária uma regra NAT se o servidor ApexGuard esperar tráfego com NAT.
6.2 NAT no Router Asus
Crie ou edite /jffs/scripts/firewall-start:
#!/bin/sh
iptables -t nat -A POSTROUTING -o ipsec0 -j MASQUERADE
- Substitua
ipsec0pelo nome real da interface usada pelo strongSwan (por vezesip_vti0,vti1, etc., dependendo da configuração).
Torne-o executável:
chmod +x /jffs/scripts/firewall-start
Consulte ipsec statusall ou ip a para confirmar o nome da interface IPsec.
7. (Opcional) Certificados/EAP na Autenticação IKEv2
- Carregue CA, certificado de cliente e chave em
/opt/etc/ipsec.d/(ex.:cacerts/,certs/,private/).
Modifique /opt/etc/ipsec.conf:
ini
leftauth=pubkey
leftcert=clientCert.pem
leftfirewall=yes
rightauth=pubkey
...
- Modifique
/opt/etc/ipsec.secretspara a chave privada se tiver frase-passe.
Instale módulos EAP:
opkg install strongswan-mod-eap-mschapv2
opkg install strongswan-mod-eap-identity
Em ipsec.conf:
ini
leftauth=eap-mschapv2
leftid=YOUR_USER_HERE
rightauth=psk # or rightauth=eap, depending on apexguard requirements
Em ipsec.secrets:
ini
YOUR_USER_HERE : EAP "YOUR_PASSWORD_HERE"
: PSK "YOUR_PSK_HERE"
8. Verificar o Túnel
Consulte o estado:
ipsec status
ipsec statusall
- Deverá ver a ligação
apexguard-ikev2com o estado “ESTABLISHED” ou “INSTALLED.” - Testar tráfego:
- Num dispositivo LAN, abra um site “qual é o meu IP” ou o painel do ApexGuard e confirme que o IP público é da VPN.
- Se vir apenas o IP do ISP, pode precisar de encaminhamento por política, NAT ou confirmar que o túnel está ativo.
9. Opcional: Kill Switch e Fail-Safe
Ao contrário do kill switch do Merlin para OpenVPN, no IPsec tem de o configurar manualmente:
- Use regras iptables em
firewall-startpara bloquear tráfego de saída se a interfaceipsec0ficar inativa.
Por exemplo:
#!/bin/sh
# Block all traffic if ipsec0 is NOT available
iptables -I FORWARD -s 192.168.1.0/24 -o $(nvram get wan0_ifname) -j DROP
# Then allow traffic if ipsec0 is up
iptables -I FORWARD -s 192.168.1.0/24 -o ipsec0 -j ACCEPT
- Ajuste interfaces, sub-redes e ordem de cadeias se necessário.
Este artigo foi útil?
Obrigado, está a ajudar-nos a melhorar!