Com crear el vostre propi servidor VPN IPsec a Linux


Hi ha molts avantatges d'utilitzar una navegació per Internet de manera anònima.

En aquest article, aprendràs a configurar ràpidament i automàticament el teu propi servidor VPN IPsec/L2TP a les distribucions CentOS/RHEL, Ubuntu i Debian Linux.

  1. Una nova CentOS/RHEL o Ubuntu/Debian VPS (servidor privat virtual) de qualsevol proveïdor com Linode.

Configuració del servidor VPN IPsec/L2TP a Linux

Per configurar el servidor VPN, utilitzarem una meravellosa col·lecció de scripts d'intèrpret d'ordres creats per Lin Song, que instal·la Libreswan com a servidor IPsec i xl2tpd com a proveïdor L2TP. L'oferta també inclou scripts per afegir o suprimir usuaris VPN, actualitzar la instal·lació de VPN i molt més.

Primer, inicieu sessió al vostre VPS mitjançant SSH i, a continuació, executeu les ordres adequades per a la vostra distribució per configurar el servidor VPN. De manera predeterminada, l'script generarà credencials VPN aleatòries (clau prèviament compartida, nom d'usuari VPN i contrasenya) i les mostrarà al final de la instal·lació.

Tanmateix, si voleu utilitzar les vostres pròpies credencials, primer heu de generar una contrasenya segura i PSK tal com es mostra.

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

A continuació, configureu aquests valors generats tal com es descriu a l'ordre següent, tots els valors S'HAN de col·locar dins de cometes simples, tal com es mostra.

  • VPN_IPSEC_PSK: la vostra clau IPsec prèviament compartida.
  • VPN_USER: el vostre nom d'usuari de VPN.
  • VPN_PASSWORD: la vostra contrasenya VPN.

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

Els principals paquets que s'instal·laran són 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 (per protegir SSH) i les seves dependències respectives. A continuació, baixa, compila i instal·la Libreswan des de la font, habilita i inicia els serveis necessaris.

Un cop finalitzada la instal·lació, es mostraran els detalls de la VPN tal com es mostra a la captura de pantalla següent.

A continuació, heu de configurar un client VPN, per a ordinadors de sobretaula o portàtils amb una interfície d'usuari gràfica, consulteu aquesta guia: Com configurar un client VPN L2TP/Ipsec a Linux.

Per afegir la connexió VPN en un dispositiu mòbil, com ara un telèfon Android, aneu a Configuració –> Xarxa i Internet (o sense fil i xarxes –> Més) –> Avançat –> VPN. Seleccioneu l'opció per afegir una nova VPN. El tipus de VPN s'ha d'establir a IPSec Xauth PSK i, a continuació, utilitzeu la passarel·la VPN i les credencials anteriors.

Com afegir o eliminar un usuari VPN a Linux

Per crear un usuari VPN nou o actualitzar un usuari VPN existent amb una contrasenya nova, descarregueu i utilitzeu l'script add_vpn_user.sh mitjançant l'ordre wget següent.

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

Per suprimir un usuari VPN, baixeu i utilitzeu l'script 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'

Com actualitzar la instal·lació de Libreswan a Linux

Podeu actualitzar la instal·lació de Libreswan mitjançant l'script vpnupgrade.sh o vpnupgrade_centos.sh. Assegureu-vos d'editar la variable SWAN_VER a la versió que voleu instal·lar, dins de l'script.

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

Com desinstal·lar el servidor VPN a Linux

Per desinstal·lar la instal·lació VPN, feu el següent.

# yum remove xl2tpd

A continuació, obriu el fitxer de configuració /etc/sysconfig/iptables i elimineu les regles innecessàries i editeu els fitxers /etc/sysctl.conf i /etc/rc.local, i elimineu les línies després del comentari # Afegit per l'script VPN hwdsl2, als dos fitxers.

$ sudo apt-get purge xl2tpd

A continuació, editeu el fitxer de configuració /etc/iptables.rules i elimineu les regles innecessàries. A més, editeu /etc/iptables/rules.v4 si existeix.

A continuació, editeu els fitxers /etc/sysctl.conf i /etc/rc.local, elimineu les línies després del comentari # Afegit per l'script VPN hwdsl2, als dos fitxers. No elimineu la sortida 0 si existeix.

Opcionalment, podeu eliminar determinats fitxers i directoris que es van crear durant la configuració de la 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

Per configurar una VPN basada en IPSec de lloc a lloc amb Strongswan, consulteu les nostres guies:

  1. Com configurar una VPN basada en IPSec amb Strongswan a Debian i Ubuntu
  2. Com configurar una VPN basada en IPSec amb Strongswan a CentOS/RHEL 8

Referència: https://github.com/hwdsl2/setup-ipsec-vpn

En aquest moment, el vostre propi servidor VPN està en funcionament. Pots compartir qualsevol consulta o donar-nos comentaris mitjançant el formulari de comentaris a continuació.