GNU/Linux >> Tutoriels Linux >  >> Ubuntu

Configuration du serveur VPN SoftEther sur Ubuntu 16.04 Xenial Xerus Linux

Présentation

Que vous souhaitiez pouvoir vous connecter à distance à votre réseau d'entreprise ou construire un réseau virtuel entre deux points distants, via un réseau non sécurisé (ex :Internet), vous aurez en quelque sorte besoin d'un VPN (Virtual Private Network). Un VPN vous permet de vous connecter en toute sécurité à un LAN (réseau local) distant via Internet ou des réseaux non fiables.

SoftEther est un serveur VPN Open Source, une alternative à OpenVPN. Il est considéré comme le logiciel VPN multiprotocole le plus puissant et le plus facile à utiliser au monde.
Notre article explique comment configurer SoftEther sur Ubuntu Xenial Xerus Linux.

Ce dont vous aurez besoin

  • Ubuntu 16.04 Xenial Xerus Linux
  • Un espace disque disponible de 30 Go est recommandé
  • Un privilège root

Notez que les binaires utilisés pour cet article sont des architectures x64. Si votre machine n'est pas x64, vous devez choisir les binaires appropriés.

Congrès

# - nécessite que les commandes linux données soient exécutées avec les privilèges root soit directement en tant qu'utilisateur root, soit en utilisant sudo command
$ - nécessite que les commandes linux données soient exécutées en tant qu'utilisateur régulier non privilégié
> - la commande donnée doit être exécutée à partir de l'interface de ligne de commande vpncmd

Préparer le serveur

Mettre à niveau le système :

$ sudo apt update
$ sudo apt upgrade

Installez (si pas encore installé) build-essential à des fins de compilation :

$ sudo apt install build-essential

Installer SoftEther

Récupérer les sources softether

Allons chercher les sources SoftEther (la dernière version est la version 4.22 publiée le 2016-11-27) :

$ wget http://www.softether-download.com/files/softether/v4.22-9634-beta-2016.11.27-tree/Linux/SoftEther_VPN_Server/64bit_-_Intel_x64_or_AMD64/softether-vpnserver-v4.22-9634-beta-2016.11.27-linux-x64-64bit.tar.gz

Décompresser les sources

$ tar xzf softether-vpnserver-v4.22-9634-beta-2016.11.27-linux-x64-64bit.tar.gz

Après une décompression réussie, nous trouvons un dossier nommé vpnserver dans notre répertoire courant.

Installer à partir des sources

$ cd vpnserver
$ sudo make

Lors du processus d'installation, nous devrons taper 1 pour lire le contrat de licence, tapez 1 à nouveau pour confirmer que nous avons lu le contrat de licence et enfin tapez 1 pour accepter le contrat de licence.
Après l'installation, nous pouvons parcourir la sortie pour confirmer que l'ensemble du processus s'est déroulé correctement sans aucune erreur.
Une fois que tout est fait correctement, nous pourrons exécuter le vpn server à partir du dossier d'installation en utilisant cette commande :

$ sudo ./vpnserver start

Faisons mieux en le configurant en tant que daemon .

Configuration en tant que démon

Suivons ces étapes pour configurer notre serveur vpn en tant que daemon .

Déplacez le dossier d'installation vers /usr/local

$ cd ..
$ sudo mv vpnserver /usr/local

Accorder les droits appropriés aux fichiers

$ cd /usr/local/vpnserver/
$ sudo chmod 600 *
$ sudo chmod 700 vpnserver
$ sudo chmod 700 vpncmd

Avant d'aller plus loin, vérifions que le serveur vpn peut fonctionner normalement sur notre serveur. Il est important de faire cette vérification avant de démarrer vpnserver .

  • Exécutez le vpncmd commande
  • Tapez 3
  • Puis tapez check
$ cd /usr/local/vpnserver/
$ sudo ./vpncmd


Si tout est bien fait, nous devrions avoir le message "Tous les contrôles réussis" à la fin de l'opération.

Créer un service systemd

Créez le fichier /lib/systemd/system/vpnserver.service

$ sudo vi /lib/systemd/system/vpnserver.service

Et mettez-y le contenu suivant :

[Unit]
Description=SoftEther VPN Server
After=network.target

[Service]
Type=forking
ExecStart=/usr/local/vpnserver/vpnserver start
ExecStop=/usr/local/vpnserver/vpnserver stop

[Install]
WantedBy=multi-user.target

Maintenant, le serveur VPN démarre automatiquement au démarrage, et nous pouvons gérer le vpnserver en utilisant systemctl .

Préparer le serveur VPN SoftEther pour l'utiliser

SoftEther propose de nombreux cas d'utilisation :VPN Ad-hoc, Accès distant au LAN, Pont LAN à LAN, etc. Dans cet article, nous le configurons pour une utilisation "Accès distant au LAN".
Nous allons d'abord créer un virtual hub , puis faites une sorte de lien entre ce virtual hub et le réseau du serveur (le réseau local de l'entreprise).

Définir un mot de passe administrateur pour vpncmd

Pour des raisons évidentes, il est recommandé de définir immédiatement un mot de passe administrateur pour vpncmd dès que le serveur VPN est installé. Cela se fait via le vpncmd utilitaire :

$ cd /usr/local/vpnserver/
$ sudo ./vpncmd


