Jak możemy Ci pomóc?

Tematy

Jak skonfigurować NordVPN na routerze z oprogramowaniem OpenWrt?

Czy NordVPN działa na routerach z OpenWrt?

Routery z oprogramowaniem układowym OpenWrt obsługują usługi VPN takie jak NordVPN. Z tym że konfiguracja, którą prezentujemy poniżej, nie została przetestowana przez zespół NordVPN – sprawdzili ją i przetestowali nasi wspaniali użytkownicy. Zespół NordVPN chce przede wszystkim podziękować ulmwind, użytkownikowi ze społeczności OpenWrt, za nieustanne wsparcie w przekazywaniu nam aktualnych instrukcji dla OpenWrt.

W tym artykule znajdziesz dwa przewodniki po konfiguracji NordVPN na routerze z oprogramowaniem OpenWrt:

Jeśli napotkasz jakiekolwiek problemy, skontaktuj się z naszym zespołem obsługi klienta! Ten przewodnik jest przeznaczony dla zaawansowanych użytkowników, ale znajdziesz w nim też uproszczone instrukcje.

Instrukcje dla GUI

Z tego przewodnika dowiesz się, jak skonfigurować połączenie z NordVPN na routerach z oprogramowaniem OpenWrt przez interfejs webowy LuCI.

  1. Wejdź do interfejsu LuCI routera, wpisując lokalny adres IP routera w przeglądarce i logując się. Domyślny adres IP to 192.168.1.1, a nazwa użytkownika to root.

    1 (8).png

    Domyślnie nie ma ustawionego hasła, więc możesz zostawić to pole puste, ale gdy się zalogujesz, pojawi się monit o ustawienie hasła.
    image__17_.png

    Aby to zrobić, kliknij System > Administration – tam ustawisz hasło.
  2. Gdy się zalogujesz, wybierz zakładkę System, a następnie Software.

    2 (10).png

  3. Kliknij przycisk Update lists, poczekaj na zakończenie procesu i kliknij Dismiss.
  4. Zainstaluj następujące pakiety, wpisując ich nazwę w polu Filter i klikając Install…
    1. openvpn-openssl
    2. ip-full
    3. luci-app-openvpn

      3 (7).png

      \
      
    
  5. Zapisz i zastosuj ustawienia, klikając Save & Apply, a następnie odśwież stronę routera. Teraz powinna pojawić się nowa zakładka VPN. Kliknij ją i wybierz OpenVPN z menu rozwijanego.
  6. Teraz musisz pobrać pliki konfiguracyjne klienta OpenVPN. Na swoim NordKoncie możesz skorzystać z narzędzia, które poleci najlepszy serwer dla Ciebie.

Wykonaj poniższe kroki, aby znaleźć pliki konfiguracyjne do ręcznego połączenia:

  1. Zaloguj się na swoje NordKonto i kliknij NordVPN.



  2. Przewiń w dół do sekcji Ustawienia zaawansowane (Advanced Settings) i kliknij Skonfiguruj NordVPN ręcznie (Set up NordVPN manually).



  3. Wybierz zakładkę Pliki konfiguracyjne OpenVPN (OpenVPN configuration files).



  4. Znajdź serwer, z którym chcesz się połączyć, wpisując go w okienku Szukaj (Search) lub przewijając w dół, a następnie pobierz go, klikając Pobierz UDP (Download UDP) lub Pobierz TCP (Download TCP).



  5. Podczas łączenia się z OpenVPN i IKEv2 ręcznie musisz użyć Nazwy użytkownika (Username) i Hasła (Password) z zakładki Dane uwierzytelniające (Service credentials).



W tym przewodniku używamy serwera us5104.nordvpn.com.

  1. W sekcji OVPN configuration file upload nazwij połączenie VPN w polu Instance name (na przykładzie nazwa to nordvpn_us). Następnie kliknij przycisk Choose File, znajdź pobrany plik serwera i kliknij Upload.

    5 (1).png

  2. W sekcji OpenVPN instances kliknij przycisk Edit obok utworzonego połączenia VPN.

    7 (2).png

  3. W dolnym polu, w osobnych wierszach, wpisz dane uwierzytelniające do usługi NordVPN, czyli nazwę użytkownika i hasło. nazwa użytkownika
    hasło

    9.png

    Dane uwierzytelniające do NordVPN (nazwę użytkownika i hasło) znajdziesz na pulpicie NordKonta:

