Jak skonfigurować VPN oparty na IPSec z StrongSwan na Debian i Ubuntu

Jak skonfigurować VPN oparty na IPSec z StrongSwan na Debian i Ubuntu

StrongSwan to implementacja VPN, która działa w Linux, FreeBsd, OS X, Windows, Androida i IOS opartej na IOS, w pełni flatform. To przede wszystkim demon, który wspiera Wymiana kluczy internetowych protokoły (Ikev1 I Ikev2) w celu ustanowienia stowarzyszeń bezpieczeństwa (Sa) między dwoma rówieśnikami.

W tym artykule opisano, jak skonfigurować stronę na miejsce IPsec VPN bramy za pomocą Strongswan NA Ubuntu I Debian serwery. Według miejsca na miejsce mamy na myśli, że każda brama bezpieczeństwa ma za sobą pod-net. Poza tym rówieśnicy uwierzytelniają się nawzajem za pomocą klawisza wstępnego (Psk).

Środowisko testowe

Pamiętaj, aby zastąpić następujące adresy IPS na rzeczywiste IPS, aby skonfigurować środowisko.

Site 1 Gateway (Tecmint-Devgateway)

OS 1: Debian lub Ubuntu Public IP: 10.20.20.1 prywatny IP: 192.168.0.101/24 Prywatna podsieć: 192.168.0.0/24 

Site 2 Gateway (Tecmint-Prodgateway)

OS 2: Debian lub Ubuntu Public IP: 10.20.20.3 prywatny IP: 10.0.2.15/24 Prywatna podsieć: 10.0.2.0/24 

Krok 1: Włączanie przekazywania pakietów jądra

1. Najpierw musisz skonfigurować jądro, aby włączyć przekazywanie pakietów, dodając odpowiednie zmienne systemowe /etc/sysctl.conf plik konfiguracyjny na obu bramach bezpieczeństwa.

$ sudo vim /etc /sysctl.conf 

Poszukaj następujących wierszy i odbij je i ustaw ich wartości, jak pokazano (przeczytaj komentarze w pliku, aby uzyskać więcej informacji).

internet.IPv4.ip_forward = 1 netto.IPv6.conf.Wszystko.przekazanie = 1 netto.IPv4.conf.Wszystko.Accept_redirects = 0 netto.IPv4.conf.Wszystko.send_redirects = 0 

2. Następnie załaduj nowe ustawienia, uruchamiając następujące polecenie.

$ sudo sysctl -p 
Załaduj ustawienia jądra Sysctl

3. Jeśli masz włączoną usługę zapory UFW, musisz dodać następujące zasady do /etc/ufw/wcześniej.zasady plik konfiguracyjny tuż przed regułami filtra w obu bramkach bezpieczeństwa.

Site 1 Gateway (Tecmint-Devgateway)

*Nat: Postrouting Zaakceptuj [0: 0] -A Postrouting -s 10.0.2.0/24 -d 192.168.0.0/24 -J Masquerade Commit 

Site 2 Gateway (Tecmint-Prodgateway)

*Nat: Postrouting Akceptuj [0: 0] -A Postrouting -s 192.168.0.0/24 -d 10.0.2.0/24 -J Masquerade Commit 

4. Po dodaniu reguł zapory, a następnie zastosuj nowe zmiany, ponownie uruchamianie UFW jak pokazano.

$ sudo ufw wyłącz $ sudo ufw 

Krok 2: Instalowanie StrongSwan w Debian i Ubuntu

5. Zaktualizuj pamięć podręczną pakietu na obu bramach bezpieczeństwa i zainstaluj Strongswan pakiet za pomocą APT Package Manager.

$ sudo appt aktualizacja $ sudo apt instontuj StrongSwan 

6. Po zakończeniu instalacji skrypt instalatora uruchomi Strongswan serwis i umożliwia automatycznie uruchamianie w rozruchu systemowym. Możesz sprawdzić jego status i czy jest włączony przy użyciu następującego polecenia.

$ sudo systemCtl Status StrongSwan.Service $ sudo Systemctl IS SIGHTLEATL SIGHSWAN.praca 

Krok 3: Konfigurowanie bram bezpieczeństwa

7. Następnie musisz skonfigurować bramy bezpieczeństwa za pomocą /etc/ipsec.conf plik konfiguracyjny.

Site 1 Gateway (Tecmint-Devgateway)

$ sudo cp /etc /ipsec.conf /etc /ipsec.conf.orig $ sudo nano /etc /ipsec.conf 

Skopiuj i wklej następującą konfigurację w pliku.

konfiguracja konfiguracji CharondeBug = "all" unikalneds = Tak conn devgateway-to-prodgateway type = tunel auto = start keyexchange = ikev2 authby = secret lewy = 10.20.20.1 LeftSubnet = 192.168.0.101/24 Right = 10.20.20.3 Rightubnet = 10.0.2.15/24 Ike = AES256-SHA1-MODP1024! ESP = AES256-SHA1! agresywne = brak keyingTries =%na zawsze Ikelifere = 28800S LifeTime = 3600S dpddelay = 30s dpdTimeout = 120S dpdaction = restart 

Site 2 Gateway (Tecmint-Prodgateway)

$ sudo cp /etc /ipsec.conf /etc /ipsec.conf.orig $ sudo nano /etc /ipsec.conf 

Skopiuj i wklej następującą konfigurację do pliku.