Comme indiqué dans l'image ci-dessus, nous sélectionnons 1 pour "Gestion du serveur VPN ou du pont VPN", puis appuyez simplement sur Enter pour les questions suivantes jusqu'à ce que nous obtenions VPN Server> rapide. À l'invite de commande, nous tapons ServerPasswordSet .

Créer un hub virtuel

En utilisant vpncmd , nous allons créer un virtual hub nommé "myFirstHUB":

$ cd /usr/local/vpnserver/
$ sudo ./vpncmd
> HubCreate myFirstHUB

Connecter le hub virtuel au réseau du serveur

Afin de permettre aux clients d'accéder au réseau du serveur, nous devons lier le virtual hub au réseau local. Cela peut être fait en utilisant une connexion Local Bridge ou en utilisant le SecureNAT fonction.
Dans notre cas, la fonction SecureNAT fonction sera utilisée. SecureNAT permet d'utiliser le serveur VPN comme passerelle réseau simple, serveur DHCP ou passerelle simple pour accéder à distance à des sites distants.
Sélectionnons notre virtual hub et activez SecureNAT fonction.

$ cd /usr/local/vpnserver/
$ sudo ./vpncmd
> Hub myFirstHUB
> SecureNatEnable

Créer des utilisateurs

Commande pour créer un utilisateur :UserCreate
Après la création de l'utilisateur, nous devons définir un mot de passe. Notez qu'il est possible d'utiliser d'autres méthodes d'authentification :NTLM , RADIUS , etc. La méthode d'authentification par défaut est "password".
Commande pour définir le mot de passe :UserPasswordSet

Paramétrage client

SoftEther fournit des clients pour de nombreux systèmes d'exploitation, y compris Linux.

Télécharger le client

Nous utiliserons wget commande pour télécharger le client.

$ wget http://www.softether-download.com/files/softether/v4.22-9634-beta-2016.11.27-tree/Linux/SoftEther_VPN_Client/64bit_-_Intel_x64_or_AMD64/softether-vpnclient-v4.22-9634-beta-2016.11.27-linux-x64-64bit.tar.gz

Décompresser les sources

$ tar xzf softether-vpnclient-v4.22-9634-beta-2016.11.27-linux-x64-64bit.tar.gz 

Installer à partir des sources

La compilation du client est similaire au serveur.

$ cd vpnclient
$ sudo make

Après l'installation, nous modifions les autorisations des fichiers comme suit :

$ sudo chmod 600 *
$ sudo chmod 700 vpnclient
$ sudo chmod 700 vpncmd

Nous pouvons maintenant démarrer le client VPN et effectuer la configuration requise pour se connecter au serveur.

$ sudo ./vpnclient start
$ sudo ./vpncmd

Sélectionnez 2 pour accéder à « Gestion du client VPN ». Et effectuez ces actions :

  • Créez un adaptateur virtuel (utilisez NiceCreate , donnez "n'importe quel" nom que vous voulez)
  • Créer une connexion VPN (AccountCreate account0 )
  • Spécifiez le nom d'hôte et le numéro de port du serveur de destination (serveur :port)
  • Sélectionnez le virtual hub auquel vous souhaitez vous connecter (dans notre cas nous utilisons "myFirstHUB" créé sur le serveur)
  • Entrez le nom d'utilisateur
  • Utiliser l'adaptateur virtuel créé précédemment


Nous pouvons maintenant lancer la connexion du client VPN. Avant cela, nous devons spécifier le mot de passe de l'utilisateur que nous avons précédemment configuré dans la connexion VPN.

> AccountPassword account0
> standard
> AccountConnect account0



Le client est maintenant connecté mais aucune adresse IP n'est attribuée à l'adaptateur virtuel. Comme dernière étape, nous devons demander une adresse IP au serveur VPN. Nous pouvons utiliser ifconfig commande pour trouver l'adaptateur virtuel vpn (préfixé par vpn_ ) puis utilisez dhclient commande pour demander une adresse IP.

$ sudo dhclient vpn_ethvpn0

Après cette commande, le client VPN obtiendra une adresse IP du serveur VPN SoftEther et pourra communiquer avec le LAN distant.

Merci de votre intérêt pour cet article. Nous apprécions vos questions et améliorations.


Ubuntu
  1. Installez AMDGPU-PRO 16.50 sur Ubuntu 16.04 Xenial Xerus Linux

  2. Comment redémarrer le réseau sur Ubuntu 16.04 Xenial Xerus Linux

  3. Ubuntu Xenial Xerus 16.04 Téléchargement d'image ISO Linux avec zsync

  4. Installation de TeamViewer sur Ubuntu 16.04 Xenial Xerus Linux

  5. Comment installer le lecteur de film Popcorn Time sur Ubuntu 16.04 Xenial Xerus Linux

Comment installer un serveur minimal Ubuntu 16.04 LTS (Xenial Xerus)

Surveillance de serveur avec Munin et Monit sur Ubuntu 16.04 LTS (Xenial Xerus)

Comment installer le serveur VPN Pritunl sur Ubuntu 20.04 LTS

Guide de configuration du serveur SFTP sous Linux

Télécharger Linux Ubuntu 16.04 (Xenial Xerus)

Réglage du fuseau horaire sous Linux