Kako instalirati i konfigurirati OpenVPN poslužitelj u CentOS 8/7


Virtualna privatna mreža tehnološko je rješenje koje se koristi za pružanje privatnosti i sigurnosti međumrežnih veza. Najpoznatiji slučaj sastoji se od ljudi koji se povezuju s udaljenim poslužiteljem s prometom koji prolazi kroz javnu ili nesigurnu mrežu (poput Interneta).

Zamislite sljedeće scenarije:

U ovom ćemo članku objasniti kako postaviti VPN poslužitelj u okviru RHEL/CentOS 8/7 pomoću OpenVPN-a, robusne i vrlo fleksibilne aplikacije za tuneliranje koja koristi značajke šifriranja, provjere autentičnosti i certificiranja OpenSSL knjižnice. Radi jednostavnosti, razmotrit ćemo samo slučaj kada OpenVPN poslužitelj djeluje kao sigurni internetski pristupnik za klijenta.

Za ovu postavku koristili smo tri stroja, prvi djeluje kao OpenVPN poslužitelj, a druga dva (Linux i Windows) djeluju kao klijent za povezivanje s udaljenim OpenVPN poslužiteljem.

Na ovoj stranici

  • Instaliranje OpenVPN poslužitelja u CentOS 8
  • Konfiguriranje OpenVPN klijenta u Linuxu
  • Konfiguriranje OpenVPN klijenta u sustavu Windows

Napomena: Iste upute rade i na RHEL 8/7 i Fedora sustavima.

1. Da biste instalirali OpenVPN na RHEL/CentOS 8/7 poslužitelj, prvo ćete morati omogućiti spremište EPEL, a zatim instalirati paket. Ovo dolazi sa svim ovisnostima potrebnim za instalaciju paketa OpenVPN.

# yum update
# yum install epel-release

2. Zatim ćemo preuzeti instalacijsku skriptu OpenVPN-a i postaviti VPN. Prije preuzimanja i pokretanja skripte važno je pronaći javnu IP adresu svog poslužitelja jer će to dobro doći prilikom postavljanja OpenVPN poslužitelja.

Jednostavan način za to je upotreba naredbe curl kao što je prikazano:

$ curl ifconfig.me

Naredbu dig možete pozvati na sljedeći način:

$ dig +short myip.opendns.com @resolver1.opendns.com

Ako naiđete na pogrešku "dig: naredba nije pronađena", instalirajte uslužni program dig pokretanjem naredbe:

$ sudo yum install bind-utils

Ovo bi trebalo riješiti problem.

Cloud poslužitelji obično će imati 2 vrste IP adresa:

  • Jedna javna IP adresa: Ako imate VPS na oblačnim platformama kao što su Linode, Cloudcone ili Digital Ocean, obično ćete uz njega pronaći jednu javnu IP adresu.
  • Privatna IP adresa iza NAT-a s javnom IP-om: To je slučaj s instancom EC2 na AWS-u ili računskom instancom na Google Cloudu.

Bez obzira na shemu IP adresiranja, skripta OpenVPN automatski će otkriti vaše VPS mrežne postavke i sve što morate učiniti je pružiti pridruženu javnu ili privatnu IP adresu.

3. Sada nastavimo i preuzmimo instalacijsku skriptu OpenVPN, pokrenite prikazanu naredbu.

$ wget https://raw.githubusercontent.com/Angristan/openvpn-install/master/openvpn-install.sh

4. Kada je preuzimanje završeno, dodijelite dozvole za izvršavanje i pokrenite skriptu ljuske kako je prikazano.

$ sudo chmod +x openvpn-install.sh
$ sudo ./openvpn-install.sh

Instalacijski program vodi vas kroz niz upita:

5. Prvo, od vas će se zatražiti da navedete javnu IP adresu svog poslužitelja. Nakon toga preporučuje se korištenje zadanih opcija kao što su zadani broj priključka (1194) i protokol koji se koristi (UDP).

6. Zatim odaberite zadane DNS razrješivače i odaberite opciju Ne (n) za postavke kompresije i šifriranja.

