Kuinka luoda oma IPsec VPN -palvelin Linuxissa


Internetin nimettömällä käytöllä on niin monia etuja.

Tässä artikkelissa opit, kuinka nopeasti ja automaattisesti määritetään oma IPsec/L2TP VPN -palvelin CentOS/RHEL-, Ubuntu- ja Debian Linux -jakeluihin.

  1. tuore CentOS/RHEL tai Ubuntu/Debian VPS (virtuaalinen yksityinen palvelin) miltä tahansa palveluntarjoajalta, kuten Linode.

IPsec/L2TP VPN -palvelimen määrittäminen Linuxissa

VPN-palvelimen määrittämisessä käytämme upeaa Lin Songin luomaa shell-komentosarjojen kokoelmaa, joka asentaa Libreswanin IPsec-palvelimeksi ja xl2tpd L2TP-palveluntarjoajaksi. Tarjous sisältää myös komentosarjoja VPN-käyttäjien lisäämiseksi tai poistamiseksi, VPN-asennuksen päivittämiseksi ja paljon muuta.

Kirjaudu ensin VPS: ään SSH: n kautta ja suorita sitten jakelullesi sopivat komennot VPN-palvelimen määrittämiseksi. Oletusarvoisesti komentosarja luo sinulle satunnaiset VPN-tunnistetiedot (valmiiksi jaettu avain, VPN-käyttäjänimi ja salasana) ja näyttää ne asennuksen lopussa.

Jos kuitenkin haluat käyttää omia kirjautumistietojasi, sinun on ensin luotava vahva salasana ja PSK kuvan osoittamalla tavalla.

# openssl rand -base64 10
# openssl rand -base64 16

Aseta seuraavaksi nämä generoidut arvot seuraavassa komennossa kuvatulla tavalla. Kaikkien arvojen PITÄÄ sijoittaa 'lainausmerkkeihin' kuvan osoittamalla tavalla.

  • VPN_IPSEC_PSK - ennalta jaettu IPsec-avain.
  • VPN_USER - VPN-käyttäjänimesi.
  • VPN_PASSWORD - VPN-salasanasi.

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

Tärkeimmät asennettavat paketit ovat 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 ja fail2ban (SSH: n suojaamiseksi) ja niiden riippuvuudet. Sitten se lataa, kokoaa ja asentaa Libreswan lähteestä, ottaa käyttöön ja käynnistää tarvittavat palvelut.

Kun asennus on valmis, VPN-tiedot näytetään seuraavan kuvakaappauksen mukaisesti.

Seuraavaksi sinun on määritettävä VPN-asiakas työpöydille tai kannettaville tietokoneille, joissa on graafinen käyttöliittymä, katso tämä opas: L2TP/Ipsec VPN -asiakasohjelman asentaminen Linuxiin.

Voit lisätä VPN-yhteyden mobiililaitteeseen, kuten Android-puhelimeen, valitsemalla Asetukset -> Verkko ja Internet (tai Langaton ja verkot -> Lisää) -> Lisäasetukset -> VPN. Valitse vaihtoehto lisätä uusi VPN. VPN-tyypiksi tulisi asettaa IPSec Xauth PSK, ja käytä sitten yllä olevia VPN-yhdyskäytäviä ja tunnistetietoja.

Kuinka lisätä tai poistaa VPN-käyttäjä Linuxissa

Jos haluat luoda uuden VPN-käyttäjän tai päivittää nykyisen VPN-käyttäjän uudella salasanalla, lataa ja käytä komentosarjaa add_vpn_user.sh seuraavalla wget-komennolla.

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

Jos haluat poistaa VPN-käyttäjän, lataa ja käytä komentoa 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'

Kuinka päivittää Libreswan-asennus Linuxissa

Voit päivittää Libreswan-asennuksen komentosarjalla vpnupgrade.sh tai vpnupgrade_centos.sh. Muista muokata SWAN_VER-muuttujaa asennettavaksi versioksi komentosarjassa.

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

Kuinka poistaa VPN-palvelin Linuxista

Poista VPN-asennuksen asennus seuraavasti.

# yum remove xl2tpd

Avaa sitten/etc/sysconfig/iptables -määritystiedosto ja poista tarpeettomat säännöt ja muokkaa tiedostoja /etc/sysctl.conf ja /etc/rc.local ja poista rivit kommentin # Lisännyt hwdsl2 VPN-komentosarja jälkeen molemmissa tiedostoissa.

$ sudo apt-get purge xl2tpd

Muokkaa seuraavaksi /etc/iptables.rules-määritystiedostoa ja poista tarpeettomat säännöt. Muokkaa lisäksi tiedostoa /etc/iptables/rules.v4, jos se on olemassa.

Muokkaa sitten /etc/sysctl.conf- ja /etc/rc.local-tiedostoja, poista rivit kommentin # Lisännyt hwdsl2 VPN-komentosarja jälkeen molemmissa tiedostoissa. Älä poista poistumistietä 0, jos se on olemassa.

Voit halutessasi poistaa tietyt tiedostot ja hakemistot, jotka luotiin VPN-asennuksen aikana.

# 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

Jos haluat määrittää sivustojen välillä IPSec-pohjaisen VPN: n Strongswanin kanssa, tutustu oppaisiimme:

  1. IPSec-pohjaisen VPN: n määrittäminen Strongswanilla Debianissa ja Ubunnussa
  2. IPSec-pohjaisen VPN: n määrittäminen Strongswanilla CentOS/RHEL 8: lla

Viite: https://github.com/hwdsl2/setup-ipsec-vpn

Tässä vaiheessa oma VPN-palvelimesi on käynnissä. Voit jakaa kyselyitä tai antaa meille palautetta alla olevan kommenttilomakkeen avulla.