WireGuard este un popular protocol de comunicație open-source punct la punct care este utilizat pentru a crea un tunel de rețea virtuală virtuală sigur și rapid. Acest VPN a fost conceput pentru a fi utilizat în nucleul Linux. WireGuard este un VPN ușor care oferă viteze extrem de rapide utilizatorilor.
Acest articol vă arată cum să instalați și să configurați WireGuard pe sistemul CentOS 8. Instalarea și configurarea WireGuard sunt mult mai ușoare decât VPN-urile deja existente, cum ar fi OpenVPN, și acesta este un motiv major din spatele popularității sale în creștere în comunitatea Linux.
Prezentare generală
Acest articol cuprinde două secțiuni:
- În prima secțiune, vom instala și configura o mașină CentOS 8 care va acționa ca un Server VPN WireGuard.
- În a doua secțiune, vom instala și configura o mașină CentOS 8 care va acționa ca WireGuard VPN Client.
Instalarea și configurarea WireGuard pe un server CentOS 8
În această secțiune, vom configura o mașină CentOS 8 care va acționa ca un server prin instalarea WireGuard.
Pasul 1: Adăugați Depozitele EPEL și Elrepo
Pentru a începe cu instalarea WireGuard pe CentOS 8, mai întâi, adăugați depozitele EPEL și Elrepo pentru a instala modulele kernel și instrumentele WireGuard.
$ sudo dnf instalează epel-release elrepo-release -y
Acum, după instalarea depozitelor necesare, instalați modulele kernel și instrumentele WireGuard.
Pasul 2: Instalați modulele kernel și instrumentele WireGuard
Modulele kernel și instrumentele WireGuard pot fi instalate rapid din depozitele EPEL și Elrepo prin emiterea următoarei comenzi:
$ sudo dnf instala kmod-wireguard wireguard-tools
Când vi se solicită permisiunea de a importa și adăuga cheile GPG la sistemul CentOS 8, permiteți această acțiune tastând „Y” și apăsând „Enter”.”
După instalarea cu succes a instrumentelor WireGuard, vom efectua acum câteva configurații.
Pasul 3: Creați chei publice și private
În primul rând, vom crea un nou director '/ etc / wireguard', astfel încât să putem configura serverul VPN în director. Pentru a crea un nou director '/ etc / wireguard' în sistemul CentOS 8, lansați următoarea comandă.
sudo mkdir / etc / wireguard
După crearea directorului, creați cheile publice și private folosind instrumentele din linia de comandă „wg” și „tee”. Comanda pentru crearea cheilor private și publice este după cum urmează.
$ wg genkey | sudo tee / etc / wireguard / privatekey | wg pubkey | sudo tee / etc / wireguard / publickey
Cheia generată va fi tipărită la executarea comenzii de mai sus.
Pasul 4: Configurarea dispozitivului tunel pentru rutarea traficului VPN
Pentru a configura un dispozitiv, creați un fișier de configurare în directorul „/ etc / wireguard” și deschideți fișierul utilizând editorul nano.
Înainte de a crea fișierul de configurare, obțineți Cheia privată folosind următoarea comandă.
$ sudo cat / etc / wireguard / privatekey
Salvați cheia privată undeva; veți avea nevoie de această cheie mai târziu în fișierul de configurare.
Acum, creați „wg0.conf ”fișier.
$ sudo nano / etc / wireguard / wg0.conf
Adăugați conținutul de mai jos la „/ etc / wireguard / wg0.conf ”fișier.
[Interfață]## Adresa IP a serverului VPN ##
Adresă = 192.168.18.200/24
## Salvați configurația când un nou client va adăuga ##
SaveConfig = adevărat
## numărul de port al serverului VPN ##
ListenPort = 51820
## Cheia privată a serverului VPN ##
PrivateKey = SERVER_PRIVATE_KEY
## Comandă care trebuie executată înainte de a porni interfața ##
PostUp = firewall-cmd --zone = public --add-port 51820 / udp && firewall-cmd --zone = public --add-masquerade
## Comandă care trebuie executată înainte de a opri interfața ##
PostDown = firewall-cmd --remove-port 51820 / udp --zone = public && firewall-cmd --remove-masquerade --zone = public
Acest fișier de configurare conține următorii termeni cheie:
- Abordare - adresa IP privată pentru interfață (wg0).
- SaveConfig = true - salvează starea interfeței la repornire sau oprire a serverului.
- ListenPort - portul unde ascultă demonul WireGuard.
- PrivateKey - cheia pe care tocmai am generat-o.
- Documenta - această comandă va fi executată înainte de a declanșa interfața
- PostDown - această comandă va fi executată înainte de a opri interfața.
Acum că înțelegeți destul de bine fișierul de configurare, puteți salva fișierul și ieși folosind comenzile rapide de la tastatură (CTRL + S) și (CTRL + X).
Pasul 5: Setați privilegiile de configurare și fișierul „cheie privată”
Acum, vom face serverul VPN un pic mai sigur. Un utilizator de bază nu ar trebui să aibă privilegiile de a citi fișierul de configurare și fișierul „cheie privată”. Pentru a oferi acces la aceste fișiere, vom schimba modul acestor două fișiere la 600. Comanda pentru setarea permisiunilor este dată mai jos.
$ sudo chmod 600 / etc / wireguard / privatekey$ sudo chmod 600 / etc / wireguard / wg0.conf
După finalizarea permisiunilor, vom declanșa interfața (wg0) folosind instrumentul de linie de comandă wg-quick.
Pasul 6: Porniți interfața
Pentru a porni interfața, lansați comanda dată mai jos:
$ sudo wg-quick up wg0
Dacă ați obținut rezultatul afișat în captura de ecran de mai sus, ați început cu succes interfața. Vom verifica acum starea interfeței.
$ sudo wg
Activați interfața pentru a porni automat interfața la pornirea serverului CentOS 8.
$ sudo systemctl activa wg-quick @ wg0
În această etapă, configurarea serverului a fost finalizată. Acum, dacă doriți să configurați acest server VPN pentru NAT, va trebui să activați redirecționarea IPv4.
Pasul 7: Activați redirecționarea IPv4
Pentru a activa redirecționarea IPv4 pentru NAT, creați un „99-custom.conf ”din fișierul„ / etc / sysctl.directorul d ”folosind editorul nano.
$ sudo nano / etc / sysctl.d / 99-personalizat.conf
Adăugați următorul conținut în „/ etc / sysctl.d / 99-personalizat.conf ”
## pentru activarea redirecționării IPv4 ##net.ipv4.ip_forward = 1
Pentru a activa redirecționarea IPv6, adăugați următorul conținut în „/ etc / sysctl.d / 99-personalizat.conf ”, de asemenea.
## pentru activarea redirecționării IPv6 ##net.ipv6.conf.toate.redirecționare = 1
După activarea redirecționării IPv4, salvați fișierul și ieșiți utilizând comenzile rapide (CTRL + S) și (CTRL + X).
Să trecem acum la configurarea computerului WireGuard Client.
Instalarea și configurarea WireGuard VPN pe CentOS 8 Client
În această secțiune, vom configura o mașină CentOS 8 care va acționa ca un client. Procesul de instalare și configurare a clientului WireGuard VPN va fi aproape același ca și pentru serverul WireGuard VPN.
Pasul 1: Adăugați Depozitele EPEL și Elrepo
Mai întâi, vom adăuga depozitele EPEL și Elrepo pentru a instala modulele kernel și instrumentele WireGuard:
$ sudo dnf instalează epel-release elrepo-release -y
Acum, după instalarea depozitelor necesare, vom instala modulele kernel și WireGuard Tools.
Pasul 2: Instalați modulele Kernel și WireGuard Tools
Modulele kernel și instrumentele WireGuard pot fi acum instalate din depozitele EPEL și Elrepo prin emiterea următoarei comenzi.
$ sudo dnf instala kmod-wireguard wireguard-tools
Când vi se cere permisiunea de a importa și adăuga cheile GPG la sistemul CentOS 8, permiteți modificările tastând „Y” și apăsând „Enter”.”
După instalarea cu succes a instrumentelor WireGuard, trebuie configurată și mașina Client CentOS 8.
Pasul 3: Creați chei publice și private
În acest pas, vom crea un nou director '/ etc / wireguard' în computerul Client. Pentru a crea noul director '/ etc / wireguard' în sistemul CentOS 8, introduceți următoarea comandă.
sudo mkdir / etc / wireguard
După crearea directorului, creați cheile publice și private folosind instrumentele din linia de comandă „wg” și „tee”. Comanda pentru crearea cheilor private și publice este furnizată mai jos.
$ wg genkey | sudo tee / etc / wireguard / privatekey | wg pubkey | sudo tee / etc / wireguard / publickey
Cheile generate vor fi acum tipărite.
Pasul 4: Configurare pentru rutarea traficului VPN
În acest pas, vom crea un fișier de configurare în directorul „/ etc / wireguard” și îl vom deschide folosind editorul nano.
Înainte de a crea fișierul de configurare, obțineți cheia privată folosind următoarea comandă.
$ sudo cat / etc / wireguard / privatekey
Salvați cheia privată undeva; veți avea nevoie mai târziu în fișierul de configurare.
Acum, creați „wg0.conf ”fișier.
$ sudo nano / etc / wireguard / wg0.conf
Adăugați conținutul de mai jos la „/ etc / wireguard / wg0.conf ”fișier
[Interfață]## Cheia privată a clientului VPN ##
PrivateKey = 8D8puLQCbUw + 51wPE3Q7KutGxQhUvsy + a + DBgamb + 3o =
## Adresa IP a clientului VPN ##
Adresă = 192.168.18.201/24
[Peer]
## Cheia publică a serverului VPN CentOS 8 ##
PublicKey = VWndJ4oB7ZJwC / 7UOm ++ OLDrbAxMPsR2yd0cl3sEkUI =
## set ACL ##
AllowedIPs = 0.0.0.0/0
## Adresa IP și portul serverului VPN CentOS 8 ##
Punct final = 192.168.18.200: 51820
Fișierul de configurare conține următorii termeni cheie:
- PrivateKey - cheia generată pe computerul client.
- Abordare - adresa IP pentru interfață (wg0).
- PublicKey - cheia publică a mașinii server VPN la care dorim să ne conectăm.
- Permise IP-uri - toate adresele IP permise pentru fluxul de trafic utilizând VPN.
- Punct final - vom furniza adresa IP și numărul de port al mașinii server CentOS 8 la care dorim să ne conectăm.
Acum am configurat și mașina client. Salvați fișierul și ieșiți folosind comenzile rapide de la tastatură (CTRL + S) și (CTRL + X).
Pasul 5: Setați privilegiile de configurare și fișierul „cheie privată”
Acum, vom schimba modul și vom seta privilegiile fișierului de configurare și ale fișierului „privatekey” la 600. Introduceți următoarea comandă pentru a seta permisiunile.
$ sudo chmod 600 / etc / wireguard / privatekey$ sudo chmod 600 / etc / wireguard / wg0.conf
Acum că am finalizat permisiunile, putem declanșa interfața (wg0) folosind instrumentul de linie de comandă „wg-quick”.
Pasul 6: Porniți interfața
Pentru a porni interfața, lansați comanda dată mai jos:
$ sudo wg-quick up wg0
Acum am început cu succes interfața. Apoi, vom verifica starea interfeței.
$ sudo wg
Activați interfața pentru a porni automat interfața la pornirea serverului CentOS 8.
$ sudo systemctl activa wg-quick @ wg0
În această etapă, clientul este, de asemenea, configurat.
Pasul 7: Adăugați adresa IP și cheia publică a clientului la CentOS 8 Server
Ultimul pas este să adăugați adresa IP și cheia publică a mașinii client VPN la fișierul de configurare al mașinii server VPN CentOS 8 WireGuard.
Reveniți la computerul server și adăugați următorul conținut în „/ etc / wireguard / wg0.conf ”fișier.
[Peer]## Cheia publică a clientului VPN ##
PublicKey = dmfO9pirB315slXOgxXtmrBwAqPy07C57EvPks1IKzA =
## Adresa IP a clientului VPN ##
AllowedIPs = 192.168.10.2/32
După actualizarea fișierului de configurare al serverului VPN, salvați fișierul și ieșiți utilizând comenzile rapide de la tastatură (CTRL + S) și (CTRL + X).
Tunelul a fost stabilit acum și tot traficul va fi trecut prin serverul CentOS 8 WireGuard VPN.
Pasul 8: Verificați conexiunea tunelului
Pentru a verifica dacă serverul CentOS 8 WireGuard VPN a fost instalat și configurat corect, lansați comanda dată mai jos pentru a verifica dacă traficul circulă prin serverul WireGuard VPN configurat.
$ sudo wg
Și asta este! Ați configurat și stabilit serverul WireGuard VPN cu succes.
Concluzie
Acest articol v-a arătat cum să instalați și să configurați WireGuard VPN pe mașina dvs. CentOS 8 și să configurați sistemul ca server VPN. De asemenea, v-am arătat cum să configurați un client VPN CentOS 8 WireGuard și să configurați clientul pentru a direcționa traficul prin serverul WireGuard VPN.