Kaip sukurti savo IPsec VPN serverį sistemoje „Linux“.


Yra tiek daug VPN (virtualaus privataus tinklo) naudojimo pranašumų, kai kurie iš jų apima jūsų saugumą internete šifruojant srautą ir padedant pasiekti užblokuotą turinį/svetaines/žiniatinklio programas iš bet kurios vietos. Maža to, VPN taip pat padeda anonimiškai naršyti internete.

Šiame straipsnyje sužinosite, kaip greitai ir automatiškai nustatyti savo IPsec/L2TP VPN serverį CentOS/RHEL, Ubuntu ir Debian Linux platinimai.

Būtinos sąlygos:

  1. Naujas CentOS/RHEL arba Ubuntu/Debian VPS (virtualus privatus serveris) iš bet kurio tiekėjo, pvz., „Linode“.

IPsec/L2TP VPN serverio nustatymas sistemoje Linux

Norėdami nustatyti VPN serverį, naudosime nuostabią Lin Song sukurtą apvalkalo scenarijų kolekciją, kuri įdiegia Libreswan kaip IPsec serverį ir xl2tpd kaip L2TP teikėjas. Pasiūloje taip pat yra scenarijų, skirtų VPN naudotojams pridėti arba ištrinti, VPN diegimui atnaujinti ir dar daugiau.

Pirmiausia prisijunkite prie savo VPS naudodami SSH, tada paleiskite atitinkamas komandas, skirtas paskirstymui, kad nustatytumėte VPN serverį. Pagal numatytuosius nustatymus scenarijus sugeneruos atsitiktinius VPN kredencialus (iš anksto bendrinamas raktas, VPN naudotojo vardas ir slaptažodis) ir pateiks juos diegimo pabaiga.

Tačiau, jei norite naudoti savo kredencialus, pirmiausia turite sugeneruoti tvirtą slaptažodį ir PSK, kaip parodyta.

openssl rand -base64 10
openssl rand -base64 16

Tada nustatykite šias sugeneruotas reikšmes, kaip aprašyta šioje komandoje, visos vertės PRIVALO būti įtrauktos į „vienos kabutės“, kaip parodyta.

  • VPN_IPSEC_PSK – jūsų IPsec iš anksto bendrinamas raktas.
  • VPN_USER – jūsų VPN naudotojo vardas.
  • VPN_PASSWORD – jūsų VPN slaptažodis.
---------------- 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

Pagrindiniai paketai, kurie bus įdiegti, yra 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 ir fail2ban (siekiant apsaugoti SSH) ir atitinkamas jų priklausomybes. Tada jis atsisiunčia, sukompiliuoja ir įdiegia Libreswan iš šaltinio, įgalina ir paleidžia reikalingas paslaugas.

Kai diegimas bus baigtas, VPN informacija bus rodoma, kaip parodyta toliau esančioje ekrano kopijoje.

Tada turite nustatyti VPN klientą, skirtą staliniams ar nešiojamiesiems kompiuteriams su grafine vartotojo sąsaja, žr. šį vadovą: Kaip nustatyti L2TP/Ipsec VPN klientą sistemoje Linux.

Norėdami pridėti VPN ryšį mobiliajame įrenginyje, pvz., Android telefone, eikite į Nustatymai –> Tinklas ir internetas > (arba Belaidis ryšys ir tinklai –> Daugiau) –> Išplėstiniai >–> VPN. Pasirinkite parinktį pridėti naują VPN. VPN tipas turėtų būti nustatytas į IPSec Xauth PSK, tada naudokite aukščiau pateiktą VPN šliuzą ir kredencialus.

Kaip pridėti arba pašalinti VPN vartotoją sistemoje „Linux“.

Norėdami sukurti naują VPN vartotoją arba atnaujinti esamą VPN naudotoją nauju slaptažodžiu, atsisiųskite ir naudokite scenarijų add_vpn_user.sh naudodami šią komandą 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'

Norėdami ištrinti VPN naudotoją, atsisiųskite ir naudokite scenarijų 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'

Kaip atnaujinti „Libreswan“ diegimą sistemoje „Linux“.

Galite atnaujinti Libreswan diegimą naudodami vpnupgrade.sh arba vpnupgrade_centos.sh scenarijų. Scenarijuje būtinai redaguokite kintamąjį SWAN_VER iki norimos įdiegti versijos.

---------------- 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

Kaip pašalinti VPN serverį „Linux“.

Norėdami pašalinti VPN diegimą, atlikite šiuos veiksmus.

RHEL/CentOS

yum remove xl2tpd

Tada atidarykite /etc/sysconfig/iptables konfigūracijos failą ir pašalinkite nereikalingas taisykles bei redaguokite /etc/sysctl.conf ir /etc/rc.local > failą ir pašalinkite eilutes po komentaro # Pridėjo hwdsl2 VPN scenarijus abiejuose failuose.

„Debian“/„Ubuntu“.

sudo apt-get purge xl2tpd

Tada redaguokite /etc/iptables.rules konfigūracijos failą ir pašalinkite visas nereikalingas taisykles. Be to, redaguokite /etc/iptables/rules.v4, jei jis yra.

Tada redaguokite failus /etc/sysctl.conf ir /etc/rc.local, pašalinkite eilutes po komentaro # Pridėta hwdsl2 VPN scenarijaus , abiejuose failuose. Nepašalinkite 0 išėjimo, jei jis yra.

Pasirinktinai galite pašalinti tam tikrus failus ir katalogus, kurie buvo sukurti nustatant VPN.

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

Jei norite nustatyti vienos svetainės IPSec pagrįstą VPN su Strongswan, peržiūrėkite mūsų vadovus:

  1. Kaip nustatyti IPSec pagrįstą VPN su Strongswan Debian ir Ubuntu
  2. Kaip nustatyti IPSec pagrįstą VPN naudojant Strongswan CentOS/RHEL 8

Šiuo metu jūsų VPN serveris yra sukurtas ir veikia. Galite pasidalinti bet kokiais klausimais arba pateikti atsiliepimų naudodami toliau pateiktą komentarų formą.