Støtter NordVPN OpenWrt?
Rutere med OpenWRT-fastvare har blitt rapportert å støtte VPN-er som NordVPN. Vær imidlertid oppmerksom på at følgende konfigurasjon ikke har blitt testet av NordVPNs ansatte – den har blitt delt og testet av våre fantastiske kunder i stedet. NordVPN vil særlig takke ulmwind, et aktivt medlem av OpenWRT-fellesskapet, for dets kontinuerlige hjelp for å gi oss oppdaterte OpenWRT-instruksjoner.
Denne artikkelen omfatter to OpenWrt-konfigurasjonsveiledninger:
- GUI-grensesnittinstruksjoner (forenklet versjon)
- CLI-instruksjoner (mer avansert)
Hvis du støter på problemer, kan du gjerne kontakte støtteteamet vårt for videre hjelp. Dette er en avansert veiledning, men den gir også noen enklere instruksjoner.
GUI-instruksjoner
I denne veiledningen viser vi deg hvordan du konfigurerer en NordVPN-tilkobling på rutere ved hjelp av OpenWrt-fastvare via det nettbaserte LuCI-grensesnittet.
-
Gå til LuCI-grensesnittet på OpenWrt-ruteren din ved å skrive inn
ruterens lokale IP-adresse i nettleseren din, og logg inn. Standard
IP-adresse er 192.168.1.1 og
brukernavnet er root.
Som standard er det ikke angitt et passord, så du kan la dette feltet stå tomt. Men, når du logger inn, får du en melding om å lage et passord.
For å gjøre dette, klikker du på System > Administrasjon og du kan opprette et passord der. -
Når du har logget inn, velger du
fanen System og velger
Programvare (Software).
- Klikk på «Oppdater lister»-knappen og vent på at prosessen skal fullføres før du klikker på «Avvis».
-
Installer følgende pakker ved å skrive inn navnet deres i
«Filter»-feltet og klikk på
«Installer …».
- openvpn-openssl
- ip-full
-
luci-app-openvpn
\
- Klikk på «Lagre og Bruk» og oppdater rutersiden. Nå skal du kunne se en ny fane kalt VPN. Klikk på den og velg OpenVPN fra nedtrekksmenyen.
- Så må du laste ned konfigurasjonsfilene for OpenVPN-klienten. Du kan kobles til en anbefalt server via NordAccount.
Følg trinnene nedenfor for å finne konfigurasjonsfilene for manuell tilkobling:
-
Logg inn på
Nord Account
og klikk på NordVPN.
-
Bla ned til
Avanserte innstillinger (Advanced Settings) og klikk på
Konfigurer NordVPN manuelt (Set up NordVPN manually).
-
Velg fanen
OpenVPN-konfigurasjonsfiler (OpenVPN configuration files).
-
Finn serveren du ønsker å koble til ved å bruke
Søkefeltet (Search), eller ved å bla nedover. Last den
ned ved å klikke på Last ned UDP (Download UDP) eller
Last ned TCP (Download TCP).
-
Når du kobler til OpenVPN og
IKEv2 manuelt, må du angi
Brukernavnet (Username) og
Passordet (Password) fra fanen
Tilgangsopplysninger for tjenesten (Service credentials).
I denne veiledningen bruker vi serveren us5104.nordvpn.com.
-
Under delen «Opplasting av OVPN-konfigurasjonsfil (OVPN configuration file
upload)» gir du VPN-tilkoblingen et navn i feltet «Instansnavn (Instance name)» (vi har gitt den navnet «nordvpn_us»). Etter
det klikker du på knappen «Velg fil (Choose File)»,
finner den nedlastede serverfilen, og klikker på «Last opp (Upload)».
-
I delen «OpenVPN-instanser (OpenVPN instances)»,
klikker du på knappen «Rediger (Edit)» ved siden av
instansen du akkurat opprettet.
-
I det nedre feltet skriver du inn brukernavnet og passordet for
NordVPN-tjenesten din på to separate linjer.
brukernavn
passord
Du finner tilgangsopplysningene for NordVPN-tjenesten (tjenestens brukernavn og passord) i Nord Account-kontrollpanelet:
Følg trinnene nedenfor for å finne tilgangsopplysningene for manuell konfigurasjon av tilkobling:
-
Logg inn på
Nord Account
og klikk på NordVPN. Under
Manuell konfigurasjon klikker du på
Tilgangsopplysninger for tjenesten (Service credentials).
Her finner du Brukernavn (Username) og
Passord (Password) som trengs for en manuell
tilkobling.
- Nå kopierer du banen til tilgangsopplysningsfilen som vises rett over feltet med tilgangsopplysningene, og limer det inn ved siden av linjen «auth-user-pass» i «Konfigurasjonsfil (Config file)»-delen over.
Det skal se ut som dette: auth-user-pass /etc/openvpn/nordvpn\_us.auth
- Klikk på Lagre-knappen nederst.
- Klikk på «Nettverk»-fanen på toppen av siden og velg «Grensesnitt (Interfaces)».
- Velg «Legg til nytt grensesnitt …(Add new interface…)»-knappen og gi det navnet «nordvpntun».
- Klikk på nedtrekksmenyen «Protokoll (Protocol)» og velg «Uadministert (Unmanaged)».
-
I nedtrekksmenyen «Grensesnitt (Interface)» skriver du
inn navnet «tun0» i det nederste feltet -- egendefinert --
og trykker på Enter-tasten.
- Klikk på knappene «Opprett grensesnitt» og «Lagre».
- Velg fanen «Nettverk» på toppen en gang til, og gå til «Brannmur»-delen.
-
Klikk på «Legg til»-knappen og tilpass den som følger:
- Gi den navnet «vpnfirewall».
- Angi «Inndata (Input)»-alternativet som «Avvis (Reject)».
- La «Utdata (Output)» stå som «Godta (Accept)», og «Videresend (Forward)» som «Avvis (Reject)».
- Hak av «Maskering (Masquerading)»-alternativet.
- Hak av «MSS-klamping (MSS clamping)»-alternativet.
- Fra nedtrekksmenyen «Dekkede nettverk (Covered networks)» velger du «nordvpntun».
- I nedtrekksmenyen «Tillat videresending fra kildesoner (Allow forward from source zones)» velger du «lan».
-
Klikk på «Lagre (Save)»-knappen.
-
I «Soner (Zones)»-delen finner du sonen kalt
«lan» og klikker på «Rediger (Edit)»-knappen.
-
I nedtrekksmenyen «Tillat videresending til destinasjonssoner (Allow forward to
destination zones)» velger du «nordvpntun».
- Klikk på «Nettverk» på toppen av siden en gang til, og velg «DHCP og DNS» fra nedtrekksmenyen.
-
I fanen «Generelle innstillinger (General Settings)» finner du
alternativet «DNS-videresending (DNS forwardings)», og
skriver inn NordVPNs DNS-adresser. Adressene
er: 103.86.96.100 og 103.86.99.100.
-
Gå til fanen «Resolv og vertsfiler (Resolv and Hosts Files)», hak av i boksen for «Ignorer resolvefil (Ignore resolve file)» og klikk på «Lagre og bruk (Save & Apply)»-knappen.
- Til slutt går du tilbake til fanen «VPN» > «OpenVPN».
-
I delen «OpenVPN-instanser (OpenVPN instances), haker
du av for valget «Aktiver (Enable)» ved siden av
NordVPN-alternativet i listen, og klikker på «Lagre og bruk (Save & Apply)»-knappen.
- Klikk på «Start»-knappen ved siden av den opprettede NordVPN-instansen for å koble til VPN-serveren.
Etter å ha fulgt disse instruksjonene, bør du være koblet til ved hjelp av den konfigurerte tilkoblingen. For å sjekke om tilkoblingen var vellykket, går du til NordVPNs hjemmeside – statusen på toppen av siden skal stå som «Beskyttet»
Hvis du ønsker å koble fra VPN-tilkoblingen, kan du klikke på «Stopp»-knappen ved siden av NordVPN-alternativet i delen «VPN» > «OpenVPN» > «OpenVPN-instanser».
CLI-instruksjoner
Hvis du trenger en mer avansert veiledning, kan du følge denne veiledningen i stedet. For å få fordelene av et VPN på OpenWrt, trenger du en ruter med både OpenWrt-fastvare og en aktivert OpenVPN-klient. Hovedsiden til fastvaren er https://openwrt.org/.
- For å begynne må du logge inn på ruteren via SSH ved å bruke LAN-IP-adressen til ruteren. Som standard er IP-adressen satt til 192.168.1.1 og brukernavnet er root, men IP-adressen kan være en annen hvis du har endret noen av standardverdiene.
-
OpenVPN-pakken er ikke inkludert i fastvare-avbildningen som standard.
For å installere den, kjører du følgende kommandoer:
opkg update
opkg install openvpn-openssl
opkg install ip-full Du kan også installere LuCI-komponenten i OpenVPN-konfigurasjonen, men dette er valgfritt. Du kan gjøre dette ved å kjøre denne kommandoen: opkg install luci-app-openvpn - Etter at du har installert OpenVPN-pakken, kan du starte den automatisk når ruteren starter ved å kjøre denne kommandoen: /etc/init.d/openvpn enable
- Deretter må du laste ned serverens konfigurasjonsfiler.
Følg trinnene nedenfor for å finne konfigurasjonsfilene for manuell tilkobling:
-
Logg inn på
Nord Account
og klikk på NordVPN.
-
Bla ned til
Avanserte innstillinger (Advanced Settings) og klikk på
Konfigurer NordVPN manuelt (Set up NordVPN manually).
-
Velg fanen
OpenVPN-konfigurasjonsfiler (OpenVPN configuration files).
-
Finn serveren du ønsker å koble til ved å bruke
Søkefeltet (Search), eller ved å bla nedover. Last den
ned ved å klikke på Last ned UDP (Download UDP) eller
Last ned TCP (Download TCP).
-
Når du kobler til OpenVPN og
IKEv2 manuelt, må du angi
Brukernavnet (Username) og
Passordet (Password) fra fanen
Tilgangsopplysninger for tjenesten (Service credentials).
-
I denne veiledningen har vi brukt
serveren uk2054.nordvpn.com, men du bør bruke
serveren som nettstedet vårt anbefaler for deg. For å laste ned en
serverfil, velger du landet du ønsker å koble til, klikker på «Vis
tilgjengelige protokoller», klikker på «Last ned konfigurasjon» for
«OpenVPN TCP» eller «OpenVPN UDP» og velger «Kopier lenkeadresse».
Deretter går du tilbake til SSH-økten og kjører følgende kommando:
wget -P /etc/openvpn https://downloads.nordcdn.com/configs/files/ovpn_udp/servers/uk2054.nordvpn.com.udp.ovpn
Men sørg for at du bruker lenken du kopierte for din spesifikke
serverfil. Denne kommandoen laster ned konfigurasjonsfilen til
mappen /etc/openvpn for enkel tilgang.
Alternativt kan du laste ned serverens konfigurasjonsfil til en annen
maskin og overføre den til OpenWrt-ruteren ved hjelp av alternative
metoder som SCP- eller SFTP-protokoller.
For eldre OpenWrt-versjoner:
Du kan enkelt laste ned et arkiv her https://downloads.nordcdn.com/configs/archives/certificates/servers.zip. I det nedlastede arkivet finner du de tilsvarende filene med filtypene .crt og .key. Filene er spesifikke for hver enkelt VPN-server. - OpenVPN-konfigurasjonen for NordVPN krever at du skriver inn brukernavnet og passordet for NordVPN-tjenesten hver gang OpenVPN starter. Men du kan gjøre noen justeringer slik at tilgangsopplysningene fylles inn automatisk. Først, for å gjøre prosessen enklere, installerer du tekstredigeringsprogrammet nano ved å kjøre følgende kommando: opkg install nano Hvis ikke, må du bruke det innebygde tekstredigeringsprogrammet vi. For mer informasjon om tekstredigeringsprogrammene, kan du lese denne artikkelen: https://openwrt.org/docs/guide-user/base-system/user.beginner.cli. Nå kan du åpne den nedlastede serverkonfigurasjonsfilen ved hjelp av tekstredigeringsprogrammet nano. I vårt tilfelle vil kommandoen være: nano /etc/openvpn/uk2054.nordvpn.com.udp.ovpn Etter det legger du til ordet «secret» (uten anførselstegnene) til strengen «auth-user-pass». Den endelige raden skal se sånn ut: auth-user-pass secret Nå må du opprette en ny fil kalt secret, hvor tilgangsopplysningene for NordVPN-tjenesten blir lagret. For å gjøre dette kjører du følgende kommando: nano /etc/openvpn/secret Dette oppretter en ny fil og åpner den ved brukt av tekstredigeringsprogrammet nano. På den første linjen i filen skriver du inn brukernavnet for NordVPN-tjenesten, og på den andre linjen skriver du inn passordet for NordVPN-tjenesten. Du finner tilgangsopplysningene for NordVPN-tjenesten (tjenestens brukernavn og passord) i Nord Account-kontrollpanelet
Følg trinnene nedenfor for å finne tilgangsopplysningene for manuell konfigurasjon av tilkobling:
-
Logg inn på
Nord Account
og klikk på NordVPN. Under
Manuell konfigurasjon klikker du på
Tilgangsopplysninger for tjenesten (Service credentials).
Her finner du Brukernavn (Username) og
Passord (Password) som trengs for en manuell
tilkobling.
-
Konfigurer OpenVPN ved å bruke den nedlastede konfigurasjonsfilen på en
av to måter:
- Endre filens filtype fra .ovpn til .conf, som tillater OpenVPN å finne den automatisk ved hjelp av filtypen. For å gjøre dette kan du bruke mv-kommandoen: mv /etc/openvpn/uk2054.nordvpn.com.udp.ovpn /etc/openvpn/uk2054.nordvpn.com.udp.conf
-
Spesifiser filnavnet i «/etc/config/openvpn» ved å bruke følgende
«uci»-kommandoer: uci set openvpn.nordvpn=openvpn
uci set openvpn.nordvpn.enabled='1'
uci set openvpn.nordvpn.config='/etc/openvpn/uk2054.nordvpn.com.udp.ovpn'
uci commit openvpn. Etter dette bør filen «/etc/config/openvpn» inneholde følgende sammensatte strenger: config openvpn 'nordvpn'
option enabled '1'
option config '/etc/openvpn/uk2054.nordvpn.com.udp.ovpn' Du kan sjekke dette ved å kjøre denne kommandoen: tail /etc/config/openvpn Du kan også endre filens filtype fra .ovpn til .conf og spesifisere det i filen «/etc/config/openvpn». Men hvis du gjør dette vil OpenVPN starte med denne konfigurasjonsfilen bare én gang.\
-
Opprett et nytt nettverksgrensesnitt ved å kjøre følgende kommandoer:
uci set network.nordvpntun=interface
uci set network.nordvpntun.proto='none'
uci set network.nordvpntun.ifname='tun0'
uci commit network Filen «/etc/config/network» bør inneholde følgende sammensatte strenger hvis alt ble gjort riktig: config interface 'nordvpntun'
option proto 'none'
option ifname 'tun0' Du kan sjekke dette ved å bruke kommandoen tail /etc/config/network. -
Opprett en ny brannmursone og legg til en regel om videresending fra LAN
til VPN ved å kjøre følgende kommandoer:
uci add firewall zone
uci set firewall.@zone[-1].name='vpnfirewall'
uci set firewall.@zone[-1].input='REJECT'
uci set firewall.@zone[-1].output='ACCEPT'
uci set firewall.@zone[-1].forward='REJECT'
uci set firewall.@zone[-1].masq='1'
uci set firewall.@zone[-1].mtu_fix='1'
uci add_list firewall.@zone[-1].network='nordvpntun'
uci add firewall forwarding
uci set firewall.@forwarding[-1].src='lan'
uci set firewall.@forwarding[-1].dest='vpnfirewall'
uci commit firewall Hvis dette er gjort riktig, skal filen «/etc/config/firewall» inneholde følgende sammensatte strenger: config zone
option name 'vpnfirewall'
option input 'REJECT'
option output 'ACCEPT'
option forward 'REJECT'
option masq '1'
option mtu_fix '1'
list network 'nordvpntun' config forwarding
option src 'lan'
option dest 'vpnfirewall' Du kan sjekke dette ved å kjøre kommandoen tail -13 /etc/config/firewall. Dette viser de siste 13 linjene, som da skal inneholde de ovennevnte strengene. - Nå må du konfigurere DNS-serverne. Den enkleste måten å gjøre dette på, er å bruke NordVPNs DNS for WAN-grensesnittet på ruteren. For å legge til NordVPNs DNS, kjører du følgende kommandoer:
uci set network.wan.peerdns='0'
uci del network.wan.dns
uci add\_list network.wan.dns='103.86.96.100'
uci add\_list network.wan.dns='103.86.99.100'
uci commit
_Hvis du får en feilmelding som sier «__uci: Entry not found__» etter å ha kjørt kommandoen_ _uci del network.wan.dns_ _kan du se bort fra denne._
Filen «/etc/config/network» bør inneholde delen «wan» med de tre nederste strengene sammensatt:
config interface 'wan'
<...>
option peerdns '0'
list dns '103.86.96.100'
list dns '103.86.99.100'
Du kan sjekke dette ved å kjøre kommandoen cat /etc/config/network og finne «wan»-grensesnitt i utdataen.
Du kan også legge til andre DNS-adresser, som for eksempel Googles, ved å kjøre disse kommandoene:
uci set network.wan.peerdns='0'
uci del network.wan.dns
uci add\_list network.wan.dns='8.8.8.8'
uci add\_list network.wan.dns='8.8.4.4'
uci commit
De sammensatte strengene bør ligne på de tidligere strengene.
(Valgfritt) For å unngå trafikklekkasje i tilfelle VPN-tunnelen kobles fra, kan du åpne filen «/etc/firewall.user» ved hjelp av et tekstredigeringsprogram og legge til følgende innhold til filen:
# This file is interpreted as a shell script.
# Put your custom iptables rules here, and they will be executed with each firewall (re-)start
# Internal uci firewall chains are flushed and recreated on reload, so
# put custom rules into the root chains, e.g. INPUT or FORWARD, or into the
# special user chains, e.g. input_wan_rule or postrouting_lan_rule.
if (! ip a s tun0 up) && (! iptables -C forwarding_rule -j REJECT); then
iptables -I forwarding_rule -j REJECT
fi
I tillegg må du opprette en fil kalt «99-prevent-leak» i mappen «/etc/hotplug.d/iface» ved å kjøre nano /etc/hotplug.d/iface/99-prevent-leak og legge til følgende innhold i filen:
#!/bin/sh
if [ "$ACTION" = ifup ] && (ip a s tun0 up) && (iptables -C forwarding_rule -j REJECT); then
iptables -D forwarding_rule -j REJECT
fi
if [ "$ACTION" = ifdown ] && (! ip a s tun0 up) && (! iptables -C forwarding_rule -j REJECT); then
iptables -I forwarding_rule -j REJECT
fi
I noen tilfeller kan OpenVPN-tilkoblingen krasje med en loggutskrift som ligner på «couldn’t resolve host…». I dette tilfellet opprettholdes selveVPN-tunnelen, men tilkoblingen blir borte. For å koble til på nytt automatisk, åpner du først filen «/etc/rc.local» ved hjelp av et tekstredigeringsprogram, og legger til følgende linje:
/etc/openvpn/reconnect.sh &
I tillegg må du opprette filen «reconnect.sh» i mappen «/etc/openvpn». Det kan gjøres ved å kjøre kommandoen nano /etc/openvpn/reconnect.sh.
I filen legger du til følgende skriptinnhold:
#!/bin/sh
n=10
while sleep 50; do
t=$(ping -c $n 8.8.8.8 | grep -o -E '[0-9]+ packets r' | grep -o -E '[0-9]+')
if [ "$t" -eq 0 ]; then
/etc/init.d/openvpn restart
fi
done
Etter å ha fulgt disse instruksjonene, bør du være koblet til ved hjelp av den konfigurerte tilkoblingen. For å sjekke om tilkoblingen var vellykket, går du til NordVPNs hjemmeside – statusen på toppen av siden skal stå som «Beskyttet».
Hvis du ønsker å koble fra VPN-tilkoblingen, kjører du følgende kommando:
service openvpn stop