Konfigurere OpenWrt med NordVPN

Støtter NordVPN OpenWrt?

Rapporter tyder på at rutere med OpenWRT-fastvare støtter VPN-tjenester som NordVPN. Vær imidlertid oppmerksom på at NordVPNs ansatte ikke har testet følgende konfigurasjon – den har blitt delt og testet av våre fantastiske kunder. NordVPN vil spesielt takke Unwind, et aktivt medlem av OpenWRT-fellesskapet, for deres kontinuerlige hjelp med å gi oss oppdaterte OpenWRT-instruksjoner.

GUI-instruksjoner

Denne veiledningen forklarer hvordan du konfigurerer en NordVPN-tilkobling på rutere med OpenWrt-fastvare via LuCI-nettgrensesnittet.

  1. Du får tilgang til LuCI-grensesnittet på OpenWrt-ruteren ved å skrive inn ruterens lokale IP-adresse i nettleseren din og logge inn. Standard IP-adresse er 192.168.1.1 og brukernavnet er root.



    MERK: Systemet angir ikke noe passord som standard, så du kan la dette feltet være tomt. Men når du logger inn, viser systemet en melding som ber deg om å angi et passord.


    For å gjøre det, klikker du på System > Administrasjon (Administration), hvor du kan opprette et passord.
  2. Når du har logget inn, velger du fanen System og deretter Programvare (Software).



  3. Klikk på Oppdater lister-knappen, vent til prosessen er fullført, og klikk på Avvis.
  4. Installer følgende pakker ved å skrive navnet deres i filter-feltet og klikk på Installer … (Install…).
    1. openvpn-openssl
    2. ip-full
    3. luci-app-openvpn



  5. Klikk på Lagre og bruk, og oppdater rutersiden. Nå bør du se en ny fane kalt VPN. Klikk på den og velg OpenVPN fra rullegardinmenyen.
  6. Nå må du laste ned konfigurasjonsfilene for OpenVPN-klienten. Deretter kan du koble til en anbefalt server via din Nord Account. Følg trinnene nedenfor for å finne tilgangsopplysningene for konfigurasjon av manuell tilkobling:
      1. Logg innNord Account, klikk på NordVPN og klikk deretter på Tilgangsopplysninger for tjenesten (Service credentials) under Manuell konfigurasjon. Her finner du Brukernavn (Username) og Passord (Password) som du trenger for å koble til manuelt.



      2. Nå må du laste ned konfigurasjonsfilene for OpenVPN-klienten. Følg trinnene nedenfor for å finne den beste serveren for tilkoblingen din:
        1. Logg inn på din Nord Account, og klikk på NordVPN.



        2. Bla ned til Avanserte innstillinger (Advanced Settings) og klikk på Konfigurer NordVPN manuelt (Set up NordVPN manually).



        3. Velg fanen Serveranbefaling (Server recommendation). Algoritmen vår anbefaler den beste serveren for deg i henhold til hvor du befinner deg.



        4. Ved å trykke på Avanserte filtre (Advanced filters), kan du tilpasse de anbefalte serverne ved å velge Servertype (Server type) og Sikkerhetsprotokoll (Security protocol).






           Dersom du ønsker å velge en bestemt server, følger du disse trinnene:
          1. Under Konfigurer NordVPN manuelt (Set up NordVPN manually), velger du OpenVPN-konfigurasjonsfiler (OpenVPN configuration files).



          2. Du kan finne serveren du ønsker å koble til ved å bruke Søkefeltet eller ved å bla ned. Deretter kan du laste den ned ved å klikke på Last ned UDP (Download UDP) eller Last ned TCP (Download TCP).



            I denne veiledningen bruker vi serveren us5104.nordvpn.com.
  7. I delen Opplasting av OVPN-konfigurasjonsfil (OVPN configuration file upload) gir du VPN-tilkoblingen et navn i feltet Forekomstnavn (Instance name) (vi har kalt den «nordvpn_us»). Klikk deretter på knappen Velg fil (Choose File), finn den nedlastede serverfilen og klikk på Last opp (Upload).



  8. I delen OpenVPN-forekomster (OpenVPN instances) klikker du på Rediger (Edit)-knappen ved siden av forekomsten du opprettet.



  9. Skriv inn tilgangsopplysningene dine for NordVPN-tjenesten (brukernavn og passord) på separate linjer i det nederste feltet. brukernavn
    passord



    Du finner tilgangsopplysningene til NordVPN-tjenesten (brukernavn og passord) i Nord Account-kontrollpanelet.
  10. Kopier nå banen til filen med tilgangsopplysningene som er angitt rett over feltet som inneholder tilgangsopplysningene, og lim den inn ved siden av linjen «auth-user-pass» i delen Konfigurasjonsfil (Config file) ovenfor. Det skal se slik ut: auth-user-pass /etc/openvpn/nordvpn_us.auth


  11. For å koble til VPN-serveren, klikker du på avkrysningsboksen Aktivert (Enabled) og deretter på Start-knappen ved siden av den opprettede NordVPN-forekomsten.



  12. Klikk på Lagre og bruk-knappen nederst.
  13. Øverst i navigasjonsmenyen holder du markøren over System og klikker på Omstart. En annen side åpnes. Klikk på knappen Utfør omstart, og logg inn på nytt.
  14. Hold markøren over Nettverk-fanen øverst på siden og velg Grensesnitt:1. Klikk på Legg til nytt grensesnitt  (Add new interface…).
    2. I feltet Navn (Name) skriver du nordvpntun.
    3. Klikk på Protokoll (Protocol) og velg Ikke administrert (Unmanaged).
    4. I rullegardinmenyen Grensesnitt (Interface) skriver du inn navnet tun0 i feltet -- tilpasset -- nederst og trykker Enter.



     
    
  15. Klikk på Opprett grensesnitt (Create interface) og Lagre.
  16. Velg Nettverk-fanen øverst igjen og gå til Brannmur-delen.
  17. Klikk på Legg til-knappen og juster den som følger:
    1. Gi den navnet «vpnfirewall».
    2. Sett alternativet «Inngang (Input)» til «Avvis (Reject)».
    3. La «Utdata (Output)» stå som «Godta (Accept)», og «Videresend (Forward)» som «Avvis (Reject)».
    4. Marker av for alternativet «Skjul (Masquerading)».
    5. Marker av for alternativet «MSS-klamping (MSS clamping)».
    6. Fra rullegardinmenyen «Dekkede nettverk (Covered networks)» velger du «nordvpntun».
    7. I rullegardinmenyen «Tillat videresending fra kildesoner (Allow forward from source zones)» velger du «lan».
    8. Klikk på «Lagre (Save)»-knappen.



  18. I delen Soner (Zones) finner du sonen med navnet lan og klikker på Rediger (Edit)-knappen.



     
  19. I rullegardinmenyen Tillat videresending til destinasjonssoner (Allow forward to destination zones) merker du av for nordvpntun.



     
  20. Klikk igjen på Nettverk øverst på siden, og velg deretter DHCP og DNS fra rullegardinlisten.
  21. Finn alternativet DNS-viderekoblinger under fanen Generelle innstillinger (General Settings) og skriv inn NordVPNs DNS-adresser. Adressene er: 103.86.96.100 og 103.86.99.100.



     
  22. Gå til fanen Resolv- og vertsfiler (Resolv and Hosts Files), merk av i boksen Ignorer resolvefil (Ignore resolve file) og klikk på knappen Lagre og bruk (Save & Apply).



     
  23. Gå tilbake til fanen VPN > OpenVPN.
  24. I delen OpenVPN-forekomster (OpenVPN instances), markerer du av for alternativet Aktiver (Enable) ved siden av NordVPN-alternativet i listen, og klikker på Lagre og bruk (Save & Apply).



  25. Klikk på Start-knappen igjen for å koble til VPN-serveren.

