Jak zainstalować VPN WireGuard na CentOS 8

Jak zainstalować VPN WireGuard na CentOS 8

WireGuard to popularny protokół komunikacji typu open-source, który służy do tworzenia bezpiecznego i szybkiego wirtualnego tunelu sieci prywatnej. Ten VPN został zaprojektowany do użytku w jądrze Linux. WireGuard to lekka VPN, która zapewnia użytkownikom niezwykle szybkie prędkości.

W tym artykule pokazuje, jak zainstalować i skonfigurować WireGuard w systemie CentOS 8. Instalacja i konfiguracja WireGuard są znacznie łatwiejsze niż już istniejące VPN, takie jak OpenVPN, i jest to główny powód jego rosnącej popularności w społeczności Linux.

Przegląd

Ten artykuł składa się z dwóch sekcji:

  • W pierwszej sekcji zainstalujemy i skonfigurujemy maszynę CentOS 8, która będzie działać jako Serwer VPN WireGuard.
  • W drugiej sekcji zainstalujemy i skonfigurujemy maszynę CentOS 8, która będzie działać jako Klient WireGuard VPN.

Instalowanie i konfigurowanie przewodów na serwerze CentOS 8

W tej sekcji skonfigurujemy komputer CentOS 8, który będzie działał jako serwer, instalując WireGuard.

Krok 1: Dodaj repozytoria Epel i Elrepo

Aby rozpocząć instalowanie przewodu w CentOS 8, najpierw dodaj repozytoria EPEL i ELREPO, aby zainstalować moduły jądra i narzędzia przewodu.

$ sudo dnf instaluj epel elrepo-release -y

Teraz, po zainstalowaniu wymaganych repozytoriów, zainstaluj moduły jądra i narzędzia do przewodu.

Krok 2: Zainstaluj moduły jądra i narzędzia do przewodu

Moduły jądra i narzędzia do przewodu można zainstalować szybko z repozytoriów EPEL i ELREPO, wydając następujące polecenie:

$ sudo dnf instaluj narzędzia kmod-wireguard narzędzia

Gdy zostaniesz poproszony o pozwolenie na import i dodanie klawiszy GPG do systemu CentOS 8, pozwól temu działać, wpisując „Y” i trafienie „Enter Enter."

Po pomyślnym zainstalowaniu narzędzi do WireGuard wykonamy teraz niektóre konfiguracje.

Krok 3: Twórz klucze publiczne i prywatne

Najpierw utworzymy nowy katalog „/etc/WireGuard”, abyśmy mogli skonfigurować serwer VPN w katalogu. Aby utworzyć nowy katalog „/etc/wireGuard” w systemie Centos 8, wydaj następujące polecenie.

sudo mkdir /itp

Po utworzeniu katalogu utwórz klucze publiczne i prywatne za pomocą narzędzi „WG” i „Tee”. Polecenie do tworzenia kluczy prywatnych i publicznych jest następujące.

$ WG Genkey | sudo tee/itp./WireGuard/PrivateKey | WG Pubkey | sudo tee/itp./WireGuard/Publickey

Wygenerowany klawisz zostanie wydrukowany po wykonaniu powyższego polecenia.

Krok 4: Konfiguracja urządzenia tunelowego do routingu ruchu VPN

Aby skonfigurować urządzenie, utwórz plik konfiguracyjny w katalogu „/ETC/WireGuard” i otwórz plik za pomocą edytora Nano.

Przed utworzeniem pliku konfiguracyjnego uzyskaj klucz prywatny za pomocą następującego polecenia.

$ sudo cat/etc/wireGuard/privateKey

Zapisz gdzieś kluczowy; Będziesz potrzebował tego klucza w późniejszym pliku konfiguracyjnym.

Teraz utwórz „WG0.plik conf ”.

$ sudo nano/etc/wireGuard/WG0.conf

Dodaj zawartość podaną poniżej do „/etc/WireGuard/WG0.plik conf ”.

[Interfejs]
## Adres IP serwera VPN ##
Adres = 192.168.18.200/24
## Zapisz konfigurację, gdy nowy klient doda ##
Saveconfig = true
## numer portu VPN Server ##
Słuchanie = 51820
## klucz prywatny serwera VPN ##
Privatekey = server_private_key
## polecenie do wykonania przed uruchomieniem interfejsu ##
PostUp = Firewall-CMD --zone = public --add-port 51820/udp && Firewall-CMD --zone = public --add-Masquerade
## polecenie do wykonania przed wyłączeniem interfejsu ##
Postdown = Firewall-CMD--Remove-Port 51820/Udp --zone = public && Firewall-Cmd--Remove-Masquerade --zone = public

