Comment créer votre propre serveur VPN IPSec dans Linux

Comment créer votre propre serveur VPN IPSec dans Linux

Il y a tellement d'avantages à utiliser un VPN (réseau privé virtuel), dont certains incluent vous garder en sécurité sur Internet en cryptant votre trafic et en vous aidant à accéder au contenu / sites / sites / applications Web de n'importe où. Sans parler de, VPN vous aide également à parcourir Internet de manière anonyme.

Dans cet article, vous apprendrez à configurer rapidement et automatiquement le vôtre VPN IPSec / L2TP servir dans Centos / Rhel, Ubuntu, et Debian Distributions Linux.

Conditions préalables:

  1. Un nouveau Centos / Rhel ou Ubuntu / Debian VPS (Serveur privé virtuel) de tout fournisseur comme Linode.

Configuration du serveur VPN IPSec / L2TP dans Linux

Pour configurer le serveur VPN, nous utiliserons une merveilleuse collection de scripts shell créés par Lin Song, qui installe Libreswan comme le Ipsec serveur, et xl2tpd comme le L2TP fournisseur. L'offre comprend également des scripts pour ajouter ou supprimer les utilisateurs VPN, mettre à niveau l'installation VPN et bien plus encore.

Tout d'abord, connectez-vous à votre VPS via Ssh, Exécutez ensuite les commandes appropriées pour votre distribution afin de configurer le serveur VPN. Par défaut, le script générera des informations d'identification VPN aléatoires (Clé Pré-Partagée, Nom d'utilisateur VPN, et mot de passe) pour vous et les afficher à la fin de l'installation.

Cependant, si vous souhaitez utiliser vos propres informations d'identification, vous devez d'abord générer un fort mot de passe et PSK comme montré.

# OpenSSL Rand -Base64 10 # OpenSSL Rand -Base64 16 
Créer des informations d'identification VPN

Ensuite, définissez ces valeurs générées comme décrit dans la commande suivante, toutes les valeurs doivent être placées à l'intérieur 'Guillemets simples' comme montré.

  • Vpn_ipsec_psk - Votre clé pré-partagée IPSec.
  • Vpn_user - Votre nom d'utilisateur VPN.
  • Vpn_password - Votre mot de passe VPN.
---------------- Sur Centos / Rhel ---------------- # wget https: // git.io / vpnsetup-centos -o vpnsetup.sh && vpn_ipsec_psk = 'Kvljedukzo5gbh72sqkoa =='Vpn_user ='Tecmint'Vpn_password ='8dbdippgbcr4wq =='sh vpnsetup.shot ---------------- Sur Debian et Ubuntu ---------------- # wget https: // git.io / vpnsetup -o vpnsetup.sh && vpn_ipsec_psk = 'Kvljedukzo5gbh72sqkoa =='Vpn_user ='Tecmint'Vpn_password ='8dbdippgbcr4wq =='sudo sh vpnsetup.shot 

Les packages principaux qui seront installés sont 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 et Fail2ban (pour protéger SSH), et leurs dépendances respectives. Ensuite, il télécharge, compile et installe les Libreswan à partir de la source, permet et démarre les services nécessaires.

Une fois l'installation terminée, les détails VPN seront affichés comme indiqué dans la capture d'écran suivante.

Configurez votre propre serveur IPSec VPN Linux

Ensuite, vous devez configurer un VPN Client, pour les ordinateurs de bureau ou les ordinateurs portables avec une interface utilisateur graphique, reportez-vous à ce guide: Comment configurer un client VPN L2TP / IPSec sur Linux.

Pour ajouter la connexion VPN dans un appareil mobile tel qu'un Android téléphone, allez à Paramètres -> Réseau et Internet (ou Réseaux sans fil -> Plus) -> Avancé -> VPN. Sélectionnez l'option pour ajouter un nouveau VPN. Le type VPN doit être défini sur Ipsec xauth psk, Ensuite, utilisez la passerelle VPN et les informations d'identification ci-dessus.

Comment ajouter ou supprimer un utilisateur VPN dans Linux

Pour créer un nouveau VPN utilisateur ou mettez à jour un utilisateur VPN existant avec un nouveau mot de passe, téléchargez et utilisez le add_vpn_user.shot script en utilisant la commande wget suivante.

$ wget -o add_vpn_user.sh https: // brut.githubusercontent.com / hwdsl2 / setup-ipsec-vpn / maître / extras / add_vpn_user.sh $ sudo sh add_vpn_user.sh 'username_to_add "user_password' 

Pour supprimer un utilisateur VPN, téléchargez et utilisez le del_vpn_user.shot scénario.

$ wget -o del_vpn_user.sh https: // brut.githubusercontent.com / hwdsl2 / setup-ipsec-vpn / maître / extras / del_vpn_user.sh $ sudo sh del_vpn_user.sh 'username_to_delete' 

Comment mettre à niveau l'installation de Libreswan dans Linux

Vous pouvez mettre à niveau le Libreswan installation en utilisant le vpnupgrade.shot ou vpnupgrade_centos.shot scénario. Assurez-vous de modifier le Swan_ver variable à la version que vous souhaitez installer, dans le script.

---------------- Sur Centos / Rhel ---------------- # wget https: // git.io / vpNupgrade-centos -o vpNupgrade.sh && sh vpnupgrade.shot ---------------- Sur Debian et Ubuntu ---------------- # wget https: // git.io / vpnupgrade -o vpNupgrade.sh && sudo sh vpnupgrade.shot 

Comment désinstaller le serveur VPN dans Linux

Pour désinstaller le VPN installation, effectuez ce qui suit.

Sur Rhel / Centos

# yum supprimer xl2tpd 

Puis ouvrir / etc / sysconfig / iptables Fichier de configuration et supprimer les règles inutiles et modifier / etc / sysctl.confli et / etc / rc.local déposer et supprimer les lignes après le commentaire # Ajouté par le script VPN HWDSL2, dans les deux fichiers.

Sur Debian / Ubuntu

$ sudo apt-get purge xl2tpd 

Ensuite, modifiez / etc / iptables.Configuration des règles déposer et supprimer toutes les règles inutiles. De plus, modifier / etc / iptables / règles.v4 S'il existe.

Puis modifier / etc / sysctl.confli et / etc / rc.local fichiers, supprimez les lignes après le commentaire # Ajouté par le script VPN HWDSL2, dans les deux fichiers. Ne pas enlever sortie 0 S'il existe.

En éventuellement, vous pouvez supprimer certains fichiers et répertoires créés lors de la configuration VPN.

# rm -f / etc / ipsec.conf * / etc / ipsec.Secrets * / etc / PPP / CHAP-Secrets * / etc / PPP / Options.xl2tpd * / etc / pam.D / Pluto / etc / Sysconfig / Pluton / etc / par défaut / Pluton # RM -RF / etc / ipsec.d / etc / xl2tpd 

Pour configurer un VPN basé sur un site à site avec Strongswan, Découvrez nos guides:

  1. Comment configurer un VPN basé sur IPSec avec Strongswan sur Debian et Ubuntu
  2. Comment configurer un VPN basé sur IPSec avec Strongswan sur Centos / Rhel 8

Référence: https: // github.com / hwdsl2 / setup-ipsec-vpn

À ce stade, votre propre serveur VPN est opérationnel. Vous pouvez partager toutes les requêtes ou nous donner des commentaires en utilisant le formulaire de commentaire ci-dessous.