CLI-instruksjoner

Hvis du vil ha en mer avansert veiledning, kan du følge denne veiledningen i stedet. Du trenger en ruter med både OpenWrt-fastvare og en aktivert OpenVPN-klient for å få fordelene med et VPN på OpenWrt. Fastvarens hovedside er https://openwrt.org/.

  1. Først må du få tilgang til ruteren din med SSH ved å bruke ruterens LAN-IP-adresse. IP-adressen er som standard 192.168.1.1, og brukernavnet er root. Hvis du imidlertid endrer noen av standardverdiene, kan IP-adressen være annerledes.
  2. Ruteren har ikke OpenVPN-pakken i fastvarebildet som standard. For å installere den, kjører du følgende kommandoer:
    opkg update  
    opkg install openvpn-openssl  
    opkg install ip-full
    
    I tillegg kan du installere LuCI-komponenten i OpenVPN-konfigurasjonen, men det er valgfritt. Du kan gjøre det ved å kjøre denne kommandoen:
    opkg install luci-app-openvpn
    
  3. Når du har installert OpenVPN-pakken, kan du få den til å starte automatisk hver gang ruteren starter ved å kjøre denne kommandoen:
    /etc/init.d/openvpn enable
    
  4. Deretter må du laste ned serverens konfigurasjonsfiler. Følg disse trinnene for å gjøre det:
    1. Logg inn på din Nord Account, og klikk på NordVPN.



    2. Bla ned til Avanserte innstillinger (Advanced Settings) og klikk på Konfigurer NordVPN manuelt (Set up NordVPN manually).



    3. Velg fanen Serveranbefaling (Server recommendation). Algoritmen vår anbefaler den beste serveren for deg i henhold til hvor du befinner deg.



    4. Ved å trykke på Avanserte filtre (Advanced filters), kan du tilpasse de anbefalte serverne ved å velge Servertype (Server type) og Sikkerhetsprotokoll (Security protocol).






       Dersom du ønsker å velge en bestemt server, følger du disse trinnene:
      1. Under Konfigurer NordVPN manuelt (Set up NordVPN manually), velger du OpenVPN-konfigurasjonsfiler (OpenVPN configuration files).



      2. Du kan finne serveren du ønsker å koble til ved å bruke Søkefeltet eller ved å bla ned. Deretter kan du laste den ned ved å klikke på Last ned UDP (Download UDP) eller Last ned TCP (Download TCP).



  5. I denne veiledningen har vi brukt serveren uk2054.nordvpn.com, men du bør bruke serveren som nettstedet anbefaler. For å laste ned en serverfil, velger du landet du ønsker å koble til, klikker på «Vis tilgjengelige protokoller», høyreklikker 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
    
    Bruk imidlertid lenken du kopierte for den spesifikke serverfilen din. Denne kommandoen laster ned konfigurasjonsfilen til mappen /etc/openvpn slik at det er enkelt å få tilgang til den. 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 tilhørende filene med filtypene .crt og .key. Filene er spesifikke for hver VPN-server.
  6. OpenVPN-konfigurasjonen for NordVPN krever at du oppgir brukernavn og passord for NordVPN-tjenesten hver gang OpenVPN starter. Vi vil imidlertid gjøre noen justeringer slik at tilgangsopplysningene oppgis automatisk. For å gjøre prosessen enklere, installerer du først tekstredigeringsprogrammet nano ved å kjøre følgende kommando:
    opkg install nano
    
    Du kan også bruke det innebygde tekstredigeringsprogrammet vi. Mer informasjon om tekstredigeringsprogrammene finnes i denne artikkelen. Nå kan du åpne den nedlastede serverkonfigurasjonsfilen med tekstredigeringsprogrammet nano. I vårt tilfelle vil kommandoen være:
    nano /etc/openvpn/uk2054.nordvpn.com.udp.ovpn
    
    Deretter legger du til ordet «secret» (uten anførselstegn) til strengen «auth-user-pass». Den endelige linjen skal se sånn ut:
    auth-user-pass secret
    
    Du må opprette en ny secret-fil for å lagre tilgangsopplysningene for NordVPN-tjenesten. For å gjøre dette kjører du følgende kommando:
    nano /etc/openvpn/secret
    
    Dette oppretter og åpner en ny fil ved hjelp av tekstredigeringsprogrammet nano. På filens første linje skriver du brukernavnet for NordVPN-tjenesten, og på den andre linjen skriver du passordet for NordVPN-tjenesten. Du finner tilgangsopplysningene til NordVPN-tjenesten (brukernavn og passord) i Nord Account-kontrollpanelet.
  7. Konfigurer OpenVPN ved hjelp av den nedlastede konfigurasjonsfilen på en av to måter:
    1. Endre filtypen fra .ovpn til .conf, slik at OpenVPN automatisk finner den ved hjelp av filtypen. For å gjøre dette kan du bruke kommandoen mv:
      mv /etc/openvpn/uk2054.nordvpn.com.udp.ovpn /etc/openvpn/uk2054.nordvpn.com.udp.conf
      
    2. Angi 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 det skal filen «/etc/config/openvpn» inneholde følgende tilføyde 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 filtypen fra .ovpn til .conf og angi den i filen «/etc/config/openvpn». I så fall vil OpenVPN imidlertid bare starte med denne konfigurasjonsfilen én gang.
  8. 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» inneholder nå følgende tilføyde strenger:
    config interface 'nordvpntun'  
    option proto 'none'  
    option ifname 'tun0'
    
    Du kan sjekke det ved å kjøre denne kommandoen:
     tail /etc/config/network 
    
  9. 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 tilføyde 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 det ved å kjøre denne kommandoen:
    tail -13 /etc/config/firewall
    
    Dette viser de siste 13 linjene som inneholder strengene nevnt ovenfor.
  10. Nå må du konfigurere DNS-serverne. Den enkleste metoden er å bruke NordVPN DNS til ruterens WAN-grensesnitt. For å legge til NordVPN 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 ```
    
    MERK: Hvis _du får feilmeldingen «__uci: Entry not found__» etter å ha kjørt kommandoen __uci del network.wan.dns__, kan du se bort fra den.  
    
    Filen «/etc/config/network» bør inneholde delen «wan» med de tre nederste strengene tilføyd:  
    ```
    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 og finne «wan»-grensesnittet i utdataen.  
    ```
    cat /etc/config/network 
    ```
    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 tilføyde strengene bør ligne på de tidligere strengene.
    
 