Wykonaj poniższe kroki, aby znaleźć dane uwierzytelniające do ręcznej konfiguracji połączenia:

  1. Zaloguj się na swoje NordKonto, kliknij NordVPN, a w sekcji Konfiguracja ręczna (Manual setup) wybierz Dane uwierzytelniające (Service credentials). Tutaj znajdziesz nazwę użytkownika (Username) i hasło (Password) potrzebne do ręcznego połączenia.



  2. Teraz skopiuj ścieżkę do pliku z danymi uwierzytelniającymi – zobaczysz ją nad polem z danymi uwierzytelniającymi – i wklej ją obok wiersza auth-user-pass w sekcji Config file powyżej.
Powinno to wyglądać tak: auth-user-pass /etc/openvpn/nordvpn\_us.auth  


11.png

  1. Zapisz konfigurację, klikając przycisk Save na dole.
  2. Kliknij zakładkę Network na górze strony i wybierz Interfaces.
  3. Utwórz nowy interfejs, naciskając przycisk Add new interface…, i nadaj mu nazwę nordvpntun.
  4. Kliknij menu rozwijane Protocol i wybierz opcję Unmanaged.
  5. W menu rozwijanym Interface wpisz nazwę tun0 w polu -- custom -- na dole i naciśnij Enter.

    13.png

  1. Utwórz interfejs, klikając przycisk Create interface, a następnie zapisz ustawienia, klikając przycisk Save.
  2. Ponownie otwórz zakładkę Network na górze i przejdź do sekcji Firewall.
  3. Kliknij przycisk Add i wprowadź następujące ustawienia:
    1. W polu Name wpisz nazwę vpnfirewall.
    2. W polu Input wybierz Reject.
    3. W polu Output zostaw Accept, a pole Forward powinno mieć opcję Reject.
    4. Zaznacz opcję Masquerading.
    5. Zaznacz opcję MSS clamping.
    6. W menu rozwijanym Covered Networks wybierz nordvpntun.
    7. W menu rozwijanym Allow forward from source zones wybierz lan.
    8. Zapisz konfigurację przyciskiem Save.

      15.png

  1. W sekcji Zones znajdź lan i kliknij przycisk Edit.

    16.png

  1. W menu rozwijanym Allow forward to destination zones zaznacz nordvpntun.

    18.png

  1. Ponownie wejdź do zakładki Network na górze strony i wybierz DHCP and DNS z menu rozwijanego.
  2. W zakładce General Settings znajdź opcję DNS forwardings i wpisz adresy DNS NordVPN. Adresy to: 103.86.96.100 i 103.86.99.100

    20.png

  1. Przejdź do zakładki Resolv and Hosts Files, zaznacz pole Ignore resolve file i kliknij przycisk Save & Apply.

    21.png

  1. Teraz wróć do zakładki VPN > OpenVPN.
  2. W sekcji OpenVPN instances zaznacz opcję Enable obok NordVPN na liście i kliknij przycisk Save & Apply.

    23.png

  1. Naciśnij przycisk Start obok utworzonego połączenia NordVPN, aby połączyć się z serwerem VPN.

Jeśli wszystkie kroki z instrukcji zostały wykonane, połączenie powinno zostać nawiązane. Aby to sprawdzić, wejdź na stronę NordVPN – status na górze strony powinien być Chroniony.

Jeśli chcesz rozłączyć VPN, kliknij przycisk Stop obok opcji NordVPN w sekcji VPN > OpenVPN > OpenVPN instances.

Instrukcje dla CLI

Jeśli szukasz przewodnika dla bardziej zaawansowanych użytkowników, czytaj dalej. Aby korzystać z VPN na routerze z OpenWrt, musisz mieć router z oprogramowaniem OpenWrt oraz włączonym klientem OpenVPN. Główna strona oprogramowania to https://openwrt.org/.

  1. Najpierw musisz wejść do panelu sterowania routera przez SSH, używając adresu IP LAN. Domyślny adres IP to 192.168.1.1, a nazwa użytkownika to root, ale adres IP może być inny, jeśli kiedykolwiek zdarzyło Ci się zmieniać domyślne ustawienia.
  2. Pakiet OpenVPN nie jest dołączony do oprogramowania. Aby go zainstalować, wpisz następujące polecenia: opkg update
    opkg install openvpn-openssl
    opkg install ip-full Dodatkowo możesz zainstalować komponent LuCI konfiguracji OpenVPN, ale jest to opcjonalne. Zrobisz to, wpisując następujące polecenie: opkg install luci-app-openvpn
  3. Gdy zainstalujesz pakiet OpenVPN, możesz ustawić, by uruchamiał się automatycznie po każdym uruchomieniu routera. Wpisz następujące polecenie: /etc/init.d/openvpn enable
  4. Teraz musisz pobrać pliki konfiguracyjne serwera.

