Kako kreirati svoj vlastiti IPsec VPN server u Linuxu


Postoji toliko mnogo prednosti korištenja VPN-a (virtuelne privatne mreže), od kojih neke uključuju vašu sigurnost na internetu šifriranjem vašeg prometa i pomoći vam da pristupite blokiranom sadržaju/stranicama/web aplikacijama s bilo kojeg mjesta. Da ne spominjemo, VPN vam također pomaže da anonimno pretražujete internet.

U ovom članku ćete naučiti kako brzo i automatski postaviti svoj IPsec/L2TP VPN server u CentOS/RHEL, Ubuntu i Debian Linux distribucije.

Preduvjeti:

  1. Svježi CentOS/RHEL ili Ubuntu/Debian VPS (Virtualni privatni server) bilo kojeg provajdera kao što je Linode.

Postavljanje IPsec/L2TP VPN servera u Linuxu

Za postavljanje VPN servera koristit ćemo prekrasnu kolekciju shell skripti kreiranih od strane Lin Songa, koja instalira Libreswan kao IPsec server i xl2tpd kao L2TP provajder. Ponuda također uključuje skripte za dodavanje ili brisanje VPN korisnika, nadogradnju VPN instalacije i još mnogo toga.

Prvo se prijavite na svoj VPS putem SSH, a zatim pokrenite odgovarajuće komande za svoju distribuciju da postavite VPN server. Prema zadanim postavkama, skripta će generirati nasumične VPN vjerodajnice (pre-dijeljeni ključ, VPN korisničko ime i lozinku) za vas i prikazati ih na kraj instalacije.

Međutim, ako želite koristiti svoje vlastite vjerodajnice, prvo morate generirati jaku lozinku i PSK kao što je prikazano.

openssl rand -base64 10
openssl rand -base64 16

Zatim postavite ove generirane vrijednosti kako je opisano u sljedećoj naredbi, sve vrijednosti MORAJU biti postavljene unutar 'jednostrukih navodnika' kao što je prikazano.

  • VPN_IPSEC_PSK – Vaš IPsec unaprijed dijeljeni ključ.
  • VPN_USER – Vaše VPN korisničko ime.
  • VPN_PASSWORD – Vaša VPN lozinka.
---------------- On CentOS/RHEL ---------------- 
wget https://git.io/vpnsetup-centos -O vpnsetup.sh && VPN_IPSEC_PSK='KvLjedUkNzo5gBH72SqkOA==' VPN_USER='tecmint' VPN_PASSWORD='8DbDiPpGbcr4wQ==' sh vpnsetup.sh

---------------- On Debian and Ubuntu ----------------
wget https://git.io/vpnsetup -O vpnsetup.sh && VPN_IPSEC_PSK='KvLjedUkNzo5gBH72SqkOA==' VPN_USER='tecmint' VPN_PASSWORD='8DbDiPpGbcr4wQ==' sudo sh vpnsetup.sh

Glavni paketi koji će biti instalirani su bind-utils, net-tools, bison, flex, gcc, libcap-ng-devel, libcurl-devel, libselinux-devel, nspr-devel, nss-devel, pam-devel, xl2tpd, iptables-services, systemd-devel, fipscheck-devel, libevent-devel i fail2ban (za zaštitu SSH), i njihove odgovarajuće zavisnosti. Zatim preuzima, kompajlira i instalira Libreswan iz izvora, omogućava i pokreće potrebne usluge.

Kada se instalacija završi, bit će prikazani detalji o VPN-u kao što je prikazano na sljedećem snimku ekrana.

Zatim morate postaviti VPN klijenta, za desktop ili laptop sa grafičkim korisničkim interfejsom, pogledajte ovaj vodič: Kako postaviti L2TP/Ipsec VPN klijent na Linux.

Da dodate VPN vezu na mobilnom uređaju kao što je Android telefon, idite na Postavke –> Mreža i internet > (ili Bežična veza i mreže –> Više) –> Napredno –> VPN. Odaberite opciju za dodavanje novog VPN-a. Vrsta VPN-a treba biti postavljena na IPSec Xauth PSK, a zatim koristite VPN gateway i vjerodajnice iznad.

Kako dodati ili ukloniti VPN korisnika u Linuxu

Da kreirate novog VPN korisnika ili ažurirate postojećeg VPN korisnika novom lozinkom, preuzmite i koristite skriptu add_vpn_user.sh koristeći sljedeću komandu wget.

wget -O add_vpn_user.sh https://raw.githubusercontent.com/hwdsl2/setup-ipsec-vpn/master/extras/add_vpn_user.sh
sudo sh add_vpn_user.sh 'username_to_add' 'user_password'

Da izbrišete VPN korisnika, preuzmite i koristite skriptu del_vpn_user.sh.

wget -O del_vpn_user.sh https://raw.githubusercontent.com/hwdsl2/setup-ipsec-vpn/master/extras/del_vpn_user.sh
sudo sh del_vpn_user.sh 'username_to_delete'

Kako nadograditi Libreswan instalaciju u Linuxu

Instalaciju Libreswan možete nadograditi pomoću skripte vpnupgrade.sh ili vpnupgrade_centos.sh. Obavezno uredite varijablu SWAN_VER na verziju koju želite instalirati, unutar skripte.

---------------- On CentOS/RHEL ---------------- 
wget https://git.io/vpnupgrade-centos -O vpnupgrade.sh && sh vpnupgrade.sh

---------------- On Debian and Ubuntu ----------------
wget https://git.io/vpnupgrade -O vpnupgrade.sh && sudo sh  vpnupgrade.sh

Kako deinstalirati VPN server u Linuxu

Da deinstalirate VPN instalaciju, uradite sljedeće.

Na RHEL/CentOS

yum remove xl2tpd

Zatim otvorite /etc/sysconfig/iptables konfiguracijski fajl i uklonite nepotrebna pravila i uredite /etc/sysctl.conf i /etc/rc.local datoteku i uklonite redove nakon komentara # Dodao hwdsl2 VPN skript, u oba fajla.

Na Debian/Ubuntu

sudo apt-get purge xl2tpd

Zatim uredite datoteku /etc/iptables.rules i uklonite sva nepotrebna pravila. Dodatno, uredite /etc/iptables/rules.v4 ako postoji.

Zatim uredite datoteke /etc/sysctl.conf i /etc/rc.local, uklonite redove nakon komentara # Dodao hwdsl2 VPN skripta , u oba fajla. Nemojte uklanjati izlaz 0 ako postoji.

Opciono, možete ukloniti određene datoteke i direktorije koji su kreirani tokom podešavanja VPN-a.

rm -f /etc/ipsec.conf* /etc/ipsec.secrets* /etc/ppp/chap-secrets* /etc/ppp/options.xl2tpd* /etc/pam.d/pluto /etc/sysconfig/pluto /etc/default/pluto 
rm -rf /etc/ipsec.d /etc/xl2tpd

Za postavljanje VPN-a zasnovanog na IPSec-u od lokacije do lokacije sa Strongswan, pogledajte naše vodiče:

  1. Kako postaviti VPN baziran na IPSec-u sa Strongswan-om na Debianu i Ubuntuu
  2. Kako postaviti VPN baziran na IPSec-u sa Strongswan-om na CentOS/RHEL 8

U ovom trenutku, vaš vlastiti VPN server je pokrenut i radi. Možete podijeliti bilo koje upite ili nam dati povratne informacije koristeći formu za komentare ispod.