Dans ce tutoriel, je vais configurer un serveur Open VPN sous Docker avec CloudSigma. Avec les emplacements cloud de CloudSigma répartis dans le monde entier, vous pouvez créer un serveur dans n'importe lequel d'entre eux et accéder au contenu à partir de là.
Création de la machine
Tout d'abord, je crée une machine avec les ressources suivantes :
CPU 20 GHz
16 Go de RAM
20 Go de SSD
Je monte le disque avec l'image Ubuntu 18.04 disponible dans la bibliothèque de CloudSigma.
Ubuntu 18.04 : Pré-installé 64 bits avec pilotes VirtIO, superutilisateur, Python 2.7.15, Pip 18.0, OpenSSL 1.1.0i, Cloud-init et dernières mises à jour jusqu'au 2018-09-30.
Mise à jour de tous les dépôts et paquets existants sur la machine.
|
1 2 |
sudo apt update sudo apt upgrade |
Maintenant que notre système est à jour, je vais passer à l'installation de Docker. Pour plus d'informations sur Docker, veuillez consulter ici.
Installation de Docker
Je peux installer Docker en exécutant les commandes suivantes :
|
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 |
sudo apt-get install \ apt-transport-https \ ca-certificates \ curl \ software-properties-common curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add - sudo add-apt-repository \ "deb [arch=amd64] https://download.docker.com/linux/ubuntu \ $(lsb_release -cs) \ stable" sudo apt-get update sudo apt-get install docker-ce |
OpenVPN
Maintenant que Docker est correctement installé, je peux commencer à faire fonctionner OpenVPN Access Server dessus. Voici la commande pour créer un nouveau conteneur Docker d'OpenVPN Access Server avec la configuration spécifiée.
|
1 2 3 4 5 6 7 8 |
docker create \ --name=openvpn-as \ -v <chemin vers donnees>:/config \ -e PGID=<gid> -e PUID=<uid> \ -e TZ=<fuseau_horaire> \ -e INTERFACE=<interface> \ --net=host --privileged \ linuxserver/openvpn-as |
Les commandes suivantes sont mentionnées sur la page de l'image Docker.
Où openvpn-as doit stocker les fichiers de configuration :
|
1 |
-v /config |
Pour le GroupID :
|
1 |
-e PGID |
Utilisé pour l'UserID :
|
1 |
-e PUID |
Pour le réglage du fuseau horaire :
|
1 |
-e TZ |
La configuration de l'interface par défaut pour openvpn-as est eth0 :
|
1 |
-e INTERFACE |
IMPORTANT, pour la plupart des utilisateurs, doit fonctionner en mode hôte :
|
1 |
--net=host |
IMPORTANT, ne fonctionnera pas à moins d'être en mode privilégié :
|
1 |
--privileged |
Pour obtenir l'ID de groupe et l'ID d'utilisateur, exécutez la commande suivante :
|
1 |
id |
Je mentionne le fuseau horaire comme étant le CET.
Pour l'interface, exécutez la commande suivante :
|
1 |
ip r |
L'interface serait généralement ens3 ou eth0. Pour mon système, c'est ens3.
Après avoir ajouté toutes ces choses, j'exécute la commande suivante :
|
1 2 3 4 5 6 7 8 |
sudo docker create --name=openvpn-as \ --restart=always \ -v /home/docker/openvpn-as/config:/config \ -e INTERFACE=ens3 \ -e PGID=1004 -e PUID=1000 \ -e TZ=Europe/Warsaw \ --net=host --privileged \ linuxserver/openvpn-as |
Comme nous n'avons pas encore l'image sur notre système, l'image sera récupérée depuis le serveur. Le résultat sera :
|
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 |
Impossible de trouver l’image 'linuxserver/openvpn-as:latest' localement latest: Téléchargement depuis linuxserver/openvpn-as 56d9dc91333b: Téléchargement complet 1356b0cfc067: Téléchargement complet 155f3c53d4a5: Téléchargement complet 05088c205b6d: Téléchargement complet 112068b0fa4e: Téléchargement complet 2ff5dd4a0d9b: Téléchargement complet 7dd87385ca73: Téléchargement complet d966d969c7cd: Téléchargement complet 4439dbcda217: Téléchargement complet 5f960f89c64e: Téléchargement complet Digest: sha256:d65f743bcec24b6b6ad0b19f9d7876cd70d5237690a940301b2366d6d5767a80 Statut: Téléchargé plus récente image pour linuxserver/openvpn-as:latest f0a1eb5440b5a423f8f21081d8654aaba2c0bd9995d2dea88a979c97ea977e16 |
Démarrage du conteneur avec cette commande :
|
1 |
sudo docker start openvpn-as |
Se connecter
Maintenant que je l’ai démarré, je vais aller sur le panneau d’administration du serveur d’accès.
Accès à l’URL : https://<<YourIpAddress>>:943/admin

Il demandera le nom d’utilisateur et le mot de passe qui sont par défaut :
Nom d’utilisateur: admin
Mot de passe: password

Maintenant que je suis connecté, il me demande si j’accepte le CLUF (Contrat de Licence Utilisateur Final). Je clique sur Accepter et je passe au tableau de bord d’administration.

Il est recommandé de changer le mot de passe du compte administrateur pour des raisons de sécurité. Je le change en utilisant la commande suivante :
|
1 |
docker exec -it openvpn-as passwd admin |
Configuration du DNS
Maintenant que notre serveur est opérationnel, nous voulons y configurer le DNS. Pour plus d’informations sur les serveurs de noms de domaine (DNS), veuillez cliquer ici.
L’un des serveurs DNS les plus rapides est celui de Google. Je vais configurer cela dans mon serveur d’accès OpenVPN, afin que mes clients puissent naviguer facilement sur les sites Web.
Je vais dans les paramètres VPN et, sous les paramètres DNS, je vais activer « Permettre aux clients d’utiliser des serveurs DNS spécifiques ».

Ensuite, je vais saisir les adresses suivantes dans les colonnes du serveur DNS :
Serveur DNS primaire: 8.8.8.8
Serveur DNS secondaire: 8.8.8.4

Enregistrez les paramètres et cliquez sur « Update Running Server ». Cela mettra à jour le serveur en cours d’exécution.
Maintenant que j’ai configuré le serveur avec succès, je peux passer à la connexion au VPN via mon système.
Accès à l’interface utilisateur client sur : https://<<YourIpAddress>>:943.
Saisissez le nom d’utilisateur de l’administrateur, le mot de passe de l’administrateur ou créez un nouvel utilisateur à partir de la section Gestion des utilisateurs (User Management) du panneau d’administration.
Une fois connecté, plusieurs options pour différents systèmes d’exploitation s’offriront à moi. Je sélectionne Windows et télécharge le logiciel client.

Maintenant qu’il est installé, je peux le démarrer depuis le menu Démarrer ou il se lancera automatiquement. Depuis la zone de notification, je peux me connecter au VPN en utilisant le compte que j’ai configuré précédemment.

Et je suis connecté au VPN. Et voilà ! C’est ainsi que l’on crée un serveur VPN sous Docker.
Commentaires
Aucun commentaire pour l'instant. Soyez le premier.