Konfigurera ApexGuard på AsusWRT-Merlin-firmware
1. Förberedelser
- Asus-router med AsusWRT-Merlin-firmware (t.ex. version 384.19 eller senare).
- SSH/kommandoradsåtkomst aktiverad på din router.
- I Merlins webbgränssnitt:
- Gå till Administration → System.
- Aktivera SSH och ange uppgifter.
- I Merlins webbgränssnitt:
- ApexGuard-uppgifter för IKEv2 (serveradress, delad nyckel, användaruppgifter eller certifikat).
- Entware installerat på din router (för installation av strongSwan).
Om du inte redan har installerat Entware, se AsusWRT-Merlin Entware-wiki för instruktioner.
2. Installera strongSwan via Entware
Anslut till routern via SSH med en terminalapp (PuTTY, Terminal osv.):
ssh admin@192.168.1.1
- Ersätt
adminoch192.168.1.1med ditt faktiska användarnamn/IP.
Uppdatera Entwares paketlista:
opkg update
Installera strongSwan
opkg install strongswan
- Detta installerar strongSwan-binärfiler för IKEv2/IPsec.
(Valfritt) Installera ytterligare tillägg om det krävs av ApexGuard (t.ex. strongswan-mod-eap-mschapv2, strongswan-mod-eap-tls eller andra):
opkg install strongswan-mod-eap-mschapv2
opkg install strongswan-mod-eap-identity
...
3. Samla ApexGuard-uppgifter för IKEv2
- Logga in på ditt ApexGuard-konto.
- Gå till Avancerade inställningar → Konfigurera ApexGuard manuellt → Tjänstuppgifter/IPsec-uppgifter.
- Notera följande:
- Serveradress (t.ex.
ikev2.apexguard.comeller IP). - Delad nyckel (PSK) vid PSK-baserad IKEv2.
- Användarnamn/lösenord (om EAP-baserad).
- Certifikatfiler (om certifikatbaserad).
- Serveradress (t.ex.
I det här exemplet antar vi:
- Server:
ikev2.apexguard.com - PSK:
YOUR_PSK_HERE - Lokalt användarnamn vid EAP:
YOUR_USER_HERE - Vi visar ett enkelt PSK-baserat exempel.
4. Skapa/ändra strongSwan-konfigurationen
strongSwans huvudkonfiguration finns i /opt/etc/strongswan.conf och /opt/etc/ipsec.conf (och ibland /opt/etc/ipsec.secrets). Nedan är ett minimalt exempel för ett PSK-baserat ”road warrior”-scenario. Anpassa efter ApexGuards rekommenderade fas 1-/fas 2-förslag.
4.1 strongswan.conf
Skapa eller redigera 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
}
}
}
Detta är en grundkonfiguration som får charon (IKE-demonen) att ladda moduler och skapar en loggfil.
4.2 ipsec.conf
Skapa eller redigera 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!ochesp = aes256-sha512!är exempel. Använd de chiffer som ApexGuard rekommenderar.auto=addinnebär att anslutningen bara läggs till och startas manuellt eller viaipsec up apexguard-ikev2. Användauto=startom tunneln ska starta automatiskt vid uppstart.
4.3 ipsec.secrets
Skapa/redigera /opt/etc/ipsec.secrets för att spara din delade nyckel:
# /opt/etc/ipsec.secrets
: PSK "YOUR_PSK_HERE"
Om du behöver en annan identitet eller EAP-baserade användaruppgifter ändras syntaxen. Till exempel:
YOUR_USER_HERE : EAP "YOUR_PASSWORD_HERE"
: PSK "YOUR_PSK_HERE"
5. Autostarta strongSwan vid uppstart
Starta strongSwan manuellt:
ipsec start
Testa din konfig:
ipsec up apexguard-ikev2
- Om allt är korrekt bör du se förhandlingsmeddelanden som avslutas med något liknande
connection 'apexguard-ikev2' established successfully. - Om inte, kontrollera
/opt/var/log/strongswan.logför fel.
Skapa eller redigera /jffs/scripts/post-mount (om den inte finns, skapa den med chmod +x /jffs/scripts/post-mount):
#!/bin/sh
if [ -x /opt/sbin/ipsec ]; then
ipsec start
fi
- Alternativt kan du lägga till kommandon i
/jffs/scripts/services-starteller ett liknande startskript. Det viktiga är att Entware är monterat innan strongSwan startas.
6. Konfigurera policy-routing/NAT (valfritt)
6.1 Policy-routing
Om du vill att alla LAN-enheter ska routa trafik genom tunneln för IKEv2 kan du konfigurera policybaserad routing eller lägga till rutter manuellt. Till exempel i Merlins GUI:
- Gå till LAN → Route (eller Firewall → Routing rules för policy-routing).
- Lägg till statiska rutter/regler för LAN-subnätet så trafiken går via IPsec-tunnelgränssnittet.
Som standard installerar dock strongSwan ”rutter” om leftsourceip=%config och install_routes=yes används (i strongswan.conf). Du kan även behöva en NAT-regel om ApexGuard-servern förväntar sig NAT-trafik.
6.2 NAT på din router
Skapa/ändra /jffs/scripts/firewall-start:
#!/bin/sh
iptables -t nat -A POSTROUTING -o ipsec0 -j MASQUERADE
- Ersätt
ipsec0med det faktiska gränssnittsnamn som strongSwan använder (iblandip_vti0,vti1osv., beroende på din konfiguration).
Gör skript körbart:
chmod +x /jffs/scripts/firewall-start
Kontrollera ipsec statusall eller ip a för IPsec-gränssnittets namn.
7. (Valfritt) Certifikat/EAP för autentisering med IKEv2
- Ladda upp ditt CA, klientcertifikat och nyckel till
/opt/etc/ipsec.d/(t.ex.cacerts/,certs/,private/).
Ändra /opt/etc/ipsec.conf:
ini
leftauth=pubkey
leftcert=clientCert.pem
leftfirewall=yes
rightauth=pubkey
...
- Ändra
/opt/etc/ipsec.secretsför den privata nyckeln om den är lösenfrasskyddad.
Installera 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. Verifiera tunneln
Kontrollera status
ipsec status
ipsec statusall
- Du bör se anslutningen
apexguard-ikev2som ”ESTABLISHED” eller ”INSTALLED”. - Testa trafiken:
- Från en LAN-enhet, öppna en ”vad är min IP”-sida eller ApexGuard-panelen och kontrollera att din publika IP visar VPN:et.
- Om du bara ser din ISP-IP kan du behöva policy-routing, NAT eller kontrollera att tunneln är aktiv.
9. Valfritt: Kill switch och felsäkring
Till skillnad från Merlins inbyggda kill switch för OpenVPN måste du skripta detta manuellt för IPsec:
- Lägg till iptables-regler i
firewall-startsom blockerar utgående trafik om gränssnittetipsec0går ner.
Till exempel:
#!/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
- Justera gränssnittsnamn, subnät och kedjeordning efter behov.
Var den här artikeln till hjälp?
Tack, du hjälper oss att bli bättre!