konfiguracja konfiguracji CharondeBug = "all" unikalneds = Tak Conn Prodgateway-to-devgateway type = tunel auto = start keyexchange = ikev2 authby = secret left = 10.20.20.3 leftsubnet = 10.0.2.15/24 Right = 10.20.20.1 Rightubnet = 192.168.0.101/24 Ike = AES256-SHA1-MODP1024! ESP = AES256-SHA1! agresywne = brak keyingTries =%na zawsze Ikelifere = 28800S LifeTime = 3600S dpddelay = 30s dpdTimeout = 120S dpdaction = restart 

Oto znaczenie każdego parametru konfiguracji:

  • Konfiguracja konfiguracji - Określa ogólne informacje konfiguracyjne dla IPSec, które dotyczą wszystkich połączeń.
  • Charondebug - określa, ile należy zarejestrować wyjścia debugowania Charona.
  • unikalneds - Określa, czy konkretny identyfikator uczestnika powinien być unikalny.
  • Conn Prodgateway-to-Devgateway - definiuje nazwę połączenia.
  • typ - definiuje typ połączenia.
  • automatyczny - Jak obsługiwać połączenie, gdy ipsec zostanie uruchomiony lub wznowiony.
  • KeyExchange - definiuje wersję protokołu IKE do użycia.
  • Authby - określa, w jaki sposób rówieśnicy powinni się uwierzytelniać.
  • lewy - Definiuje adres IP interfejsu publicznego lewego uczestnika.
  • leftsubnet - stwierdza prywatną podsieć za lewym uczestnikiem.
  • Prawidłowy - Określa adres IP odpowiedniego interfejsu sieci publicznej.
  • Prawoubnet - stwierdza prywatną podsieć za lewym uczestnikiem.
  • Ike - Definiuje listę algorytmów szyfrowania/uwierzytelniania IKE/ISAKMP SA. Możesz dodać listę oddzieloną przecinkami.
  • esp - definiuje listę algorytmów szyfrowania/uwierzytelniania, które mają być używane do połączenia. Możesz dodać listę oddzieloną przecinkami.
  • agresywny - stwierdza, czy użyć trybu agresywnego czy głównego.
  • KeyingTries - stwierdza liczbę prób, które należy podjąć w celu negocjowania połączenia.
  • IkelifeTime - stwierdza, jak długo powinien trwać kanał połączenia przed renegocjowaniem.
  • dożywotni - określa, jak długo powinien trwać konkretny przypadek połączenia, od udanych negocjacji po wygaśnięcie.
  • DPDDELAY - Określa interwał czasowy, z którymi komunikaty R_U_THE/WYMIANY są wysyłane do rówieśnika.
  • DPDTimeout - Określa przedział limitu czasu, po którym wszystkie połączenia z rówieśnikiem są usuwane w przypadku bezczynności.
  • dpdaction - Definiuje sposób, w jaki sposób korzystać z protokołu Dead Peer Detection (DPD) do zarządzania połączeniem.

Aby uzyskać więcej informacji na temat powyższych parametrów konfiguracyjnych, przeczytaj ipsec.conf Strona Man, uruchamiając polecenie.

$ man ipsec.conf 

Krok 4: Konfigurowanie PSK do uwierzytelnienia peer-to-peer

8. Po skonfigurowaniu obu bram bezpieczeństwa wygeneruj bezpieczny Psk do użycia przez rówieśników za pomocą następującego polecenia.

$ head -c 24 /dev /urandom | Base64 
Wygeneruj klawisz PSK

9. Następnie dodaj Psk w /etc/ipsec.tajniki Plik na obu bramach.

$ sudo vim /etc /ipsec.tajniki 

Skopiuj i wklej następujący wiersz.

------- Site 1 Gateway (Tecmint-Devgateway) ------- 10.20.20.1 10.20.20.3: PSK "qlgltvqofqvglswp75fetlgtwn3hu0ku6c5hitko6ac =" ------- Site 2 Gateway (TecMint-Prodgateway) ------- 10.20.20.3 10.20.20.1: PSK "qlgltvqofqvglswp75fetlgtwn3hu0ku6c5hitko6ac =" 

10. Uruchom ponownie Ipsec Zaprogramuj i sprawdź jego status, aby wyświetlić połączenia.

$ sudo ipsec restart $ sudo ipsec status 
Zobacz status połączenia IPSec

11. Na koniec sprawdź, czy możesz uzyskać dostęp do prywatnych pod-sieci.

$ ping 192.168.0.101 $ ping 10.0.2.15 
Sprawdź konfigurację VPN na miejscu

12. Poza tym możesz zatrzymać i uruchomić IPSec, jak pokazano.

$ sudo ipsec stop $ sudo ipsec start 

13. Aby dowiedzieć się więcej o poleceń IPSec, aby ręcznie wyświetlać połączenia i więcej, zobacz stronę pomocy IPSec.

$ ipsec - -help 

To wszystko! W tym artykule opisaliśmy, jak skonfigurować VPN IPSec witryny i witryny Strongswan NA Ubuntu I Debian serwery, w których obie bramy bezpieczeństwa zostały skonfigurowane do uwierzytelniania się za pomocą Psk. Jeśli masz jakieś pytania lub przemyślenia do podzielenia się, skontaktuj się z nami za pośrednictwem poniższego formularza opinii.