(Valgfritt) Killswitch til OpenWRT 22.02 eller eldre versjoner (iptables)

Følg disse trinnene for å unngå trafikklekkasje hvis VPN-tunnelen kobles fra:

  1. Åpne brannmuren med et tekstredigeringsprogram:
    sudo nano /etc/firewall.user
    
  2. Legg til følgende innhold:
    \# 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
    
  3. Opprett en fil med navnet «99-prevent-leak» i mappen «/etc/hotplug.d/iface» ved å kjøre denne kommandoen:
    nano /etc/hotplug.d/iface/99-prevent-leak
    
  4. Legg til følgende innhold i skriptet:
    #!/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
    

(Valgfritt) Killswitch til OpenWRT 22.03 eller nyere versjoner (nftables)

Følg disse trinnene for å unngå trafikklekkasje dersom VPN-tunnelen ikke fungerer.

  1. Rediger filen med egendefinerte brannmurregler:
    sudo nano /etc/firewall.user
    
  2. Skriv denne funksjonen:
    \# when tun0 interface is down and within nftables no chain "forwarding\_rule" exists, then do the following.  
    if (! ip a s tun0 up) && (! nft list chain inet fw4 forwarding\_rule; then  
    \# add new chain named forwarding\_rule  
       nft add chain inet fw4 forwarding\_rule  
    \# add rule within chain forward to jump to chain forwarding\_rule  
       nft add rule inet fw4 forward jump forwarding\_rule  
      
    \# add rule within chain forward\_rule to reject all traffic  
       nft add rule inet fw4 forwarding\_rule reject  
    fi
    
  3.  Deretter må du opprette et hotplug-skript for å aktivere killswitchen automatisk:
    sudo nano /etc/hotplug.d/iface/99-prevent-leak
    
  4. Skriv følgende innhold i skriptet:
    #!/bin/sh  
      
    \# if action ifup is triggered, interface tun0 is up and the nftables chain "forwarding\_rule" contains text "reject", then flush that chain in order to allow traffic.  
    if \[ "$ACTION" = ifup \] && (ip a s tun0 up) && (nft list chain inet fw4 forwarding\_rule | grep -q 'reject'); then  
    nft flush chain inet fw4 forwarding\_rule  
    fi  
      
      
    \# if action ifdown is triggered, interface tun0 is not up and the nftables chain "forwarding\_rule" does not contain text "reject", then add a rule to that chain in order to reject all traffic.  
    if \[ "$ACTION" = ifdown \] && (! ip a s tun0 up) && (! nft list chain inet fw4 forwarding\_rule | grep -q 'reject'); then  
    nft add rule inet fw4 forwarding\_rule reject  
    fi
    

Skript for automatisk gjenoppretting av tilkoblingen

OpenVPN-tilkoblingen kan noen ganger krasje med en loggutskrift som ligner på «couldn’t resolve host…». I dette tilfellet forblir VPN-tunnelen, men tilkoblingen går tapt. For å opprette et skript som gjenoppretter tilkoblingen automatisk, følger du disse trinnene:

  1. Åpne filen «/etc/rc.local» med et tekstredigeringsprogram:
    sudo nano /etc/rc.local
    
  2. Legg til følgende linje:
    /etc/openvpn/reconnect.sh &
    
  3. Opprett filen «reconnect.sh» i mappen «/etc/openvpn» ved å kjøre denne kommandoen:
    sudo nano /etc/openvpn/reconnect.sh
    
  4. I filen skriver du inn 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
    

Tilkoblingsstatus

Etter å ha fulgt disse instruksjonene, bør ruteren koble til med den konfigurerte tilkoblingen. For å sjekke om det var vellykket, går du til NordVPNs hjemmeside – statusen øverst på siden skal vise «Beskyttet».

Hvis du ønsker å koble fra VPN-tilkoblingen, klikker du på stopp-knappen ved siden av NordVPN-alternativet i delen VPN > OpenVPN > OpenVPN-forekomster hvis du fulgte GUI-instruksjonene. Hvis du imidlertid ønsker å koble fra VPN-tilkoblingen, kjører du følgende kommando:

service openvpn stop
Var denne artikkelen nyttig?

Har du fortsatt problemer?

  • Livechat

  • E-postskjema

Chatfunksjonen krever informasjonskapsler. Ved å starte en chat godtar du bruken av dem. Les mer i våre retningslinjer for informasjonskapsler.