Serveur VPN gratuit sur Oracle Cloud Free Tier : configuration pas à pas 2026
Apprenez à installer votre VPN personnel sur Oracle Cloud Free Tier de A à Z en 1 à 2 heures. Guide complet pour débutants : inscription, réseau, serveur, WireGuard, clients, tests, dépannage. Résultat : un VPN rapide et sécurisé sans abonnement.
Contenu de l'article
- Introduction
- Préparatifs
- Notions de base
- Étape 1 : inscription à oracle cloud free tier et préparation du compte
- Étape 2 : création du réseau vcn, sous-réseaux, routes et règles de sécurité
- Étape 3 : création d’un serveur always free sous ubuntu
- Étape 4 : sécurisation de base et préparation du système
- Étape 5 : installation et configuration de wireguard
- Étape 6 : ajout des clients, génération des configs et connexion
- Vérification finale
- Erreurs courantes et solutions
- Fonctionnalités avancées
- Faq
- Conclusion
Introduction
Dans ce guide pas à pas, vous allez déployer votre propre serveur VPN gratuit sur Oracle Cloud Free Tier et connecter votre téléphone ainsi que votre ordinateur. Nous allons parcourir tout le processus : de l'inscription sur Oracle à l'installation de WireGuard, la distribution des configurations aux clients, les tests et la résolution des erreurs courantes. À la fin, vous disposerez d'un VPN personnel avec une IP publique dédiée, utilisable pour un accès sécurisé à internet, la protection sur les Wi-Fi publics et le contournement des restrictions.
Ce guide s'adresse aux débutants, mais comprend aussi des sections avancées : configuration IPv6, renforcement de la sécurité serveur, protocoles alternatifs (OpenVPN, IKEv2), automatisation et sauvegarde. Vous n'avez pas besoin d'être administrateur système : il suffit de suivre attentivement les instructions et de saisir les commandes telles qu'elles sont écrites.
Prérequis : notions basiques d’utilisation du navigateur, copier-coller de commandes dans le terminal, compréhension de ce que sont un identifiant et un mot de passe. Une expérience Linux n’est pas obligatoire — toutes les commandes sont fournies intégralement.
Durée : 60 à 120 minutes. La plupart du temps est consacré à l’inscription initiale, aux validations et à la configuration réseau soignée.
Préparatifs
Avant de démarrer, assurez-vous de disposer du nécessaire.
Outils et accès requis
- Un email personnel avec accès à la boîte mail.
- Un téléphone mobile pour les validations.
- Documents/carte bancaire pour la vérification du compte Oracle (obligatoire pour activer le Free Tier ; aucun prélèvement si vous choisissez Always Free).
- Un ordinateur avec navigateur et connexion internet stable.
- Client SSH : sur Windows, utiliser OpenSSH intégré à PowerShell ou tout autre terminal ; sur macOS/Linux, le terminal natif.
Configuration système requise
- Un région Oracle Cloud supportée avec capacité disponible en Free Tier.
- Pour le client : un téléphone iOS ou Android, et/ou un PC Windows/macOS/Linux pour se connecter au VPN.
Ce qu’il faut télécharger ou installer
- L’application WireGuard sur téléphone et ordinateur (à télécharger après réception des configurations).
- Optionnel : un générateur de QR codes sur le serveur (le paquet qrencode sera installé via commande).
Sauvegardes
Pour le moment, rien à sauvegarder. Une fois la configuration terminée, vous sauvegarderez les clés et les configurations des clients. Nous montrerons une méthode simple pour les stocker en toute sécurité.
Notions de base
Termes clés
- VPN — tunnel sécurisé entre votre appareil et le serveur. Il chiffre le trafic et masque votre véritable IP.
- WireGuard — protocole VPN moderne et rapide basé sur UDP. Simple, sécurisé, compatible smartphones et PC.
- Oracle Cloud Free Tier — niveau gratuit du cloud Oracle. Permet de faire tourner gratuitement de petites machines virtuelles en permanence.
- VCN — réseau cloud virtuel chez Oracle. C’est l’équivalent d’un réseau privé où vivent vos serveurs.
- NSG/Listes de sécurité — règles de pare-feu dans le cloud qui définissent quels ports sont ouverts depuis l’extérieur.
- IP publique — adresse externe du serveur. Les clients s’en servent pour se connecter au VPN.
Comment ça marche
Vous créez une machine virtuelle (serveur) sur Oracle, lui attribuez une IP publique, installez WireGuard et ouvrez le port UDP 51820 dans les règles réseau. Votre téléphone et votre ordinateur reçoivent les configurations avec leurs clés et se connectent au serveur. Tout le trafic transite via le tunnel VPN, est chiffré puis ressort sur internet avec l’IP du serveur.
Points importants à comprendre
- Il faut deux couches de pare-feu : système (sur le serveur) et cloud (NSG/listes de sécurité). Les deux doivent autoriser le port requis.
- Le Free Tier est limité en ressources. Choisissez un stack léger (WireGuard) et un nombre minimal de services.
- Sécurité : préférez les clés SSH au mot de passe, mettez régulièrement à jour le système et n’ouvrez pas trop de ports.
Étape 1 : inscription à Oracle Cloud Free Tier et préparation du compte
Objectif
Créer un compte Oracle Cloud, activer l’accès Free Tier et entrer dans la console.
Instructions
- Ouvrez le site Oracle Cloud et commencez l’inscription au Free Tier. Indiquez pays, email, mot de passe.
- Confirmez l’email via le code reçu par courrier.
- Remplissez le profil : nom, adresse, téléphone. Choisissez une région par défaut. Astuce : vous pourrez changer cette région lors de la création de ressources ; privilégiez une région où le Free Tier est souvent disponible.
- Associez une carte bancaire pour vérification. Ceci est standard. Aucun prélèvement si vous utilisez Always Free.
- Patientez la confirmation et la connexion à la console Oracle Cloud.
- En haut à droite, vérifiez que la région choisie est correcte (par exemple Frankfurt, Amsterdam, London). Si pas de capacité dispo, essayez une autre région.
- Créez un compartment (conteneur logique) distinct pour le VPN : menu navigation, Identity and Security, Compartments, Create Compartment. Nommez-le vpn et sauvegardez.
- Vérifiez les quotas Free Tier : ouvrez Governance and Administration, Limits, Quotas and Usage. Cherchez Compute et assurez-vous que des formes Always Free (Ampere A1 ou E2 Micro) sont disponibles.
⚠️ Attention : Si lors de la création de l’instance vous recevez un message d’indisponibilité de capacité, changez de région. C’est fréquent dans les régions populaires. Ne baissez pas les bras dès la première fois.
Résultat attendu
Vous êtes connecté à la console Oracle Cloud, avez créé le compartment vpn, choisi la région et le Free Tier est accessible.
Problèmes possibles et solutions
- Pas de confirmation d’email — vérifiez spam, renvoyez le mail.
- Carte non acceptée — essayez une autre carte ou patientez quelques heures.
- Free Tier indisponible — terminez la vérification de profil et réessayez via la console.
✅ Vérification : En haut, vous voyez le compte actif, la région sélectionnée, et vpn dans la liste des compartments.
Étape 2 : création du réseau VCN, sous-réseaux, routes et règles de sécurité
Objectif
Configurer un réseau virtuel à travers lequel le serveur sera accessible depuis internet et pourra sortir en réseau.
Instructions
- Dans le menu Networking, choisissez Virtual Cloud Networks. Cliquez sur Create VCN.
- Sélectionnez Create VCN with Internet Connectivity (l’assistant crée la passerelle internet et la table de routage).
- Nom : vcn-vpn, compartment vpn, laissez le CIDR par défaut 10.0.0.0/16. Validez par Create.
- Dans le VCN, créez un sous-réseau public : dans Subnets, Create Subnet, nom subnet-public, type Public, CIDR 10.0.0.0/24. Choisissez Availability Domain ou Regional (préférez Regional).
- Vérifiez que l’Internet Gateway est attachée au VCN et qu’une route 0.0.0.0/0 passe par cette passerelle dans la Route Table.
- Créez un Network Security Group (NSG) pour le VPN : Network Security Groups, Create. Nommez-le nsg-vpn.
- Ajoutez règles NSG : Ingress UDP 51820 depuis 0.0.0.0/0 (pour WireGuard). Ingress TCP 22 depuis votre IP ou 0.0.0.0/0 pour SSH (limitez de préférence à votre IP). Ingress UDP 500 et 4500 (pour IKEv2 futur). Ingress UDP 1194 (pour OpenVPN futur). Egress : Allow All 0.0.0.0/0.
- Si vous utilisez des Security Lists au lieu des NSG, ajoutez ces règles dans la Security List de la sous-réseau.
- Sauvegardez les modifications. Vérifiez que le subnet public utilise bien la table de routage et le NSG configurés.
Astuce : Préférez les NSG aux listes de sécurité : il est plus simple d’assigner des règles différentes par instance sans modifier tout le subnet.
⚠️ Attention : N’ouvrez pas plus de ports que nécessaire. Pour WireGuard, seul UDP 51820 et SSH 22 sont strictement indispensables. Les autres ports peuvent être ajoutés plus tard si besoin.
Résultat attendu
Vous avez un VCN avec subnet public, Internet Gateway, table de routage et NSG autorisant UDP 51820 et SSH 22.
Problèmes possibles et solutions
- Pas d’internet depuis le subnet — vérifiez que la route 0.0.0.0/0 pointe vers l’Internet Gateway.
- Port fermé — assurez-vous que la règle est bien dans le NSG et que le NSG sera attaché à l’instance à l'étape 3.
✅ Vérification : La fiche VCN affiche l’Internet Gateway, la Route Table avec la route 0.0.0.0/0 et le NSG avec les règles attendues.
Étape 3 : création d’un serveur Always Free sous Ubuntu
Objectif
Lancer une instance virtuelle gratuite sur Oracle Cloud avec IP publique et accès SSH.
Instructions
- Allez dans Compute, Instances. Cliquez sur Create Instance.
- Nom : vpn-wg, Compartment : vpn.
- Image : choisissez Ubuntu 22.04 LTS (si vous optez pour Ampere A1, préférez une image ARM64). Ubuntu 24.04 LTS est aussi ok si disponible et familier.
- Shape : cliquez sur Change shape. Sélectionnez une forme Always Free éligible comme VM.Standard.A1.Flex (Ampere A1) ou VM.Standard.E2.1.Micro. Pour A1, configurez 1 OCPU et 1 à 2 GB RAM, pour E2.micro c’est automatique. Cochez Always Free eligible.
- Networking : choisissez le VCN vcn-vpn et le subnet subnet-public. Cochez Assign a public IPv4 address. Astuce : Après création, réservez l’IP publique en Reserved Public IP pour qu’elle reste fixe au redémarrage.
- Network Security Groups : sélectionnez nsg-vpn.
- Clés SSH : générez une paire de clés sur votre machine si vous n’en avez pas : sur Windows PowerShell, lancez ssh-keygen, sur macOS/Linux pareil. Uploadez la clé publique ou collez le contenu de ~/.ssh/id_rsa.pub ou ~/.ssh/id_ed25519.pub.
- Boot volume : laissez la taille standard de 50 GB ou réduisez à 20 GB (pas d’impact Free Tier, mais inutile d’espacer l’espace disque).
- Cliquez sur Create. Patientez que le statut soit Running.
- Copiez l’adresse IPv4 publique depuis la fiche de l’instance, exemple : 129.146.XX.XX.
- Connectez-vous en SSH : sous Windows ouvrez PowerShell et tapez : ssh ubuntu@ADRESSE_IP_PUBLIQUE. Sous macOS/Linux c’est pareil. Si votre clé privée est non standard, précisez-la : ssh -i ~/.ssh/id_ed25519 ubuntu@ADRESSE_IP_PUBLIQUE.
Astuce : Si vous ne parvenez pas à vous connecter sur SSH, ouvrez temporairement le port 22 en Ingress depuis n’importe où dans NSG, connectez-vous puis resserrez la règle à votre IP.
Résultat attendu
L’instance est créée et lancée, elle possède une IP publique et vous vous connectez avec succès via SSH sous l’utilisateur ubuntu.
Problèmes possibles et solutions
- Accès refusé (publickey) — vérifiez que la clé publique correspond bien à la clé privée utilisée pour la connexion.
- Délai de connexion expiré — assurez-vous que l’instance est Running, qu’elle a une IP publique, que le port 22 est autorisé dans NSG/sécurité, et que votre fournisseur ne bloque pas la sortie sur le port TCP 22.
- Pas d’instance Always Free disponible — changez de région et réessayez.
✅ Vérification : La commande uname -a sur le serveur retourne des infos sur le noyau Linux, ip a affiche les interfaces réseau et adresses.
Étape 4 : sécurisation de base et préparation du système
Objectif
Mettre à jour l’OS, créer un utilisateur admin, renforcer SSH, installer un pare-feu basique et activer le forwarding des paquets.
Instructions
- Mettez à jour le système : sudo apt update && sudo apt -y upgrade. Attendez la fin.
- Créez un utilisateur admin séparé (optionnel mais recommandé) : sudo adduser admin, définissez un mot de passe, puis sudo usermod -aG sudo admin.
- Copiez la clef SSH vers ce nouvel utilisateur : en étant connecté sous ubuntu, lancez sudo rsync -a ~/.ssh /home/admin/ && sudo chown -R admin:admin /home/admin/.ssh.
- Optionnel : désactivez la connexion par mot de passe et n’autorisez plus que les clés. Editez : sudo nano /etc/ssh/sshd_config, modifiez PasswordAuthentication no, PermitRootLogin no, sauvegardez et appliquez : sudo systemctl reload ssh.
- Installez UFW (firewall simple) : sudo apt -y install ufw. Autorisez SSH : sudo ufw allow 22/tcp.
- Ne l’activez pas encore. Nous ajouterons la règle WireGuard après, puis l’activerons pour ne pas perdre l’accès.
- Activez le routage IP pour le NAT futur : éditez sudo nano /etc/sysctl.conf, décommentez ou ajoutez les lignes : net.ipv4.ip_forward=1 et net.ipv6.conf.all.forwarding=1 si nécessaire. Appliquez : sudo sysctl -p.
- Vérifiez que l’architecture ARM64 (Ampere A1) ou AMD64 (E2.micro) est bien détectée : uname -m doit répondre aarch64 ou x86_64.
Astuce : si vous avez un doute en modifiant les configs, faites une copie avant changement : sudo cp /etc/ssh/sshd_config /etc/ssh/sshd_config.bak.
Résultat attendu
Le système est à jour, un second user admin est créé (optionnel), SSH est sécurisé, et le forwarding IP activé.
Problèmes possibles et solutions
- Perte d’accès SSH après modifs — reconnectez-vous via la console série Oracle, restaurez la copie de config : sudo mv /etc/ssh/sshd_config.bak /etc/ssh/sshd_config && sudo systemctl restart ssh.
- Forwarding non activé — vérifiez sysctl net.ipv4.ip_forward, la valeur doit être 1.
✅ Vérification : La commande sysctl net.ipv4.ip_forward retourne net.ipv4.ip_forward = 1, la session SSH est ouverte.
Étape 5 : installation et configuration de WireGuard
Objectif
Déployer le serveur WireGuard, ouvrir les ports nécessaires, configurer le NAT et préparer la configuration de base des clients.
Instructions
- Installez WireGuard : sudo apt -y install wireguard qrencode. Le paquet qrencode sert à générer les QR codes des configs.
- Générez les clés du serveur : sudo umask 077; wg genkey | sudo tee /etc/wireguard/server.key | wg pubkey | sudo tee /etc/wireguard/server.pub. Affichez la clé publique : sudo cat /etc/wireguard/server.pub. Sauvegardez-la précieusement, elle servira pour le debug.
- Choisissez un plan d’adressage VPN. Nous recommandons 10.6.0.0/24 pour IPv4 et fd42:42:42::/64 pour IPv6 (optionnel). L’adresse du serveur dans le tunnel sera 10.6.0.1 et fd42:42:42::1.
- Créez le fichier de config serveur : sudo nano /etc/wireguard/wg0.conf. Collez : [Interface] Address = 10.6.0.1/24 ListenPort = 51820 PrivateKey = CONTENU_DU_/etc/wireguard/server.key PostUp = iptables -t nat -A POSTROUTING -s 10.6.0.0/24 -o eth0 -j MASQUERADE; iptables -A FORWARD -i wg0 -j ACCEPT; iptables -A FORWARD -o wg0 -j ACCEPT PostDown = iptables -t nat -D POSTROUTING -s 10.6.0.0/24 -o eth0 -j MASQUERADE; iptables -D FORWARD -i wg0 -j ACCEPT; iptables -D FORWARD -o wg0 -j ACCEPT. Si votre interface n’est pas eth0, trouvez son nom avec ip route get 1.1.1.1 et remplacez-le (exemple ens3).
- Ouvrez le port dans UFW : sudo ufw allow 51820/udp. Activez le firewall : sudo ufw --force enable. Vérifiez le statut : sudo ufw status verbose. Vous devez voir les règles pour 22/tcp et 51820/udp.
- Autorisez le routage dans UFW : éditez sudo nano /etc/ufw/sysctl.conf, assurez-vous que net/ipv4/ip_forward=1 est bien présente. Ajoutez les règles NAT dans /etc/ufw/before.rules juste avant le bloc COMMIT de la table *nat : ajoutez *nat :POSTROUTING ACCEPT [0:0] -A POSTROUTING -s 10.6.0.0/24 -o eth0 -j MASQUERADE COMMIT. Remplacez eth0 par le nom de votre interface réseau. Rechargez UFW : sudo ufw reload.
- Activez WireGuard : sudo systemctl enable --now wg-quick@wg0. Vérifiez : sudo systemctl status wg-quick@wg0, il doit être Active.
- Vérifiez le statut : sudo wg show. L’interface wg0 doit apparaître, le port 51820 doit être en écoute.
Astuce : si vous préférez nftables au lieu d’iptables, adaptez les commandes PostUp/PostDown avec nft, en vérifiant que UFW ne rentre pas en conflit. Pour débuter, il est plus simple de rester avec iptables comme ici.
⚠️ Attention : Ne publiez jamais la clé privée du serveur (/etc/wireguard/server.key), elle donne un contrôle total sur le tunnel.
Résultat attendu
WireGuard est lancé, le port 51820 est ouvert dans UFW et NSG, le NAT est configuré et l’interface wg0 est active.
Problèmes possibles et solutions
- Le service ne démarre pas — vérifiez les permissions du fichier server.key (600), la syntaxe dans wg0.conf et le nom de l’interface externe dans les règles NAT.
- Port fermé — lancez sudo ss -lunp | grep 51820, vérifiez NSG et le statut UFW.
- Pas d’internet dans le tunnel — vérifiez les règles MASQUERADE, le forwarding IP et la table de routage.
✅ Vérification : La commande sudo wg show affiche l’interface wg0 avec ListenPort 51820, et curl ifconfig.me sur le serveur renvoie l’IP publique (simple test de connectivité).
Étape 6 : ajout des clients, génération des configs et connexion
Objectif
Créer les configurations pour téléphone et PC, les intégrer sur le serveur et se connecter au VPN.
Instructions
- Identifiez l’IP publique ou nom de domaine du serveur. Prenez l’IPv4 affichée dans la fiche de l’instance. Si vous avez réservé cette adresse, elle est stable, sinon faites-le dans IP Addresses.
- Générez les clés du client n°1 (par exemple pour le téléphone) : wg genkey | tee client1.key | wg pubkey | tee client1.pub. Conservez-les en lieu sûr.
- Définissez l’adresse du client dans le réseau VPN : 10.6.0.2/32. Le client suivant aura 10.6.0.3/32, etc.
- Ajoutez ce client dans le fichier serveur : sudo nano /etc/wireguard/wg0.conf et rajoutez à la fin : [Peer] PublicKey = CONTENU client1.pub AllowedIPs = 10.6.0.2/32. Sauvegardez et appliquez : sudo wg syncconf wg0 <(sudo wg-quick strip wg0) ou redémarrez simplement : sudo systemctl restart wg-quick@wg0.
- Créez le fichier de config client : nano client1.conf. Insérez : [Interface] PrivateKey = CONTENU client1.key Address = 10.6.0.2/32 DNS = 1.1.1.1 [Peer] PublicKey = CONTENU /etc/wireguard/server.pub AllowedIPs = 0.0.0.0/0 Endpoint = IP_PUBLIQUE:51820 PersistentKeepalive = 25. Sauvegardez. Astuce : si vous ne souhaitez passer que certains réseaux par VPN, indiquez les préfixes dans AllowedIPs, ex. 10.10.0.0/16 au lieu de 0.0.0.0/0.
- Générez un QR code pour le téléphone : qrencode -t ansiutf8 < client1.conf pour l’afficher dans le terminal, ou qrencode -o client1.png < client1.conf pour créer une image.
- Installez WireGuard sur smartphone via l’app store, ouvrez l’app, cliquez sur ajouter un tunnel, sélectionnez Scanner QR code, puis pointez la caméra sur le QR affiché ou sur client1.png. Sauvegardez le profil.
- Sur PC, installez le client WireGuard, importez le fichier client1.conf via l’interface, et activez le tunnel.
- Ajoutez le client n°2 (par exemple un portable) de la même façon : créez les clés client2.key/pub, adresse 10.6.0.3/32, ajoutez le Peer dans wg0.conf, créez client2.conf et importez-le dans l’application.
Astuce : Pour iOS et Android, le QR code est plus pratique. Sur Windows/macOS/Linux, préférez le fichier de configuration.
Résultat attendu
Les clients se connectent avec succès au serveur WireGuard. Sur téléphone ou PC, l’activation du tunnel dirige le trafic via le VPN.
Problèmes possibles et solutions
- Handshake impossible — vérifiez la correspondance des clés, le port UDP 51820 dans NSG et UFW, l’adresse Endpoint et que le client a une connexion internet.
- Connexion établie mais pas d’internet — contrôlez le NAT MASQUERADE, l’activation du forwarding et que AllowedIPs client soit bien 0.0.0.0/0 (pour tunnel complet).
- Déconnexions intermittentes — ajoutez PersistentKeepalive=25 dans le client, assurez-vous que le fournisseur ne bloque pas UDP.
✅ Vérification : Sur le serveur, lancez sudo wg show — dans la section peer, vous verrez votre client avec son dernier handshake et compteur de transfer. Sur le client, ouvrez un site web et vérifiez que l’IP vue correspond à celle du serveur.
Vérification finale
Checklist
- Instance Oracle en statut Running avec IP publique.
- VCN et subnet configurés, route 0.0.0.0/0 vers Internet Gateway.
- NSG/listes de sécurité autorisent UDP 51820 et SSH 22.
- WireGuard lancé, interface wg0 active.
- Clients connectés, trafic passant par le VPN.
Comment tester
- Sur le serveur : sudo wg show, vous devez voir un latest handshake récent.
- Sur le client : vérifiez votre IP publique, elle doit être celle du serveur Oracle.
- Testez la vitesse. WireGuard offre souvent un bon débit même en Free Tier.
Indices de réussite
- Connexion client en 1–2 secondes sans erreur.
- Compteurs de trafic augmentent à la navigation.
- Fonctionnement stable 10–15 minutes sans coupures.
Erreurs courantes et solutions
- Problème : client ne se connecte pas. Cause : port 51820 bloqué par NSG ou UFW. Solution : vérifiez règles NSG, commande sudo ufw status, ouvrez sudo ufw allow 51820/udp.
- Problème : connexion établie mais pas d’internet. Cause : absence de NAT ou forwarding IP désactivé. Solution : vérifiez sysctl net.ipv4.ip_forward et règles MASQUERADE, redémarrez wg-quick.
- Problème : serveur n’écoute pas le port. Cause : erreur syntaxe dans wg0.conf. Solution : vérifiez fichier, retirez espaces et caractères incorrects, recréez avec un template minimal.
- Problème : après activation UFW, perte d’accès SSH. Cause : port 22 non autorisé avant activation. Solution : sur console instance lancez sudo ufw allow 22/tcp && sudo ufw reload.
- Problème : connexion instable via réseau mobile. Cause : NAT opérateur trop restrictif sur UDP. Solution : mettez PersistentKeepalive=25, essayez port 53/udp ou 443/udp (n’oubliez pas la mise à jour NSG et UFW).
- Problème : IP publique change aléatoirement. Cause : adresse non réservée. Solution : créez et attachez un Reserved Public IP dans Oracle.
- Problème : indisponibilité dans certains pays. Cause : géoblocage côté ressources. Solution : changez la région de l’instance vers une plus proche de l’audience.
- Problème : faible performance. Cause : région éloignée, surcharge de la bande passante, Wi-Fi faible. Solution : choisissez une région proche, testez en câble ou Wi-Fi 5 GHz, désactivez téléchargements en arrière-plan.
- Problème : erreurs de permissions sur les clés. Cause : mauvaise protection. Solution : sudo chmod 600 /etc/wireguard/server.key, propriétaire root.
- Problème : client ne voit pas le réseau local. Cause : routes manquantes. Solution : ajoutez les sous-réseaux locaux dans AllowedIPs du client, configurez les routes correspondantes sur le serveur.
Fonctionnalités avancées
Sécurité renforcée
- Fail2ban pour protéger SSH : sudo apt -y install fail2ban, configurez un jail pour sshd.
- Limiter l’accès SSH par IP via NSG — laissez uniquement votre adresse domestique ou bureau.
- Changer le port SSH : modifiez /etc/ssh/sshd_config pour un port personnalisé, ajustez NSG et UFW.
IPv6
Si votre région Oracle supporte IPv6, ajoutez dans la section [Interface] du serveur Address = fd42:42:42::1/64, et pour les clients donnez-leur des /128 personnels. Dans AllowedIPs, ajoutez ::/0 pour tunnel IPv6 complet. Vérifiez sysctl net.ipv6.conf.all.forwarding=1 et ajoutez NAT66 uniquement si nécessaire — souvent, le routage suffit.
Protocoles alternatifs
- OpenVPN : meilleure compatibilité avec anciens appareils, mais plus lourd. Installez openvpn, générez le profil serveur, ouvrez le port 1194/udp. N’oubliez pas NAT et forwarding.
- IKEv2 (strongSwan) : support natif sur iOS/macOS/Windows, haute qualité, gestion des certificats complexe. Ouvrez UDP 500 et 4500, configurez strongSwan et profils clients.
Obfuscation et contournement du DPI
Si votre réseau applique un DPI strict, vous pouvez passer WireGuard sur le port 443/udp ou utiliser des obfuscateurs UDP. Certains clients supportent le renommage du port et des tunnels externes.
DNS personnel et blocage de pub
Installez un relais DNS léger ou Pi-hole sur la même instance. Indiquez son adresse dans le champ DNS des clients. Attention à la consommation mémoire.
Sauvegardes et clés
- Exportez /etc/wireguard et sauvegardez-le en lieu sûr : sudo tar czf wg-backup.tgz /etc/wireguard.
- Conservez les clés privées des clients et du serveur dans un gestionnaire de mots de passe sécurisé.
Automatisation et Infrastructure as Code
- cloud-init : ajoutez un user-data lors de la création de l’instance pour déployer WireGuard automatiquement.
- Terraform : décrivez VCN, subnets, NSG, instance et IPs en code. Cela facilite restauration et migration entre régions.
Surveillance
- Installez prometheus-node-exporter ou un outil léger comme netdata pour surveiller la charge (respectez les ressources Free Tier).
- Vérifiez régulièrement systemctl status et les logs journalctl -u wg-quick@wg0.
Astuce : Programmez un rappel mensuel pour vérifier les mises à jour : sudo apt update && sudo apt -y upgrade.
Astuce : Si vous envisagez plusieurs instances dans différentes régions, appliquez des règles NSG et modèles wg0.conf uniformes pour simplifier la gestion.
Alternative DIY quand on manque de temps
Si vous avez besoin d’un VPN personnel « à l’instant », sans déploiement et debug dans la console, pensez au service vpn.how. Ce n’est pas un partage commun, mais un serveur VPN dédié avec IP assignée. Plusieurs protocoles disponibles : WireGuard, OpenVPN, IKEv2, L2TP, SSTP — vous choisissez selon l’usage. Nombreux emplacements sont proposés : Moscou, Saint-Pétersbourg, Amsterdam, Francfort, Londres, New York, San José, Chicago, Singapour, Sydney, Madrid, Helsinki, Stockholm, Varsovie, Copenhague, Stavanger. Paiements acceptés en cartes russes (Tinkoff, Ozon), SBP, USDT/BTC. Tarifs dès 490 ₽ par jour, 2490 ₽ par mois avec réductions sur longue durée. Après paiement, serveur est prêt en ~5 min, sans logs. Honnêtement : le DIY donne un contrôle absolu mais demande du temps pour configurer, surveiller et sauvegarder ; la solution clé en main est parfaite si vous cherchez rapidité et simplicité sans console.
FAQ
- Quelle région Oracle choisir pour une meilleure vitesse ? — La plus proche géographiquement. Testez ping et débit. En Europe, Francfort et Amsterdam sont souvent idéaux, aux USA, New York ou San José.
- Peut-on changer le port WireGuard ? — Oui. Modifiez ListenPort dans wg0.conf, actualisez NSG et UFW, et adaptez l’Endpoint dans les configs clients.
- Peut-on connecter plusieurs clients simultanément ? — Oui. Créez une paire de clés et une adresse /32 unique pour chaque client, ajoutez un nouveau [Peer] sur le serveur.
- Peut-on router seulement une partie du trafic via VPN ? — Oui. Dans AllowedIPs du client, indiquez uniquement les préfixes désirés (ex. réseaux d'entreprise). Le reste utilise la connexion directe.
- Que faire si l’IP publique disparaît ? — Vérifiez le statut de l’instance. Réservez et attachez l’adresse pour éviter qu’elle change au redémarrage.
- Comment ajouter DNS-over-HTTPS dans le tunnel ? — Installez un résolveur local avec DoH/DoT, configurez le client pour utiliser cette IP DNS.
- IPv6, ça sert à quoi ? — Oui, si vos clients et fournisseurs supportent IPv6. Cela améliore la qualité de connexion. N’oubliez pas la configuration des routes et du pare-feu.
- Comment supprimer un client ? — Supprimez sa section [Peer] dans wg0.conf, redémarrez le service et effacez la config sur le client.
- Combien de clients supporte le Free Tier ? — Cela dépend de la charge, mais environ 5 à 20 clients simultanés avec trafic modéré fonctionnent bien.
- Comment désinstaller complètement WireGuard ? — Arrêtez-le avec sudo systemctl disable --now wg-quick@wg0, supprimez /etc/wireguard, retirez les règles UFW et redémarrez.
Conclusion
Vous avez parcouru tout le chemin, de l’inscription sur Oracle Cloud Free Tier à la mise en place d’un VPN rapide et sécurisé avec WireGuard. Nous avons créé un réseau virtuel avec règles de sécurité, lancé une instance gratuite, installé et configuré WireGuard, généré des configurations et connecté vos appareils. Vous disposez désormais d’un VPN personnel avec contrôle à chaque niveau : du réseau cloud aux profils clients. Vous pouvez développer le projet en ajoutant l’IPv6, des protocoles alternatifs, un DNS dédié, la surveillance et la sauvegarde des configurations. Pour la montée en charge, pensez à automatiser via cloud-init ou Terraform pour déployer rapidement sur d’autres régions et assurer la haute disponibilité. Si vous avez besoin d’un démarrage rapide sans console, pensez à des solutions managées comme vpn.how — elles économisent votre temps, mais le DIY apporte une indépendance et une flexibilité maximales. Bonne chance et navigation sécurisée !