WireGuard je popularni point-to-point open-source komunikacijski protokol koji se koristi za stvaranje sigurnog i brzog tunela virtualne privatne mreže. Ovaj VPN dizajniran je za upotrebu u Linux kernelu. WireGuard je lagani VPN koji korisnicima pruža izuzetno velike brzine.
Ovaj vam članak pokazuje kako instalirati i postaviti WireGuard na vašem CentOS 8 sustavu. Instalacija i postavljanje WireGuarda mnogo su lakši od već postojećih VPN-ova, poput OpenVPN-a, a to je glavni razlog sve veće popularnosti u Linux zajednici.
Pregled
Ovaj se članak sastoji od dva odjeljka:
- U prvom ćemo odjeljku instalirati i konfigurirati CentOS 8 stroj koji će djelovati kao VPN poslužitelj WireGuard.
- U drugom ćemo dijelu instalirati i konfigurirati CentOS 8 stroj koji će djelovati kao VPN klijent WireGuard.
Instaliranje i konfiguriranje WireGuarda na poslužitelju CentOS 8
U ovom ćemo odjeljku postaviti CentOS 8 stroj koji će djelovati kao poslužitelj instaliranjem WireGuarda.
Korak 1: Dodajte EPEL i Elrepo spremišta
Da biste započeli s instaliranjem WireGuarda na CentOS 8, prvo dodajte spremišta EPEL i Elrepo da biste instalirali module jezgre i WireGuard alate.
$ sudo dnf instaliraj epel-release elrepo-release -y
Sada, nakon instalacije potrebnih spremišta, instalirajte module jezgre i WireGuard alate.
Korak 2: Instalirajte module jezgre i WireGuard alate
Moduli jezgre i WireGuard alati mogu se brzo instalirati iz spremišta EPEL i Elrepo izdavanjem sljedeće naredbe:
$ sudo dnf instaliraj kmod-wireguard wireguard-tools
Kada se od vas zatraži dopuštenje za uvoz i dodavanje GPG ključeva u sustav CentOS 8, dopustite ovu radnju tako što ćete upisati "Y" i pritisnuti "Enter."
Nakon uspješne instalacije WireGuard alata, sada ćemo izvršiti neke konfiguracije.
Korak 3: Stvorite javne i privatne ključeve
Prvo ćemo stvoriti novi direktorij '/ etc / wireguard' kako bismo mogli konfigurirati VPN poslužitelj u direktoriju. Da biste stvorili novi direktorij '/ etc / wireguard' u sustavu CentOS 8, izdajte sljedeću naredbu.
sudo mkdir / etc / wireguard
Nakon stvaranja direktorija, stvorite javni i privatni ključ pomoću alata za naredbe "wg" i "tee". Naredba za stvaranje privatnih i javnih ključeva je sljedeća.
$ wg genkey | sudo tee / etc / wireguard / privatekey | wg pubkey | sudo tee / etc / wireguard / publickey
Generirani ključ ispisat će se nakon izvršavanja gornje naredbe.
Korak 4: Konfiguracija tunelskog uređaja za usmjeravanje VPN prometa
Da biste postavili uređaj, stvorite konfiguracijsku datoteku u direktoriju '/ etc / wireguard' i otvorite datoteku pomoću nano uređivača.
Prije stvaranja konfiguracijske datoteke, nabavite privatni ključ pomoću sljedeće naredbe.
$ sudo mačka / etc / wireguard / privatekey
Spremite privatni ključ negdje; ovaj će vam ključ trebati kasnije u konfiguracijskoj datoteci.
Sada stvorite “wg0.datoteka conf.
$ sudo nano / etc / wireguard / wg0.konf
Dodajte dolje navedeni sadržaj u “/ etc / wireguard / wg0.datoteka conf.
[Sučelje]## IP adresa VPN poslužitelja ##
Adresa = 192.168.18.200/24
## Spremite konfiguraciju kada će novi klijent dodati ##
SaveConfig = true
## broj porta VPN poslužitelja ##
ListenPort = 51820
## Privatni ključ VPN poslužitelja ##
PrivateKey = SERVER_PRIVATE_KEY
## Naredba koju treba izvršiti prije pokretanja sučelja ##
PostUp = firewall-cmd --zone = public --add-port 51820 / udp && firewall-cmd --zone = public --add-masquerade
## Naredba koju treba izvršiti prije isključivanja sučelja ##
PostDown = firewall-cmd --remove-port 51820 / udp --zone = public && firewall-cmd --remove-masquerade --zone = public
Ova konfiguracijska datoteka sadrži sljedeće ključne pojmove:
- Adresa - privatna IP adresa za sučelje (wg0).
- SaveConfig = true - sprema stanje sučelja pri ponovnom pokretanju ili isključivanju poslužitelja.
- ListenPort - luka na kojoj preslušava demon WireGuard.
- PrivateKey - ključ koji smo upravo generirali.
- PostUp - ova će se naredba izvršiti prije pokretanja sučelja
- PostDown - ova će se naredba izvršiti prije isključivanja sučelja.
Sad kad prilično dobro razumijete konfiguracijsku datoteku, datoteku možete spremiti i izaći pomoću tipkovnih prečaca (CTRL + S) i (CTRL + X).
Korak 5: Postavite privilegije konfiguracije i datoteke "privatekey"
Sada ćemo VPN poslužitelj učiniti malo sigurnijim. Osnovni korisnik ne bi trebao imati povlastice za čitanje konfiguracijske datoteke i datoteke 'privatekey'. Da bismo omogućili pristup tim datotekama, promijenit ćemo način rada ove dvije datoteke na 600. Naredba za postavljanje dozvola dana je u nastavku.
$ sudo chmod 600 / etc / wireguard / privatekey$ sudo chmod 600 / etc / wireguard / wg0.konf
Nakon finaliziranja dozvola, aktivirat ćemo sučelje (wg0) pomoću alata za naredbenu liniju wg-quick.
Korak 6: Pokrenite sučelje
Da biste pokrenuli sučelje, izdajte naredbu datu u nastavku:
$ sudo wg-ubrzanje wg0
Ako ste dobili izlaz prikazan na gornjoj snimci zaslona, uspješno ste pokrenuli sučelje. Sada ćemo provjeriti status sučelja.
$ sudo wg
Omogućite sučelje za automatsko pokretanje sučelja prilikom pokretanja CentOS 8 poslužitelja.
$ sudo systemctl omogući wg-quick @ wg0
U ovoj je fazi dovršeno postavljanje poslužitelja. Sada, ako želite postaviti ovaj VPN poslužitelj za NAT, morat ćete omogućiti prosljeđivanje IPv4.
Korak 7: Omogućite prosljeđivanje IPv4
Da biste omogućili IPv4 prosljeđivanje za NAT, stvorite “99-custom.conf “u datoteci“ / etc / sysctl.d ”direktorij pomoću nano uređivača.
$ sudo nano / etc / sysctl.d / 99-običaj.konf
Dodajte sljedeći sadržaj u “/ etc / sysctl.d / 99-običaj.konf "
## za omogućavanje prosljeđivanja IPv4 ##neto.ipv4.ip_forward = 1
Da biste omogućili prosljeđivanje IPv6, dodajte sljedeći sadržaj u “/ etc / sysctl.d / 99-običaj.conf “, također.
## za omogućavanje prosljeđivanja IPv6 ##neto.ipv6.konf.svi.prosljeđivanje = 1
Nakon omogućavanja prosljeđivanja IPv4, spremite datoteku i izađite pomoću prečaca (CTRL + S) i (CTRL + X).
Krenimo sada s postavljanjem klijentskog stroja WireGuard.
Instalacija i konfiguracija WireGuard VPN-a na CentOS 8 klijentu
U ovom ćemo odjeljku postaviti stroj CentOS 8 koji će djelovati kao klijent. Proces instalacije i konfiguriranja WireGuard VPN klijenta bit će gotovo isti kao i za WireGuard VPN poslužitelj.
Korak 1: Dodajte EPEL i Elrepo spremišta
Prvo ćemo dodati spremišta EPEL i Elrepo kako bismo instalirali module jezgre i WireGuard alate:
$ sudo dnf instalirati epel-release elrepo-release -y
Sada, nakon instaliranja potrebnih spremišta, instalirat ćemo module jezgre i WireGuard Tools.
Korak 2: Instalirajte kernel module i WireGuard alate
Moduli jezgre i alati WireGuard sada se mogu instalirati iz spremišta EPEL i Elrepo izdavanjem sljedeće naredbe.
$ sudo dnf instaliraj kmod-wireguard wireguard-tools
Kada se od vas zatraži dopuštenje za uvoz i dodavanje GPG ključeva u sustav CentOS 8, dopustite promjene tipkanjem "Y" i pritiskom na "Enter."
Nakon što su WireGuard alati uspješno instalirani, potrebno je konfigurirati i klijentski stroj CentOS 8.
Korak 3: Stvorite javne i privatne ključeve
U ovom ćemo koraku stvoriti novi direktorij '/ etc / wireguard' na klijentskom stroju. Da biste stvorili novi direktorij '/ etc / wireguard' u vašem CentOS 8 sustavu, unesite sljedeću naredbu.
sudo mkdir / etc / wireguard
Nakon stvaranja direktorija, stvorite javni i privatni ključ pomoću alata za naredbe "wg" i "tee". Naredba za stvaranje privatnih i javnih ključeva nalazi se u nastavku.
$ wg genkey | sudo tee / etc / wireguard / privatekey | wg pubkey | sudo tee / etc / wireguard / publickey
Generirani ključevi sada će se ispisati.
Korak 4: Konfiguracija za usmjeravanje VPN prometa
U ovom ćemo koraku stvoriti konfiguracijsku datoteku u direktoriju '/ etc / wireguard' i otvoriti je pomoću nano uređivača.
Prije stvaranja konfiguracijske datoteke, uzmite privatni ključ pomoću sljedeće naredbe.
$ sudo mačka / etc / wireguard / privatekey
Spremite privatni ključ negdje; trebat će vam kasnije u konfiguracijskoj datoteci.
Sada stvorite “wg0.datoteka conf.
$ sudo nano / etc / wireguard / wg0.konf
Dodajte dolje navedeni sadržaj u “/ etc / wireguard / wg0.datoteka conf
[Sučelje]## Privatni ključ VPN klijenta ##
PrivateKey = 8D8puLQCbUw + 51wPE3Q7KutGxQhUvsy + a + DBgamb + 3o =
## IP adresa VPN klijenta ##
Adresa = 192.168.18.201/24
[Vršnjak]
## Javni ključ CentOS 8 VPN poslužitelja ##
PublicKey = VWndJ4oB7ZJwC / 7UOm ++ OLDrbAxMPsR2yd0cl3sEkUI =
## postavi ACL ##
DopušteniIP = 0.0.0.0/0
## IP adresa i priključak CentOS 8 VPN poslužitelja ##
Krajnja točka = 192.168.18.200: 51820
Konfiguracijska datoteka sadrži sljedeće ključne pojmove:
- PrivateKey - ključ generiran na klijentskom stroju.
- Adresa - IP adresa za sučelje (wg0).
- PublicKey - javni ključ stroja VPN poslužitelja na koji se želimo povezati.
- DopušteniIP - sve dopuštene IP adrese za protok prometa pomoću VPN-a.
- Krajnja točka - pružit ćemo IP adresu i broj priključka poslužiteljskog računala CentOS 8 na koji se želimo povezati.
Sad smo konfigurirali i klijentski stroj. Spremite datoteku i izađite pomoću tipkovnih prečaca (CTRL + S) i (CTRL + X).
Korak 5: Postavite privilegije konfiguracije i datoteke "privatekey"
Sada ćemo promijeniti način rada i postaviti privilegije konfiguracijske datoteke i datoteke "privatekey" na 600. Unesite sljedeću naredbu za postavljanje dozvola.
$ sudo chmod 600 / etc / wireguard / privatekey$ sudo chmod 600 / etc / wireguard / wg0.konf
Sada kada smo finalizirali dozvole, možemo pokrenuti sučelje (wg0) pomoću alata za naredbenu liniju "wg-quick".
Korak 6: Pokrenite sučelje
Da biste pokrenuli sučelje, izdajte naredbu datu u nastavku:
$ sudo wg-ubrzanje wg0
Sad smo uspješno pokrenuli sučelje. Dalje ćemo provjeriti status sučelja.
$ sudo wg
Omogućite sučelje za automatsko pokretanje sučelja prilikom pokretanja CentOS 8 poslužitelja.
$ sudo systemctl omogući wg-quick @ wg0
U ovoj se fazi postavlja i klijent.
Korak 7: Dodajte IP adresu i javni ključ klijenta na CentOS 8 poslužitelj
Posljednji korak je dodavanje IP adrese i javnog ključa računala VPN klijenta u konfiguracijsku datoteku stroja CentOS 8 WireGuard VPN poslužitelja.
Vratite se na poslužiteljski stroj i dodajte sljedeći sadržaj u “/ etc / wireguard / wg0.datoteka conf.
[Vršnjak]## javni ključ VPN klijenta ##
PublicKey = dmfO9pirB315slXOgxXtmrBwAqPy07C57EvPks1IKzA =
## IP adresa VPN klijenta ##
DopušteniIPs = 192.168.10.2/32
Nakon ažuriranja konfiguracijske datoteke VPN poslužitelja, spremite datoteku i izađite pomoću tipkovnih prečaca (CTRL + S) i (CTRL + X).
Tunel je sada uspostavljen, a sav promet prolazit će se kroz CentOS 8 WireGuard VPN poslužitelj.
Korak 8: Provjerite tunelsku vezu
Da biste provjerili je li CentOS 8 WireGuard VPN poslužitelj pravilno instaliran i konfiguriran, izdajte donju naredbu kako biste provjerili prolazi li promet kroz konfigurirani WireGuard VPN poslužitelj.
$ sudo wg
I to je to! Uspješno ste konfigurirali i uspostavili WireGuard VPN poslužitelj.
Zaključak
Ovaj vam je članak pokazao kako instalirati i konfigurirati WireGuard VPN na vašem CentOS 8 stroju i postaviti sustav kao VPN poslužitelj. Također smo vam pokazali kako postaviti CentOS 8 WireGuard VPN klijent i konfigurirati klijenta za usmjeravanje prometa putem WireGuard VPN poslužitelja.