[VPS Oracle] Créez votre propre serveur VPN gratuit à vie
Sommaire
VPS Oracle - Cet article fait partie d'une série.
Introduction #
Cet article fait partie d’une série consacrée à l’hébergement de services gratuits à vie sur un serveur privé. Dans celui-ci je vous présente comment créer votre propre serveur VPN.
C’est quoi un VPN et comment ça marche ? #
Un VPN crée un “tunnel” sécurisé entre votre appareil et un serveur distant, ce serveur peut être géré par un fournisseur grand public (comme NordVPN, CyberGhostVPN,…), par votre entreprise ou dans la cadre de cet article par vous-même !
Toutes les données qui passent par ce tunnel sont chiffrées, ce qui signifie qu’elles sont transformées dans un format illisible pour n’importe quelle personne qui essayerait de les intercepter.
L’objectif d’un VPN est simple : créer un lien virtuel, isolé et sécurisé entre deux points.
- Connexion au VPN : Vous vous connectez à un serveur VPN via une application qu’on appelle le client VPN.
- Chiffrement des données : Toutes les données que vous envoyez et recevez sont chiffrées par le client VPN.
- Transmission via le serveur VPN : Vos données chiffrées sont envoyées au serveur VPN. Ce serveur agit comme un intermédiaire entre votre appareil et Internet.
- Déchiffrement et envoi : Le serveur VPN déchiffre les données et les envoie à leur destination sur Internet (par exemple, un site web).
- Retour des données : Les données retournées à votre appareil passent à nouveau par le serveur VPN, où elles sont chiffrées, envoyées à votre appareil et enfin déchiffrées par votre client VPN pour que vous puissiez les lire.
Plus simplement :
Cas d’usage d’un VPN #
Généralement, on utilise un VPN de 2 façons :
- Dans le cadre professionnel
- Dans le cadre personnel
Cadre professionnel #
Dans le cadre professionnel, un VPN sert généralement à accéder à des ressources d’entreprise (applications, fichiers, …) de façon sécurisée même si l’on se trouve physiquement à l’extérieur de l’entreprise.
Par exemple, pour permettre à ses salariés de faire du télétravail ou à des prestataires d’accéder à certaines ressources, une entreprise mettra en place un VPN client-to-site
:
On peut aussi avoir l’exemple d’une très grosse entreprise avec des filiales à l’étranger. Si des salariés à Paris ont besoin d’accéder à des ressources qui se trouvent à New York ou inversement, ceux-ci utiliseront très certainement un VPN site-to-site
:
Cadre personnel #
Dans le cadre personnel, on utilise généralement un VPN grand public pour être anonyme ou pour accéder à des ressources géo-restreintes. Lorsque l’on souscrit à un abonnement, on peut donc accéder à des serveurs localisés dans plusieurs pays différents en fonction du fournisseur :
Pourquoi utiliser son propre serveur ? #
Comme on l’a vu précédemment celui qui gère le serveur peut consulter les données qui transitent par celui-ci à tout moment, c’est donc le cas pour les gérants de VPN grand public.
Evidemment ceux-ci vous diront le contraire et en feront même un argument commercial, certains le respecte peut-être, mais n’oubliez pas que rien ne les empêche techniquement de vendre vos données sans parler de collaboration avec des instances gouvernementales.
Oui même pour les “VPN no log”, no noob no arnaque.
Bon très bien, peut-être que vous vous avez suivi un bon tuto pour améliorer la protection de votre vie privée sans vous reposer uniquement sur un VPN ou que vous n’avez simplement pas besoin d’un tel niveau de confidentialité.
“Tant que je peux accéder au Netflix US ou Japon je m’en fiche”
Eh bien sachez justement, que les grosses plateformes de Streaming mettent en place de plus en plus de processus pour détecter si vous utilisez un VPN.
Vous pouvez rapidement vous trouver devant ce type de message et ne rien pouvoir y faire.
Je ne rentrerai pas dans les détails techniques de comment Netflix peut détecter si vous utilisez un VPN, voici quelques ressources pour ceux qui veulent creuser :
Solution retenue : OpenVPN #
Saviez-vous que tous les VPN grand public reposent sur les mêmes protocoles de base pour établir un tunnel sécurisé ?
Eh oui ! Si vous regardez la documentation technique de ces VPN vous vous rendrez vite compte qu’en réalité ils utilisent tous les mêmes protocoles :
OpenVPN
IPSec / IKEv2
Wireguard
- …
Vous pouvez même choisir quel protocole utiliser dans les paramètres de certains :
Bien que les services VPN commerciaux offrent commodité et support, la technologie sous-jacente est accessible à tous. Avec un peu de connaissances techniques et de temps, n’importe qui peut mettre en place et utiliser un VPN gratuitement.
C’est exactement ce que nous allons faire avec le protocole OpenVPN
.
Avantages #
Si nous retenons ce protocole c’est parce que celui-ci présente plusieurs avantages :
- Il est open-source, cela veut dire que son code source est disponible publiquement. Il y a donc une totale transparence et une amélioration continue du protocole car n’importe qui peut contribuer au code.
- Il dispose d’une grande communauté, ce qui garantie des mises à jour régulières et une documentation importante.
- Il est multi-plateforme, ce qui permet de l’utiliser simplement sur Windows, MacOS, Linux, Android ou iOS.
- Il est gratuit à vie !
Inconvénients #
Même si cette solution est gratuite, sécurisée et simple, elle présente tout de même certaines limitations :
- le pays du serveur VPN
- le nombre de connexions simultanées
En effet, comme on l’a vu précédemment une entreprise proposant un VPN grand public dispose de plusieurs serveurs dans plusieurs pays. Lorsque vous payez vous pouvez choisir à quel serveur accéder et donc à quel pays.
Dans notre cas nous n’aurons accès qu’à un seul pays → celui où nous créons notre compte Oracle. Lors de la création de votre compte, il vous sera demandé la région à utiliser, vous ne pourrez pas changer une fois le compte créé.
De plus, la documentation d’OpenVPN, précise que vous êtes limité à 2 connexions gratuites simultanées
.
En comparaison, des offres comme CyberGhost VPN vous donne accès à 7 connexions simultanées ou NordVPN à 10 connexions simultanées.
Pour une utilisation personnelle
, l’offre gratuite d’OpenVPN est donc tout à fait convenable.
Pour une utilisation familiale
, il faudra peut-être s’orienter vers des solutions grand public.
Bien, maintenant que vous savez tout, commençons !
Création du serveur OpenVPN #
→ Lire l'introduction de la série
Création de l’instance #
Pour commencer, nous allons devoir créer une instance. Ce qui est bien avec Oracle Cloud, c’est sa marketplace, voyez ça comme une boutique en ligne.
Dans la marketplace on peut trouver des images de VMs avec des instances déjà configurées.
Et ça tombe bien il existe une image pour faire son propre serveur OpenVPN, c’est ce que nous allons utiliser !
Rendez-vous sur cette page et cliquez sur “Get App” :
Sélectionnez l’option “Commercial Market” et connectez-vous en cliquant sur “Sign in” :
Comme vous le voyez cette image est totalement gratuite !
Acceptez les conditions d’utilisations d’Oracle et cliquez sur “Launch Instance” :
Vous arriverez sur la page de création de l’instance, tout est déjà fait pour vous !
Cette instance utilise une VM de type Standard.E2 Micro, elle dispose par défaut :
- 1 OCPU
- 1 Go de RAM
- 47 Go d’espace de stockage
- OS : Ubuntu
Ici je donne simplement un nom à la VM mais je ne touche à rien d’autre :
Vous pouvez créer l’instance :
Une fois l’instance créée et prête à être utilisée, notez bien son adresse IP :
ubuntu
n’est pas autorisé à se connecter à distance sur cette VM, un autre utilisateur a été créé spécialement : openvpnas
Connectez-vous à votre instance avec cet utilisateur via la commande SSH :
ssh openvpnas@[IP_de_votre_VM] -i [cle_ssh]
Installation de OpenVPN #
Lors de votre 1ère connexion, OpenVPN vous demandera d’accepter ces conditions générales d’utilisations (EULA) :
Tapez “yes” pour accepter :
OpenVPN vous posera plusieurs questions pour sa configuration, vous pouvez simplement appuyer sur Entrée à chaque question afin de valider la configuration par défaut :
Après quelques questions, OpenVPN vous demandera quel utilisateur peut accéder au panel admin, vous pouvez laisser l’utilisateur openvpnas
.
Vous devrez ensuite lui assigner un mot de passe et le confirmer :
Après avoir renseigné l’utilisateur et son mot de passe, OpenVPN finira son installation et affichera des informations pour se connecter au panel admin :
Nous allons donc configurer le firewall.
Configuration du firewall #
Voici les ports à ouvrir :
Sur Oracle on obtient ceci :
Vous pouvez maintenant vous connecter au panel admin d’OpenVPN via l’url : https://[IP_de_votre_VM]/admin
Continuer sur l’application :
Connectez-vous avec l’utilisateur que vous avez créé précédemment :
Et acceptez les EULA (encore) :
Configuration du VPN #
Nous allons maintenant configurer le serveur OpenVPN.
Tout d’abord, OpenVPN renseigne l’adresse IP de votre subnet (celle qui commence par 10.0…) comme IP par défaut, or personne ne pourra y accéder, il faut renseigner celle de votre VM dans les paramètres réseaux :
Il faudra ensuite autoriser le trafic Internet à être routé par le serveur OpenVPN et à bien renseigner des DNS publics, ici ceux de CloudFlare, dans les paramètres du VPN :
Créez un utilisateur qui sera autorisé à utiliser le serveur OpenVPN et qui pourra se connecter automatiquement :
Enfin mettez à jour le serveur :
Il faut attendre quelques secondes le temps que le serveur prenne en compte ces changements. Et voilà, votre serveur OpenVPN est prêt à être utilisé !
Utilisation de son VPN #
Vous pouvez désormais utiliser votre propre serveur VPN, pour vous connecter à celui-ci 2 solutions possibles :
- Installer un client OpenVPN déjà configuré
- Installer un client OpenVPN et le configurer vous-même
Installation d’un client OpenVPN déjà configuré #
Rendez-vous sur l’url https://[IP_de_votre_VM]
avec votre compte utilisateur :
Vous pourrez télécharger un client OpenVPN déjà paramétré sur l’OS désiré :
Une fois téléchargé, installez le client (suivez les étapes de l’installateur) :
Et voilà ! Le client “OpenVPN Connect” est bien installé sur votre machine avec votre profil déjà paramétré :
Vous n’avez plus qu’à cliquer sur le bouton pour utiliser votre serveur VPN :
Installation d’un client OpenVPN et le configurer soi-même #
Si vous n’installez pas le client OpenVPN déjà paramétré alors il faudra le faire soi-même.
Téléchargez le client sur : https://openvpn.net/client/
Installez le client et renseignez l’url de votre serveur :
Acceptez le certificat :
Renseignez les identifiants du compte utilisateur :
Cliquez sur Import et voilà ! Vous pouvez désormais vous connecter :
Partager l’accès à son serveur VPN #
Si vous voulez partager l’accès à votre serveur VPN sans pour autant donner le mot de passe du compte utilisateur, vous pouvez partager le profil de celui-ci :
Vous obtiendrez ce type de fichier :
La personne qui voudra accéder à votre serveur VPN n’aura qu’à télécharger le client OpenVPN et à importer le profil :
Test du VPN #
Vous pouvez maintenant tester le bon fonctionnement de votre VPN avec le site WhatIsMyIPAddress.
Sans VPN, vous voyez bien l’adresse IP de mon FAI et ma localisation approximative :
Avec VPN, vous voyez bien que l’adresse IP détectée par le site est celle de mon serveur OpenVPN et que le FAI ainsi que la localisation correspondent au serveur Oracle :
Le serveur OpenVPN est donc bien opérationnel !
Conclusion #
Dans cet article, je vous ai présenté comment créer votre propre serveur OpenVPN gratuit à vie en utilisant l’offre “Always Free” d’Oracle Cloud Infrastructure.
L’objectif était de vous fournir des connaissances pratiques tout en vous initiant au domaine des réseaux et de la sécurité informatique.
Après la lecture de cet article, vous savez désormais :
- Ce qu’est un VPN
- Comment fonctionne un VPN
- Les différents types de VPN
- Créer votre propre serveur VPN gratuit à vie
J’espère que vous aurez apprécié la lecture de l’article, si c’est le cas n’hésitez pas à le liker et à le partager à vos amis ou collègues qui pourraient être intéressés !