Opsætning af ApexGuard på AsusWRT-Merlin-firmware
1. Forudsætninger
- Asus-router, der kører AsusWRT-Merlin-firmware (f.eks. version 384.19 eller nyere).
- SSH/kommandolinje-adgang aktiveret på routeren.
- I Merlin-grænsefladen:
- Gå til Administration → System.
- Aktivér SSH, og angiv adgangsdata.
- I Merlin-grænsefladen:
- ApexGuard IKEv2 loginoplysninger (serveradresse, foruddelt nøgle, brugeroplysninger eller certifikater).
- Entware installeret på din router (til installation af strongSwan).
Hvis du ikke allerede har installeret Entware, kan du se AsusWRT-Merlin Entware-wikien for vejledning.
2. Installer strongSwan via Entware
SSH ind på routeren via en terminalapp (PuTTY, Terminal osv.):
ssh admin@192.168.1.1
- Erstat
adminog192.168.1.1med dit eget brugernavn/IP, hvis det er ændret.
Opdater Entwares pakkeliste:
opkg update
Installer strongSwan:
opkg install strongswan
- Installerer strongSwan-kernen med IKEv2/IPsec-binære filer.
(Valgfrit) Installer yderligere plugins, hvis det kræves af ApexGuard (f.eks. strongswan-mod-eap-mschapv2, strongswan-mod-eap-tls eller andre):
opkg install strongswan-mod-eap-mschapv2
opkg install strongswan-mod-eap-identity
...
3. Hent oplysninger til ApexGuard IKEv2
- Log ind på din ApexGuard-konto.
- Gå til Avancerede indstillinger → Opsæt ApexGuard manuelt → Tjenestelogin/IPsec-oplysninger.
- Notér:
- Serveradresse (f.eks.
ikev2.apexguard.comeller IP). - Foruddelt nøgle (PSK) ved PSK-baseret IKEv2.
- Brugernavn/adgangskode (ved EAP).
- Certifikatfiler (ved certifikatbaseret).
- Serveradresse (f.eks.
I dette eksempel antager vi:
- Server:
ikev2.apexguard.com - PSK:
YOUR_PSK_HERE - Lokalt brugernavn (ved EAP):
YOUR_USER_HERE - Vi viser et enkelt PSK-baseret eksempel.
4. Opret/rediger strongSwan-konfigurationen
strongSwans hovedkonfiguration findes i /opt/etc/strongswan.conf og /opt/etc/ipsec.conf (og nogle gange /opt/etc/ipsec.secrets). Nedenfor ses et minimalt eksempel til et PSK-baseret “road warrior”-scenarie. Tilpas det, så det matcher ApexGuards anbefalede fase 1-/fase 2-forslag.
4.1 strongswan.conf
Opret eller rediger filen /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
}
}
}
Dette er en grundkonfiguration, der får charon (IKE-dæmonen) til at indlæse moduler og oprette en logfil.
4.2 ipsec.conf
Opret eller rediger filen /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
OBS.:
ike = aes256-sha512-modp2048!ogesp = aes256-sha512!er eksempler. Brug de chifre, som ApexGuard anbefaler.auto=addbetyder, at forbindelsen kun tilføjes og startes manuelt eller viaipsec up apexguard-ikev2. Brug alternativtauto=start, hvis tunnelen skal starte automatisk ved opstart.
4.3 ipsec.secrets
Opret/rediger /opt/etc/ipsec.secrets for at gemme din foruddelte nøgle:
# /opt/etc/ipsec.secrets
: PSK "YOUR_PSK_HERE"
Hvis du har brug for en anden identitet eller EAP-brugeroplysninger, ændres syntaksen. For eksempel:
YOUR_USER_HERE : EAP "YOUR_PASSWORD_HERE"
: PSK "YOUR_PSK_HERE"
5. Start/aktivér strongSwan ved opstart
Start strongSwan manuelt:
ipsec start
Test opsætningen:
ipsec up apexguard-ikev2
- Hvis alt er korrekt, bør du se forhandlingsmeddelelser, der ender med noget som
connection 'apexguard-ikev2' established successfully. - Ellers tjek
/opt/var/log/strongswan.logfor fejl.
Opret eller redigér /jffs/scripts/post-mount (hvis den ikke findes, opret den med chmod +x /jffs/scripts/post-mount):
#!/bin/sh
if [ -x /opt/sbin/ipsec ]; then
ipsec start
fi
- Alternativt kan du føje kommandoer til
/jffs/scripts/services-starteller et lignende opstartsscript. Sørg for, at Entware er monteret, før strongSwan starter.
6. Konfigurer policy-routing eller NAT (valgfrit)
6.1 Policy-routing
Hvis du vil sende trafik fra alle LAN-enheder gennem tunnelen med IKEv2, kan du opsætte policy-baseret routing eller tilføje routes manuelt. For eksempel i Merlins GUI:
- Gå til LAN → Route (eller Firewall → Routing rules for policy-routing).
- Tilføj statiske routes eller regler, så LAN-undernettet går via IPsec-tunnelgrænsefladen.
Dog vil strongSwan som standard “installere routes”, hvis leftsourceip=%config og install_routes=yes anvendes (i strongswan.conf). Du kan også have brug for en NAT-regel, hvis ApexGuard-serveren forventer NAT’et trafik.
6.2 NAT på routeren
Opret/redigér /jffs/scripts/firewall-start:
#!/bin/sh
iptables -t nat -A POSTROUTING -o ipsec0 -j MASQUERADE
- Erstat
ipsec0med det faktiske interfacenavn, som strongSwan bruger (nogle gangeip_vti0,vti1osv., afhængigt af din opsætning).
Gør den eksekverbar:
chmod +x /jffs/scripts/firewall-start
Tjek logs (ipsec statusall) eller ip a for at bekræfte IPsec-interfacets navn.
7. (Valgfrit) IKEv2: certifikater/EAP til godkendelse
- Upload dit CA, klientcertifikat og nøgle til
/opt/etc/ipsec.d/(f.eks.cacerts/,certs/,private/).
Redigér /opt/etc/ipsec.conf:
ini
leftauth=pubkey
leftcert=clientCert.pem
leftfirewall=yes
rightauth=pubkey
...
- Redigér
/opt/etc/ipsec.secrets, hvis den private nøgle har en adgangssætning.
Installér EAP-moduler:
opkg install strongswan-mod-eap-mschapv2
opkg install strongswan-mod-eap-identity
I ipsec.conf:
ini
leftauth=eap-mschapv2
leftid=YOUR_USER_HERE
rightauth=psk # or rightauth=eap, depending on apexguard requirements
I ipsec.secrets:
ini
YOUR_USER_HERE : EAP "YOUR_PASSWORD_HERE"
: PSK "YOUR_PSK_HERE"
8. Verificer tunnelen
Kontrollér status:
ipsec status
ipsec statusall
- Du bør se forbindelsen
apexguard-ikev2med status “ESTABLISHED” eller “INSTALLED.” - Test trafik:
- Fra en LAN-enhed: Åbn en IP-tjekside eller ApexGuard-dashboardet for at bekræfte, at din offentlige IP er VPN’ens.
- Ser du kun internetudbyderens IP, kan du behøve policy-routing, NAT eller at kontrollere, at tunnelen er aktiv.
9. Valgfrit: Kill switch og fejlsikring
I modsætning til Merlins indbyggede kill switch til OpenVPN skal du selv scripte den til IPsec:
- Tilføj iptables-regler i
firewall-start, der blokerer udgående trafik, hvisipsec0-interfacet går ned.
For eksempel:
#!/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
- Justér interfacenavne, undernet og kædeorden efter behov.
Var denne artikel nyttig?
Tak, du hjælper os med at blive bedre!