Ten plik konfiguracyjny zawiera następujące kluczowe warunki:

  • Adres - prywatny adres IP interfejsu (WG0).
  • Saveconfig = True - zapisuje stan interfejsu podczas ponownego uruchomienia lub wyłączania serwera.
  • Słuchanie - Port, w którym słucha demon wirus.
  • Prywatny klucz - Klucz, który właśnie wygenerowaliśmy.
  • Wywiesić ogłoszenie - To polecenie zostanie wykonane przed wystrzeleniem interfejsu
  • Poddddown - To polecenie zostanie wykonane przed wyłączeniem interfejsu.

Teraz, gdy całkiem dobrze rozumiesz plik konfiguracyjny, możesz zapisać plik i wyjść za pomocą skrótów klawiatury (Ctrl + S) i (Ctrl + X).

Krok 5: Ustaw uprawnienia pliku konfiguracji i „privateKey”

Teraz sprawimy, że serwer VPN jest nieco bezpieczniejszy. Podstawowy użytkownik nie powinien mieć uprawnień do odczytania pliku konfiguracyjnego i pliku „privateKey”. Aby zapewnić dostęp do tych plików, zmienimy tryb tych dwóch plików na 600. Polecenie ustawiania uprawnień podano poniżej.

$ sudo chmod 600/etc/wireGuard/privateKey
$ sudo chmod 600/etc/WireGuard/WG0.conf

Po sfinalizowaniu uprawnień zwolnimy interfejs (WG0) za pomocą narzędzia wiersza polecenia WG-Quick.

Krok 6: Rozpocznij interfejs

Aby zwolnić interfejs, wydaj poniższe polecenie:

$ sudo wg-quick up WG0

Jeśli uzyskałeś dane wyjściowe pokazane na powyższym zrzucie ekranu, pomyślnie uruchomiłeś interfejs. Teraz sprawdzimy status interfejsu.

$ sudo wg

Włącz interfejs, aby automatycznie uruchomić interfejs na rozruchu serwera CentOS 8.

$ sudo systemctl Włącz WG-QUICK@WG0

Na tym etapie konfiguracja serwera została zakończona. Teraz, jeśli chcesz skonfigurować ten serwer VPN dla NAT, musisz włączyć przekazywanie IPv4.

Krok 7: Włącz przekazywanie IPv4

Aby umożliwić przekazanie IPv4 dla NAT, utwórz „99-custom.plik conf ”w„/etc/sysctl.D ”katalog za pomocą edytora Nano.

$ sudo nano /etc /sysctl.D/99-Custom.conf

Dodaj następującą zawartość do „/etc/sysctl.D/99-Custom.konf ”

## do włączenia przekazywania IPv4 ##
internet.IPv4.ip_forward = 1

Aby włączyć przekazywanie IPv6, dodaj następującą zawartość do „/etc/sysctl.D/99-Custom.Plik conf ”, również.

## do włączenia przekazywania IPv6 ##
internet.IPv6.conf.Wszystko.przekazanie = 1

Po włączeniu przekazywania IPv4 zapisz plik i wyjdź za pomocą skrótów (Ctrl + S) i (Ctrl + X).

Przejdźmy teraz, aby skonfigurować maszynę klienta WireGuard.

Instalacja i konfiguracja VPN Wireguard na kliencie Centos 8

W tej sekcji skonfigurujemy maszynę CentOS 8, która będzie działać jako klient. Proces instalowania i konfigurowania klienta VPN WireGuard będzie prawie taki sam, jak dla serwera VPN WireGuard.

Krok 1: Dodaj repozytoria Epel i Elrepo

Najpierw dodamy repozytoria EPEL i ELREPO, aby zainstalować moduły jądra i narzędzia do przewodu:

$ sudo dnf instaluj epel elrepo-release -y

Teraz, po zainstalowaniu wymaganych repozytoriów, zainstalujemy moduły jądra i narzędzia do przewodu.

Krok 2: Zainstaluj moduły jądra i narzędzia do przewodu

Moduły jądra i narzędzia do przewodów można zainstalować z repozytoriów EPEL i ELREPO, wydając następujące polecenie.

$ sudo dnf instaluj narzędzia kmod-wireguard narzędzia

Kiedy zostaniesz poproszony o pozwolenie na import i dodanie klawiszy GPG do systemu CentOS 8, zezwól na zmiany, wpisując „Y” i trafienie „Wprowadź„ Enter."

Po pomyślnym zainstalowaniu narzędzi do przewodu, komputer klienta Centos 8 musi być również skonfigurowany.

Krok 3: Twórz klucze publiczne i prywatne

W tym etapie utworzymy nowy katalog „/etc/wireGuard” na komputerze klienckim. Aby utworzyć nowy katalog „/etc/wireGuard” w systemie CentOS 8, wprowadź następujące polecenie.

sudo mkdir /itp

Po utworzeniu katalogu utwórz klucze publiczne i prywatne za pomocą narzędzi „WG” i „Tee”. Poniżej podano polecenie tworzenia prywatnych i publicznych.

$ WG Genkey | sudo tee/itp./WireGuard/PrivateKey | WG Pubkey | sudo tee/itp./WireGuard/Publickey

