W tym przewodniku pokazujemy, jak wykorzystać pakiety strongSwan do zarządzania połączeniem IKEv2/IPSec w systemie Linux.
Nie chcesz konfigurować VPN samodzielnie? Pobierz aplikację NordVPN na Linux, a wystarczy, że tylko zainstalujesz aplikację, zalogujesz się i wybierzesz serwer.
Przewodnik bazuje na dystrybucji Debian, ale instrukcje powinny być podobne w innych dystrybucjach.
1. Najpierw sprawdź, czy masz wszystkie zależności na swoim urządzeniu. Możesz to zrobić, wpisując następujące polecenie:
sudo apt-get update && apt-get upgrade
2. Pobierz następujące pakiety:
sudo apt-get install strongswan-charon
3. Edytuj plik ipsec.secrets, wpisując swoją nazwę użytkownika i hasło do usługi NordVPN.
(Uwaga: skopiowanie polecenia może wywołać błędy.
Najlepiej wpisz je ręcznie.)
sudo nano /etc/ipsec.secrets
4. W miejsce Username wpisz swoją nazwę użytkownika w usłudze NordVPN, a w miejsce your password – hasło do NordVPN. Hasło musisz wpisać w cudzysłowie (jak na przykładzie). Zwróć uwagę na spacje po Username, po „:” i po EAP.
Wykonaj poniższe kroki, aby znaleźć dane uwierzytelniające do ręcznej konfiguracji połączenia:
-
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.
5. Ponownie użyj preferowanego edytora tekstu, aby otworzyć plik /etc/ipsec.conf. Nie zapomnij o uprawnieniach roota, ponieważ plik jest chroniony przed edycją przez użytkowników innych niż root.
sudo nano /etc/ipsec.conf
6. Konfiguracja powinna wyglądać następująco:
conn NordVPN
keyexchange=ikev2
dpdaction=clear
dpddelay=300s
eap_identity="USERNAME"
leftauth=eap-mschapv2
left=%defaultroute
leftsourceip=%config
right=SERVER
rightauth=pubkey
rightsubnet=0.0.0.0/0
rightid=%SERVER
rightca="C = PA, O = NordVPN, CN = NordVPN Root CA"
type=tunnel
auto=add
W miejsce SERVER wpisz nazwę hosta wybranego serwera, a USERNAME zamień na swoją nazwę użytkownika w NordVPN.
Na potrzeby tego samouczka użyliśmy serwera US #1019, ale Ty połącz się z serwerem wybranym dla Ciebie.
Wykonaj poniższe kroki, aby znaleźć najlepszy serwer dla Twojego połączenia:
-
Zaloguj się na swoje
NordKonto i
kliknij NordVPN.
-
Przewiń w dół do sekcji
Ustawienia zaawansowane (Advanced Settings) i kliknij
Skonfiguruj NordVPN ręcznie (Set up NordVPN manually).
-
Wybierz zakładkę
Zalecany serwer (Server recommendation). Wyświetli się
najlepszy serwer dla Twojej lokalizacji.
-
Gdy naciśniesz Zaawansowane filtry (Advanced filters),
możesz dodatkowo dostosować zalecane serwery, wybierając
Typ serwera (Server type) i
Protokół bezpieczeństwa (Security protocol).
-
Pod adresem serwera i pod opcją
Dostępne protokoły (Available protocols) wybierz
IKEv2/IPSec.
-
W nowym oknie skopiuj nazwę hosta serwera i użyj jej
podczas ręcznej konfiguracji połączenia IKEv2.
-
Podczas łączenia się z IKEv2 ręcznie musisz użyć
Nazwy użytkownika (Username) i
Hasła (Password) z zakładki
Dane uwierzytelniające (Service credentials).
\
right=us1019.nordvpn.com
8. Wejdź do pliku /etc/strongswan.d/charon/constraints.conf.
sudo nano /etc/strongswan.d/charon/constraints.conf
W pliku zmień load = yes na load = no.
9. Pobierz certyfikat RSA NordVPN.
sudo wget https://downloads.nordcdn.com/certificates/root.pem -O /etc/ipsec.d/cacerts/NordVPN.pem
10. Teraz musisz zrestartować ipsec, aby ponownie załadować wszystkie pliki konfiguracyjne.
sudo ipsec restart
Jeśli zrobisz literówki w pliku /etc/ipsec.conf, wyświetli się odpowiedni komunikat, gdy usługa będzie próbowała się uruchomić.
11. Teraz możesz się połączyć, wpisując następujące polecenie:
sudo ipsec up NordVPN
Powinien wyświetlić się następujący komunikat: „Connection NordVPN has been established successfully”.
Uwaga: jeśli po wpisaniu polecenia ipsec up NordVPN wyświetla się błąd No config named 'NordVPN', zajrzyj do tego artykułu.
12. Aby się rozłączyć, wpisz:
sudo ipsec down NordVPN
13. Jeśli masz problemy z konfiguracją, pobierz logi i wyślij je do naszego działu obsługi klienta:
sudo cat /var/log/syslog