7. Kad završi, skripta će pokrenuti postavljanje OpenVPN poslužitelja zajedno s instalacijom ostalih softverskih paketa i ovisnosti.

8. Na kraju, konfiguracijska datoteka klijenta generirat će se pomoću easy-RSA paketa koji je alat naredbenog retka koji se koristi za upravljanje sigurnosnim certifikatima.

Jednostavno navedite ime klijenta i slijedite zadane odabire. Datoteka klijenta pohranit će se u vaš kućni direktorij s nastavkom datoteke .ovpn.

9. Kad je skripta gotova s postavljanjem OpenVPN poslužitelja i stvaranjem datoteke konfiguracije klijenta, pojavit će se tunelsko sučelje tun0 . Ovo je virtualno sučelje gdje će se sav promet s klijentskog računala tunelirati na poslužitelj.

10. Sada možete pokrenuti i provjeriti status OpenVPN poslužitelja kako je prikazano.

$ sudo systemctl start [email protected]
$ sudo systemctl status [email protected]

11. Sada prijeđite na klijentski sustav i instalirajte spremište EPEL i softverske pakete OpenVPN.

$ sudo dnf install epel-release -y
$ sudo dnf install openvpn -y

12. Jednom instalirani, morate kopirati konfiguracijsku datoteku klijenta s OpenVPN poslužitelja u vaš klijentski sustav. To možete učiniti pomoću naredbe scp kao što je prikazano

$ sudo scp -r [email protected]:/home/tecmint/tecmint01.ovpn .

13. Nakon što se datoteka klijenta preuzme u vaš Linux sustav, sada možete inicijalizirati vezu s VPN poslužiteljem, koristeći naredbu:

$ sudo openvpn --config tecmint01.ovpn

Dobit ćete izlaz sličan onome što imamo u nastavku.

14. Izrađuje se nova tablica usmjeravanja i uspostavlja veza s VPN poslužiteljem. Opet, virtualno sučelje tunela sučelja tun0 kreira se na klijentskom sustavu.

Kao što je ranije spomenuto, ovo je sučelje koje će sav promet sigurno preusmjeriti na OpenVPN poslužitelj putem SSL tunela. VPN poslužitelju sučelju dinamički dodjeljuje IP adresu. Kao što vidite, OpenVPN poslužitelj je našem klijentskom Linux sustavu dodijelio IP adresu 10.8.0.2.

$ ifconfig

15. Samo da budemo sigurni da smo povezani s OpenVPN poslužiteljem, provjerit ćemo javnu IP adresu.

$ curl ifconfig.me

I voila! naš je klijentski sustav odabrao javni IP VPN-a potvrđujući da smo doista povezani s OpenVPN poslužiteljem. Možete i pokrenuti preglednik i Google pretraživati "Koja je moja IP adresa" kako biste potvrdili da se vaša javna IP adresa promijenila u onu OpenVPN poslužitelja.

16. U sustavu Windows morat ćete preuzeti službene binarne datoteke OpenVPN Community Edition koje dolaze s GUI-jem.

17. Zatim preuzmite svoju konfiguracijsku datoteku .ovpn u direktorij C:\Program Files\OpenVPN\config i kao Administrator pokrenite OpenVPN GUI od Start -> Svi programi -> OpenVPN i pokrenut će se u pozadini.

18. Sada pokrenite preglednik i otvorite http://whatismyip.org/ i trebali biste vidjeti IP vašeg OpenVPN poslužitelja umjesto javne IP adrese koju vam je dao ISP:

Sažetak

U ovom smo članku objasnili kako postaviti i konfigurirati VPN poslužitelj pomoću OpenVPN-a i kako postaviti dva udaljena klijenta (Linux box i Windows stroj). Ovaj poslužitelj sada možete koristiti kao VPN pristupnik za zaštitu vaših pregledavanja weba. Uz malo dodatnog napora (i drugog udaljenog poslužitelja) također možete postaviti sigurni poslužitelj datoteka/baze podataka, da nabrojimo nekoliko primjera.

Radujemo se vašem javljanju pa nam slobodno dodajte bilješku pomoću donjeg obrasca. Komentari, prijedlozi i pitanja o ovom članku su vrlo dobrodošli.