Wygenerowane klucze zostaną teraz wydrukowane.

Krok 4: Konfiguracja do routingu ruchu VPN

W tym etapie utworzymy plik konfiguracyjny w katalogu „/etc/wireGuard” i otworzymy go za pomocą edytora Nano.

Przed utworzeniem pliku konfiguracyjnego uzyskaj klucz prywatny za pomocą następującego polecenia.

$ sudo cat/etc/wireGuard/privateKey

Zapisz gdzieś kluczowy; Będziesz go potrzebować później w pliku konfiguracyjnym.

Teraz utwórz „WG0.plik conf ”.

$ sudo nano/etc/wireGuard/WG0.conf

Dodaj zawartość podaną poniżej do „/etc/WireGuard/WG0.plik conf ”

[Interfejs]
## klucz prywatny klienta VPN ##
Privatekey = 8d8pulqcbuw+51wpe3q7kutgxqhuvsy+a+dbgamb+3o =
## Adres IP klienta VPN ##
Adres = 192.168.18.201/24
[Rówieśnik]
## Klucz publiczny Centos 8 VPN Server ##
Publickey = vwndj4ob7zjwc/7uom ++ oldrbaxmpsr2yd0cl3skui =
## Set ACL ##
Dozwolone = 0.0.0.0/0
## Adres IP i port CentOS 8 VPN Server ##
Punkt końcowy = 192.168.18.200: 51820

Plik konfiguracyjny zawiera następujące kluczowe warunki:

  • Prywatny klucz - Klucz wygenerowany na komputerze klienckim.
  • Adres - adres IP interfejsu (WG0).
  • Klucz publiczny - klucz publiczny komputera serwera VPN, do którego chcemy się połączyć.
  • Dozwolone - Wszystkie dozwolone adresy IP przepływu ruchu za pomocą VPN.
  • Punkt końcowy - Podamy adres IP i numer portu komputera serwerowego CentOS 8, do którego chcemy się połączyć.

Skonfigurowaliśmy również komputer klienta. Zapisz plik i wyjdź za pomocą skrótów klawiatury (Ctrl + S) i (Ctrl + X).

Krok 5: Ustaw uprawnienia pliku konfiguracji i „privateKey”

Teraz zmienimy tryb i ustawym uprawnienia pliku konfiguracyjnego i pliku „privateKey” na 600. Wprowadź następujące polecenie, aby ustawić uprawnienia.

$ sudo chmod 600/etc/wireGuard/privateKey
$ sudo chmod 600/etc/WireGuard/WG0.conf

Teraz, gdy sfinalizowaliśmy uprawnienia, możemy zwolnić interfejs (WG0) za pomocą narzędzia wiersza polecenia „WG-Quick”.

Krok 6: Rozpocznij interfejs

Aby zwolnić interfejs, wydaj poniższe polecenie:

$ sudo wg-quick up WG0

Z powodzeniem rozpoczęliśmy interfejs. Następnie sprawdzimy status interfejsu.

$ sudo wg

Włącz interfejs, aby automatycznie uruchomić interfejs na rozruchu serwera CentOS 8.

$ sudo systemctl Włącz WG-QUICK@WG0

Na tym etapie klient jest również skonfigurowany.

Krok 7: Dodaj adres IP i klucz publiczny klienta do serwera Centos 8

Ostatnim krokiem jest dodanie adresu IP i klucza publicznego komputera klienta VPN do pliku konfiguracyjnego komputera serwera VPN Centos 8.

Wróć do komputera serwerowego i dodaj następującą zawartość do „/etc/WireGuard/WG0.plik conf ”.

[Rówieśnik]
## klucz publiczny klienta VPN ##
Publickey = dmfo9pirb315slxogxxxxtmrbwaqpy07c57evpks1ikza =
## Adres IP klienta VPN ##
Dozwolone = 192.168.10.2/32

Po zaktualizowaniu pliku konfiguracyjnego serwera VPN zapisz plik i wyjdź za pomocą skrótów klawiatury (Ctrl + S) i (Ctrl + X).

Tunel został już ustanowiony, a cały ruch zostanie przekazany przez serwer VPN VPN Centos 8.

Krok 8: Sprawdź połączenie tunelu

Aby sprawdzić, czy serwer VPN VPN CentOS 8 został zainstalowany i skonfigurowany, wydaj polecenie podane poniżej, aby sprawdzić, czy ruch przepływa przez skonfigurowany serwer VPN WireGuard.

$ sudo wg

I to wszystko! Z powodzeniem skonfigurowałeś i ustaliłeś serwer VPN WireGuard.

Wniosek

W tym artykule pokazano, jak zainstalować i skonfigurować VPN WireGuard na komputerze CentOS 8 i ustawić system jako serwer VPN. Pokazaliśmy również, jak skonfigurować klient VPN VPN CentOS 8 i skonfigurować klienta do kierowania ruchu przez serwer VPN WireGuard.