Wykonaj poniższe kroki, aby znaleźć pliki konfiguracyjne do ręcznego połączenia:

  1. Zaloguj się na swoje NordKonto i kliknij NordVPN.



  2. Przewiń w dół do sekcji Ustawienia zaawansowane (Advanced Settings) i kliknij Skonfiguruj NordVPN ręcznie (Set up NordVPN manually).



  3. Wybierz zakładkę Pliki konfiguracyjne OpenVPN (OpenVPN configuration files).



  4. Znajdź serwer, z którym chcesz się połączyć, wpisując go w okienku Szukaj (Search) lub przewijając w dół, a następnie pobierz go, klikając Pobierz UDP (Download UDP) lub Pobierz TCP (Download TCP).



  5. Podczas łączenia się z OpenVPN i IKEv2 ręcznie musisz użyć Nazwy użytkownika (Username) i Hasła (Password) z zakładki Dane uwierzytelniające (Service credentials).



  6. Dla przykładu użyliśmy serwera uk2054.nordvpn.com, ale Ty najlepiej użyj serwera polecanego na NordKoncie. Aby pobrać plik serwera, wybierz kraj, z którym chcesz się połączyć, kliknij Pokaż dostępne protokoły (Show available protocols), kliknij Uzyskaj konfigurację (Download config) prawym przyciskiem myszy dla OpenVPN TCP lub OpenVPN UDP i wybierz Kopiuj adres linku (Copy link address). Następnie wróć do sesji SSH i wpisz następujące polecenie: wget -P /etc/openvpn https://downloads.nordcdn.com/configs/files/ovpn_udp/servers/uk2054.nordvpn.com.udp.ovpn Pamiętaj, żeby wpisać skopiowany link dla wybranego pliku serwera. Za pomocą tego polecenia plik konfiguracyjny zostanie pobrany do katalogu /etc/openvpn. Alternatywnie możesz pobrać plik konfiguracyjny serwera na innym urządzeniu i przesłać go do routera OpenWrt za pomocą alternatywnych metod, takich jak protokoły SCP lub SFTP. Starsze wersje OpenWrt:
    Pobierz archiwum z tej lokalizacji: https://downloads.nordcdn.com/configs/archives/certificates/servers.zip. W pobranym archiwum znajdziesz odpowiedni pliki z rozszerzeniami .crt i .key. Te pliki są specyficzne dla każdego serwera VPN.
  7. OpenVPN dla NordVPN wymaga wpisywania danych uwierzytelniających do usługi NordVPN za każdym razem, gdy OpenVPN się uruchamia. Wprowadzimy jednak zmiany w konfiguracji, aby dane były podawane automatycznie. Najpierw, aby ułatwić cały proces, musisz zainstalować edytor tekstu nano, wpisując następujące polecenie: opkg install nano Możesz też użyć wbudowanego edytora tekstu vi. Więcej informacji na temat edytorów tekstu znajdziesz w następującym artykule: https://openwrt.org/docs/guide-user/base-system/user.beginner.cli. Teraz otwórz pobrany plik konfiguracyjny serwera w edytorze tekstu nano. W naszym przykładzie polecenie wygląda tak: nano /etc/openvpn/uk2054.nordvpn.com.udp.ovpn Następnie dodaj słowo secret do ciągu auth-user-pass. Gdy to zrobisz, wiersz powinien wyglądać tak: auth-user-pass secret Teraz musisz utworzyć plik o nazwie secret z danymi uwierzytelniającymi do NordVPN. W tym celu wykonaj następujące polecenie: nano /etc/openvpn/secret W ten sposób utworzysz nowy plik, który otworzy się w edytorze tekstu nano. W pierwszym wierszu pliku wpisz nazwę użytkownika do usługi NordVPN, a w drugim – hasło. Dane uwierzytelniające do NordVPN (nazwę użytkownika i hasło) znajdziesz na pulpicie NordKonta:

Wykonaj poniższe kroki, aby znaleźć dane uwierzytelniające do ręcznej konfiguracji połączenia:

  1. Zaloguj się na swoje NordKonto, kliknij NordVPN, a w sekcji Konfiguracja ręczna (Manual setup) wybierz Dane uwierzytelniające (Service credentials). Tutaj znajdziesz nazwę użytkownika (Username) i hasło (Password) potrzebne do ręcznego połączenia.



  2. Skonfiguruj OpenVPN za pomocą pobranego pliku konfiguracyjnego na jeden z dwóch sposobów:
    1. Zmień rozszerzenie pliku z .ovpn na .conf, dzięki czemu OpenVPN będzie go znajdować automatycznie po rozszerzeniu. W tym celu możesz użyć polecenia mv: mv /etc/openvpn/uk2054.nordvpn.com.udp.ovpn /etc/openvpn/uk2054.nordvpn.com.udp.conf
    2. Określ nazwę pliku w /etc/config/openvpn, używając następujących poleceń uci: 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 Gdy to zrobisz, plik /etc/config/openvpn powinien zawierać następujące dodatkowe ciągi: config openvpn 'nordvpn'
      option enabled '1'
      option config '/etc/openvpn/uk2054.nordvpn.com.udp.ovpn' Możesz to sprawdzić, wpisując następujące polecenie: tail /etc/config/openvpn Możesz też zmienić rozszerzenie pliku z .ovpn na .conf i określić to w pliku /etc/config/openvpn – jednak w takim przypadku OpenVPN tylko raz uruchomi się z tego pliku konfiguracyjnego.\
      
    
  3. Utwórz nowy interfejs sieciowy, wykonując następujące polecenia: uci set network.nordvpntun=interface
    uci set network.nordvpntun.proto='none'
    uci set network.nordvpntun.ifname='tun0'
    uci commit network Jeśli wszystkie kroki zostały wykonane prawidłowo, plik /etc/config/network powinien zawierać następujące dodatkowe ciągi: config interface 'nordvpntun'
    option proto 'none'
    option ifname 'tun0' Możesz to sprawdzić poleceniem tail /etc/config/network.
  4. Utwórz nową strefę zapory sieciowej i dodaj regułę przekazywania z LAN do VPN, wpisując następujące polecenia: 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 Jeśli wszystkie kroki zostały wykonane prawidłowo, plik /etc/config/firewall powinien zawierać następujące dodatkowe ciągi: 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' Możesz to sprawdzić poleceniem tail -13 /etc/config/firewall. Wyświetli się ostatnich 13 wierszy, które powinny zawierać wyżej wymienione ciągi.
  5. Teraz musisz skonfigurować serwery DNS. Najprościej jest użyć DNS NordVPN dla interfejsu WAN routera. Aby dodać DNS NordVPN, wykonaj następujące polecenia:
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  
  
_Jeśli po wykonaniu polecenia _uci del network.wan.dns_ pojawi się komunikat błędu o treści __uci: Entry not found__, możesz go zignorować._  
  
Plik /etc/config/network powinien zawierać sekcję wan z dodanymi trzema ciągami na dole:  
  
config interface 'wan'  
<...>  
option peerdns '0'  
list dns '103.86.96.100'  
list dns '103.86.99.100'  
  
Możesz to sprawdzić poleceniem cat /etc/config/network, wyszukując inferfejs wan w wynikach.  
  
Możesz też dodać różne adresy DNS, np. od Google, wpisując następujące polecenia:  
  
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  
  
Dodane ciągi powinny być podobne do poprzednich.  
 

(Opcjonalnie) Aby zapobiec wyciekom ruchu w przypadku rozłączenia tunelu VPN, otwórz plik /etc/firewall.user w edytorze tekstu i dodaj następujące ciągi:

# 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

Dodatkowo musisz utworzyć plik o nazwie 99-prevent-leak w folderze /etc/hotplug.d/iface, wykonując polecenie nano /etc/hotplug.d/iface/99-prevent-leak i dodając do pliku następujące ciągi:

#!/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

W niektórych przypadkach połączenie OpenVPN może zostać przerwane z komunikatem typu couldn’t resolve host…. W takim przypadku tunel VPN nadal działa, ale bez połączenia. Aby automatycznie połączyć się ponownie, otwórz plik /etc/rc.local w edytorze tekstu i dodaj następujący wiersz:

/etc/openvpn/reconnect.sh &

Następnie utwórz plik reconnect.sh w katalogu /etc/openvpn. Możesz to zrobić, wpisując polecenie nano /etc/openvpn/reconnect.sh.

W pliku dodaj następujące ciągi:

#!/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

Jeśli wszystkie kroki z instrukcji zostały wykonane, połączenie powinno zostać nawiązane. Aby to sprawdzić, wejdź na stronę NordVPN – status na górze strony powinien być Chroniony.

Jeśli chcesz rozłączyć się z VPN, wykonaj następujące polecenie:

service openvpn stop

Dostępne również w innych językach: Dansk, Deutsch, English, Español, Italiano, 日本語, 한국어, Norsk, Português Brasileiro, Svenska, 繁體中文
Czy ten artykuł był pomocny?
Dzięki!