MikroTik comme serveur VPN : WireGuard sous RouterOS 7.16 — guide pas à pas pour la maison

En bref

Guide détaillé pour configurer un VPN domestique sur MikroTik avec WireGuard sous RouterOS 7.16. En 60 à 120 minutes, vous mettrez en place votre propre serveur VPN, connecterez téléphones et ordinateurs portables, activerez un split tunnel ou un tunnel complet via votre domicile, configurerez le pare-feu et vérifierez la sécurité.

MikroTik comme serveur VPN : WireGuard sous RouterOS 7.16 — guide pas à pas pour la maison

Introduction

Dans ce guide, vous allez configurer un serveur VPN domestique sur un routeur MikroTik avec WireGuard sous RouterOS 7.16. Vous obtiendrez ainsi une connexion chiffrée sécurisée depuis n’importe où dans le monde vers votre réseau domestique et l’internet via votre domicile. Vous pourrez connecter téléphones, ordinateurs portables et tablettes, donner accès à votre NAS, caméras et imprimantes, et choisir entre split tunnel (accès uniquement au domicile) ou tunnel complet (tout le trafic internet passe par votre domicile).

Ce guide est conçu pour les débutants : nous aborderons les principes de base, créerons étape par étape l’interface WireGuard, configurerons adresses IP, règles de pare-feu et NAT, ouvrirons le port nécessaire, et connecterons des clients sous iOS, Android, Windows et macOS. Pour les plus avancés, une section traite de l’optimisation du MTU, des exceptions FastTrack, de la gestion IPv6 et du scénario site-à-site.

Avant de commencer, il est utile de comprendre les notions de base en adressage local et ce qu’est un port sur un routeur, mais nous expliquerons tout simplement les points critiques. Le temps estimé d’exécution est de 60 à 120 minutes, incluant tests et résolutions de problèmes éventuels. Si vous avez une IP dynamique, nous configurerons DDNS MikroTik pour accéder à votre domicile par un nom stable.

Après ce guide, vous saurez : mettre en place un serveur WireGuard sur MikroTik, ouvrir l’accès sécurisé via pare-feu, attribuer des adresses VPN aux appareils, choisir le mode de routage du trafic, vérifier le fonctionnement et ajouter rapidement de nouveaux utilisateurs.

Astuce : Gardez ce guide ouvert sur votre portable et WinBox ou WebFig dans une autre fenêtre pour suivre les étapes sans changer de contexte.

Préparation

Avant de commencer, vérifions que tout est prêt et à portée de main. Cela vous fera gagner du temps et évitera des erreurs.

Outils, programmes et accès nécessaires

  • Un routeur MikroTik compatible RouterOS 7.16 (comme hAP ac2/ac3, hAP ax2/ax3, RB4011, Chateau, etc.).
  • Accès à l’interface d’administration : WinBox (Windows), WebFig (navigateur) ou CLI (terminal/SSH).
  • Un smartphone et/ou un PC portable pour tester le client WireGuard.
  • Droits d’administrateur complet sur le routeur. Vous connaissez le mot de passe et pouvez vous connecter.
  • Connexion internet (DHCP/PPPoE/fibre), idéalement avec IP publique. En cas de NAT CGNAT (IP privée publique), vous devrez configurer un transfert de ports depuis un autre routeur ou prévoir un accès alternatif (ex. via un autre canal).

Configuration requise et conditions

  • RouterOS 7.16 ou plus récent. WireGuard est pris en charge pleinement à partir de la branche v7, donc mettez à jour si vous êtes sous 6.x.
  • Assez de mémoire libre (128 Mo ou plus est suffisant pour usage domestique).
  • Un port UDP libre en interface externe (par défaut, on utilise 51820/UDP, mais tout autre port peut convenir).

Téléchargements et installations préalables

  • WinBox, outil pratique de MikroTik sous Windows ; sur macOS ou Linux utilisez WebFig dans un navigateur.
  • L’application WireGuard pour vos clients : iOS (App Store), Android (Google Play), Windows et macOS (applications officielles WireGuard). L’installation prend quelques minutes par appareil.

Sauvegarde de la configuration

Avant de configurer, faites une sauvegarde. Elle vous permettra de revenir en arrière d’un clic en cas de problème.

  1. Ouvrez WinBox et connectez-vous au routeur.
  2. Allez dans Files puis cliquez sur Backup.
  3. Donnez un nom au fichier, par exemple backup_before_wireguard.
  4. Cochez Encryption et entrez un mot de passe pour protéger la sauvegarde.
  5. Téléchargez le fichier sur votre ordinateur avec le bouton Download.

⚠️ Attention : Gardez cette sauvegarde et son mot de passe en lieu sûr. Ils vous permettront de restaurer votre routeur en état de marche en cas d’erreur.

Astuce : Sauvegardez aussi la configuration actuelle via l’export : ouvrez New Terminal et tapez /export file=pre_wg_config, puis téléchargez pre_wg_config.rsc depuis Files.

Concepts de base

Quelques notions pour bien comprendre les étapes à venir.

  • WireGuard — protocole VPN moderne, sûr et simple à configurer. Il fonctionne au-dessus d’UDP et crée un tunnel entre pairs avec une paire de clés.
  • Pair (peer) — participant au tunnel WireGuard : serveur ou client. Chaque pair possède une paire de clés (privée et publique) et une liste AllowedIPs — adresses autorisées via ce pair.
  • Interface WireGuard — interface réseau virtuelle sur MikroTik (exemple : wg-home). C’est ici que nous assignons l’adresse et par laquelle passera le trafic client.
  • Listen Port — port UDP sur lequel le serveur WireGuard attend les connexions entrantes.
  • AllowedIPs — liste blanche des adresses qu’un pair peut annoncer et router. Sur le serveur, ce sont souvent les adresses VPN des clients (ex : 10.10.10.2/32). Sur le client, ce sont soit les réseaux cibles (split tunnel), soit tout le trafic (0.0.0.0/0) pour tunnel complet.
  • Split tunnel — seul le trafic vers les réseaux domestiques passe par le tunnel, le reste va directement sur internet via le fournisseur mobile ou Wi-Fi.
  • Tunnel complet — tout le trafic internet du client est routé via votre domicile (activation du NAT côté serveur pour la plage VPN).
  • DDNS — DNS dynamique. MikroTik offre un service intégré qui vous donne un nom du type something.sn.mynetname.net, mis à jour automatiquement en cas de changement d’IP externe.
  • FastTrack — accélération des connexions dans MikroTik. Parfois il faut l’exclure correctement du trafic tunnel pour ne pas perdre le contrôle des sessions.

Important : WireGuard ne maintient pas une session serveur classique. Le client initie la connexion par un paquet, le serveur mémorise l'origine. Pour les clients derrière NAT, Persistent Keepalive est utile pour garder le chemin actif.

Étape 1 : Mettre à jour RouterOS et préparer l’appareil

Objectif

Vérifier que vous êtes sous RouterOS 7.16, réglage horaire correct et sauvegarde réalisée. Cela assure une base stable pour WireGuard.

Instructions pas à pas

  1. Ouvrez WinBox ou WebFig et connectez-vous en administrateur.
  2. Allez dans System → Packages et vérifiez la version de RouterOS.
  3. Si inférieure à 7.16, rendez-vous dans System → Packages → Check for Updates.
  4. Choisissez le canal stable et mettez à jour vers 7.16 ou plus récent.
  5. Après mise à jour, attendez le redémarrage et reconnectez-vous.
  6. Dans System → Identity, donnez un nom clair au routeur, par exemple MT-Home.
  7. Dans System → Clock, réglez le bon fuseau horaire et l’heure exacte.
  8. Ouvrez System → SNTP Client ou System → NTP Client (utilisé en 7.16) et activez la synchronisation horaire avec des serveurs publics.
  9. Dans IP → Addresses, vérifiez que votre interface WAN obtient bien une adresse externe (DHCP, PPPoE ou statique selon la configuration).
  10. Dans IP → Firewall → Filter, assurez-vous d’avoir les règles de base : acceptation des connexions established, related ; blocage des invalides ; suppression du reste du trafic en entrée depuis WAN.

⚠️ Attention : Ne coupez pas l’alimentation ni n’interrompez la mise à jour. Si vous n’êtes pas sûr de la stabilité électrique, utilisez un onduleur (UPS).

Astuce : Après la mise à jour, allez dans System → Routerboard → Upgrade pour mettre à jour le firmware RB, puis redémarrez afin d’avoir des versions RouterOS et Routerboard synchronisées.

Résultat attendu

Le routeur fonctionne sous RouterOS 7.16, l’heure est correcte, la connexion internet active, le pare-feu de base est opérationnel et vous avez la sauvegarde.

Problèmes possibles et solutions

  • Pas d’internet après mise à jour → Vérifiez que la configuration PPPoE ou VLAN sur le WAN n’a pas été réinitialisée, restaurez depuis sauvegarde si nécessaire.
  • L’heure ne se synchronise pas → Vérifiez les serveurs DNS dans IP → DNS ; s’ils sont vides, mettez 1.1.1.1 et 9.9.9.9 puis réactivez le client NTP.
  • WinBox ne se connecte pas → Activez MAC-WinBox dans Neighbors ou utilisez WebFig via le navigateur sur l’IP LAN.

✅ Vérification : Dans System → Packages, la version est 7.16 ou supérieure, dans System → Clock l’heure est exacte, et dans IP → Firewall les règles de base sont en place.

Étape 2 : Planifier l’adressage et le mode d’accès

Objectif

Définir la plage d’adresses pour WireGuard, choisir le mode de routage (split tunnel ou tunnel complet), le serveur DNS, le port et le nom de domaine pour les connexions entrantes.

Instructions pas à pas

  1. Choisissez une plage VPN différente de votre LAN domestique, par exemple 10.10.10.0/24.
  2. Attribuez l’adresse du serveur dans cette plage — 10.10.10.1/24 (interface wg-home).
  3. Décidez si vous voulez un split tunnel (accès uniquement aux réseaux domestiques) ou un tunnel complet (tout le trafic via la maison).
  4. Pour le split tunnel, notez les réseaux domestiques accessibles, par exemple 192.168.88.0/24 et 192.168.10.0/24.
  5. En tunnel complet, activez le NAT sur MikroTik pour 10.10.10.0/24.
  6. Choisissez le port Listen Port pour WireGuard, typiquement 51820/UDP, mais un port non standard peut réduire le bruit des scans.
  7. Vérifiez si votre IP externe est publique (blanche) ou sous CGNAT (grise). En cas de CGNAT, demandez à votre fournisseur une IP publique ou configurez un transfert depuis un autre routeur.
  8. Activez DDNS MikroTik : IP → Cloud → Enable DDNS ; mémorisez le nom affiché, par exemple abcd1234.sn.mynetname.net.
  9. Définissez le DNS pour les clients : soit 10.10.10.1 (le routeur comme résolveur) soit des DNS publics comme 1.1.1.1 et 9.9.9.9 ; 10.10.10.1 est plus pratique pour accéder aux noms locaux.

Astuce : Si vous avez un Pi-hole ou Unbound sur votre réseau, indiquez son adresse DNS aux clients pour bénéficier du filtrage local et des noms personnalisés.

Résultat attendu

Vous avez un plan : adresse serveur 10.10.10.1/24, liste des réseaux locaux, mode choisi (split ou complet), port 51820/UDP, et nom DDNS pour vos accès externes.

Problèmes possibles et solutions

  • Plages LAN et VPN en conflit → Choisissez une autre plage VPN, par exemple 10.20.30.0/24, pour éviter des conflits de routage.
  • DDNS ne donne pas de nom → Vérifiez la connexion internet et les DNS du routeur, redémarrez IP → Cloud, et assurez-vous qu’aucun blocage de trafic sortant n’existe.
  • IP grise → Demandez à votre fournisseur une IP publique ou utilisez un autre canal, ou configurez un transfert de port sur un autre équipement ayant une IP publique.

✅ Vérification : Dans IP → Cloud, le DDNS est activé avec un nom affiché, vous avez défini la plage VPN, le mode et le port.

Étape 3 : Créer l’interface WireGuard et configurer la routage basique

Objectif

Créer l’interface WireGuard, générer les clés, attribuer l’adresse IP, activer le résolveur DNS et préparer le NAT pour la plage VPN.

Instructions pas à pas

  1. Allez dans Interfaces → WireGuard et cliquez sur + pour en ajouter une nouvelle.
  2. Nom : wg-home.
  3. Dans Listen Port, indiquez 51820.
  4. Laissez MTU par défaut (généralement 1420) ou mettez 1412 si votre WAN est en PPPoE avec MTU 1492.
  5. Enregistrez l’interface et copiez la clé publique indiquée ; ce sera la clé serveur à transmettre aux clients.
  6. Ouvrez IP → Addresses et cliquez +.
  7. Adresse : 10.10.10.1/24.
  8. Interface : wg-home puis sauvegarder.
  9. Allez dans IP → DNS, cochez Allow Remote Requests.
  10. Dans Servers, indiquez 1.1.1.1 et 9.9.9.9 ou votre résolveur local.
  11. Ouvrez IP → Firewall → NAT puis +.
  12. Chaîne (chain) : srcnat.
  13. Adresse source (Src. Address) : 10.10.10.0/24.
  14. Interface sortante (Out. Interface List) : WAN.
  15. Action : masquerade, puis sauvegardez.

Pour ceux qui préfèrent le terminal, voici quelques commandes exemples : /interface/wireguard add name=wg-home listen-port=51820, /ip address add address=10.10.10.1/24 interface=wg-home, /ip dns set allow-remote-requests=yes servers=1.1.1.1,9.9.9.9, et /ip firewall nat add chain=srcnat action=masquerade src-address=10.10.10.0/24 out-interface-list=WAN comment="WG clients to internet".

Astuce : Ajoutez un commentaire clair à chaque règle pour vous y retrouver plus vite. Cela vous fera gagner beaucoup de temps lors du suivi.

Résultat attendu

L’interface wg-home est active, avec une clé publique, l’adresse 10.10.10.1/24 attribuée. Le routeur résout les requêtes DNS des clients et le NAT pour la plage VPN est fonctionnel.

Problèmes possibles et solutions

  • Clé publique vide → Assurez-vous d’avoir bien enregistré l’interface ; la paire de clés est générée à la création.
  • DNS non fonctionnel pour les clients VPN → Vérifiez que Allow Remote Requests est activé et que des DNS externes sont listés.
  • Pas d’internet en tunnel complet → Vérifiez la règle masquerade pour 10.10.10.0/24 et qu’elle soit placée avant d’autres règles srcnat plus générales.

✅ Vérification : Dans Interfaces → WireGuard, wg-home est listé avec Listen Port 51820 et la clé publique. Dans IP → Addresses, 10.10.10.1/24 est bien assigné. Dans IP → DNS, Allow Remote Requests est coché.

Étape 4 : Configurer le pare-feu, ouvrir le port et activer le DDNS

Objectif

Autoriser en toute sécurité l’accès UDP pour WireGuard depuis internet, permettre le trafic entre VPN et LAN, et vérifier que vous êtes accessible via DDNS.

Instructions pas à pas

  1. Allez dans IP → Firewall → Filter, ouvrez les règles pour la chaîne input.
  2. Vérifiez que la première règle accepte les états connection-state=established,related,untracked.
  3. Vérifiez que les paquets invalides sont bloqués.
  4. Ajoutez une règle : chain=input, protocol=udp, dst-port=51820, in-interface-list=WAN, action=accept, commentaire « Allow WireGuard ».
  5. Ajoutez une règle : chain=input, in-interface=wg-home, action=accept, commentaire « Allow input from WG ».
  6. Assurez-vous qu’après ces règles, un drop bloque tout autre trafic entrant de WAN, par exemple chain=input, in-interface-list=WAN, action=drop.
  7. Dans IP → Firewall → Filter, ajoutez des règles dans chain=forward.
  8. Ajoutez : in-interface=wg-home, out-interface-list=LAN, action=accept, commentaire « WG → LAN ».
  9. Ajoutez : in-interface=wg-home, out-interface-list=WAN, action=accept, commentaire « WG → Internet ».
  10. Optionnel : ajoutez : in-interface-list=LAN, out-interface=wg-home, action=accept, commentaire « LAN → WG ».
  11. Vérifiez la règle FastTrack (habituellement accept fasttrack connection-state=established,related) dans IP → Firewall → Filter.
  12. Placez les règles WireGuard au-dessus de FastTrack ou créez une exception pour que le trafic du tunnel ne soit pas filtré par FastTrack.
  13. Dans IP → Cloud, assurez-vous que DDNS est activé et que le nom DNS est affiché.
  14. Si votre routeur est derrière un autre routeur, configurez le transfert UDP 51820 vers l’IP de votre MikroTik sur l’équipement externe.
  15. Testez depuis l’extérieur le port UDP avec un outil de scan UDP (ex : nmap depuis un serveur distant) pour vérifier que le port est bien ouvert.

Voici un exemple CLI pour filtre et NAT : /ip firewall filter add chain=input action=accept connection-state=established,related,untracked comment="accept established", /ip firewall filter add chain=input action=drop connection-state=invalid comment="drop invalid", /ip firewall filter add chain=input action=accept protocol=udp dst-port=51820 in-interface-list=WAN comment="allow WG", /ip firewall filter add chain=input action=accept in-interface=wg-home comment="allow input from wg", /ip firewall filter add chain=input action=drop in-interface-list=WAN comment="drop rest from WAN", /ip firewall filter add chain=forward action=accept in-interface=wg-home out-interface-list=LAN comment="WG to LAN", /ip firewall filter add chain=forward action=accept in-interface=wg-home out-interface-list=WAN comment="WG to Internet".

⚠️ Attention : N’ouvrez jamais l’accès à tous les ports depuis internet. Autorisez uniquement les protocoles et ports nécessaires et bloquez explicitement le reste.

Astuce : Utilisez les Interface Lists dans IP → Firewall : rangez vos interfaces WAN dans la liste WAN et vos ports LAN et Wi-Fi dans LAN. Cela simplifie les règles et réduit les risques d’erreurs lors de modifications.

Résultat attendu

Le port UDP 51820 est ouvert sur WAN, le trafic entre wg-home et LAN/internet est autorisé, le nom DDNS est actif, et le transfert de port (si nécessaire) est configuré.

Problèmes possibles et solutions

  • Le port n’est pas accessible depuis l’extérieur → Vérifiez que la règle input accept WG est avant le drop général, que votre fournisseur ne bloque pas UDP, et que le transfert sur le routeur externe est correctement configuré.
  • Pas d’accès depuis WG vers LAN → Assurez-vous qu’il existe une règle forward WG → LAN et que le client a les bonnes AllowedIPs (en mode split, ajoutez les sous-réseaux nécessaires).
  • Session WG coupée → Vérifiez le FastTrack, excluez le trafic WG de FastTrack ou placez les règles WG au-dessus de FastTrack.

✅ Vérification : Le scan UDP externe détecte le port 51820 comme ouvert ou en écoute, les règles de pare-feu sont correctement ordonnées, et votre DDNS affiche l’IP actuelle.

Étape 5 : Ajouter le premier client (smartphone) et configurer split/complet tunnel

Objectif

Ajouter un peer sur le serveur pour le téléphone, générer les clés sur le client, choisir le mode de routage, et établir la connexion.

Instructions pas à pas

  1. Installez l’app WireGuard sur votre smartphone (iOS ou Android).
  2. Ouvrez l’app et créez un nouveau tunnel en choisissant « Créer une nouvelle clé ».
  3. L’app générera PrivateKey et PublicKey ; laissez-la ouverte pour copier la clé publique ensuite.
  4. Dans MikroTik, allez dans Interfaces → WireGuard → Peers et cliquez + pour ajouter un peer.
  5. Choisissez l’interface : wg-home.
  6. Collez la Public Key du téléphone dans le champ Public Key.
  7. Dans Allowed Address, écrivez 10.10.10.2/32 (adresse VPN du client).
  8. En Preshared Key (optionnel), générez une clé aléatoire dans l’app et collez-la ici, puis aussi chez le client pour renforcer la sécurité.
  9. Dans Persistent Keepalive, mettez 25 pour maintenir la connexion active derrière NAT mobile.
  10. Sauvegardez le peer sur MikroTik.
  11. Sur le téléphone, éditez la configuration du tunnel créé et remplissez les paramètres serveur.
  12. Dans la section Interface, mettez Address : 10.10.10.2/32 et DNS : 10.10.10.1 (ou 1.1.1.1 selon votre plan).
  13. Dans Peer, copiez la clé publique du serveur (depuis wg-home sur MikroTik).
  14. Si vous utilisez Preshared Key, entrez-la également ici.
  15. Dans Endpoint, indiquez votre nom DDNS suivi du port, ex. abcd1234.sn.mynetname.net:51820.
  16. Dans AllowedIPs, définissez le mode : pour split tunnel, indiquez 10.10.10.0/24 et vos sous-réseaux domestiques (ex : 192.168.88.0/24) ; pour tunnel complet, mettez 0.0.0.0/0, ::/0.
  17. Sauvegardez la configuration sur le téléphone et activez le tunnel avec l’interrupteur.
  18. Dans WinBox, vérifiez dans Interfaces → WireGuard → Peers que le dernier Handshake et le RX/TX correspondent à l’activité du client.
  19. Testez l’accès : ouvrez une ressource locale par IP, par exemple 192.168.88.1 (votre routeur) ou le NAS.
  20. En tunnel complet, vérifiez sur un site « quel est mon IP » que l’IP affichée soit celle de votre domicile, et non mobile.

Exemple de commande CLI équivalente : /interface/wireguard peers add interface=wg-home public-key="VOTRE_CLE_PUBLIQUE_CLIENT" allowed-address=10.10.10.2/32 persistent-keepalive=25 comment="téléphone".

Astuce : Attribuez à chaque client une adresse /32 fixe dans la plage VPN et tenez un tableau pour suivre : cela facilite audits et désactivations ciblées.

Résultat attendu

Le smartphone se connecte au serveur WireGuard sur MikroTik, apparaît dans la liste peers, accède au réseau domestique, et en tunnel complet tout son trafic passe par la maison.

Problèmes possibles et solutions

  • Pas de handshake → Vérifiez que la clé publique et l’endpoint côté client sont corrects, que le port est ouvert et le DDNS à jour, et que le pare-feu autorise l’entrée UDP 51820.
  • Handshake présent mais pas d’accès LAN → Vérifiez les règles forward WG → LAN et la liste AllowedIPs client (en split, ajoutez tous les réseaux nécessaires).
  • Pas d’internet en tunnel complet → Assurez-vous du NAT configuré pour 10.10.10.0/24 et d’une règle forward de WG vers WAN.
  • DNS ne résout pas → Vérifiez la case Allow Remote Requests activée sur MikroTik et que le client utilise bien 10.10.10.1 ou un DNS externe.

✅ Vérification : L’app WireGuard affiche « connecté », MikroTik montre un handshake récent, ping vers 10.10.10.1 et les IP de votre LAN fonctionnent, et en tunnel complet le IP externe est celui de votre foyer.

Étape 6 : Connecter un ordinateur portable ou PC (Windows/macOS/Linux)

Objectif

Ajouter un second client avec une clé dédiée, présenter la configuration pour Windows et macOS, tester l’accès et configurer l’autostart.

Instructions pas à pas

  1. Installez WireGuard pour votre système d’exploitation et lancez-le.
  2. Créez un nouveau tunnel avec génération de clés (« Add Tunnel » → « Add empty tunnel »).
  3. Enregistrez le PrivateKey et PublicKey générés pour cet appareil.
  4. Dans MikroTik, allez dans Interfaces → WireGuard → Peers et ajoutez un nouveau peer.
  5. Interface : wg-home.
  6. Collez la clé publique du portable dans Public Key.
  7. Allowed Address : 10.10.10.3/32 (prochaine adresse libre).
  8. Persistent Keepalive : 25 si le portable est souvent derrière un NAT (cafés, hôtels).
  9. Sauvegardez le peer.
  10. Dans la configuration tunnel du portable, en section Interface, mettez Address : 10.10.10.3/32 et DNS : 10.10.10.1.
  11. En Peer, collez la clé publique du serveur.
  12. Endpoint : abcd1234.sn.mynetname.net:51820.
  13. AllowedIPs : split tunnel (10.10.10.0/24 et vos réseaux LAN) ou complet (0.0.0.0/0, ::/0).
  14. Si PresharedKey utilisée, entrez-la aussi ici et sur le serveur.
  15. Sauvegardez puis activez le tunnel.
  16. Testez les ping : 10.10.10.1, puis 192.168.88.1 et d’autres hôtes locaux.
  17. En tunnel complet, vérifiez l’accès aux sites internet et la concordance de l’IP externe.
  18. Activez l'autostart si besoin (« Activate on boot » sous Windows, ajout aux éléments de démarrage sur macOS).

Astuce : Pour un portable professionnel, le split tunnel est souvent plus pratique pour ne pas faire passer tout le trafic entreprise par le domicile, juste l’accès aux ressources nécessaires.

Résultat attendu

Le portable se connecte de façon stable au WireGuard, accède aux hôtes domestiques, transmet tout le trafic via le tunnel en mode complet, et peut se connecter automatiquement au démarrage.

Problèmes possibles et solutions

  • Windows ne démarre pas le tunnel automatiquement → Lancez l’app en administrateur, activez « Activate on boot », vérifiez que les services WireGuard fonctionnent.
  • macOS oublie les permissions → Ajoutez WireGuard aux paramètres réseau et VPN système et accordez les autorisations nécessaires.
  • Impossible de pinguer le routeur sur 192.168.88.1 → Vérifiez la règle forward WG → LAN, ajustez si bloquée par une autre règle plus restrictive.

✅ Vérification : Dans l’app, le tunnel est « Established », les compteurs RX/TX augmentent, les routes suivent le mode choisi, et l’accès aux ressources domestiques est possible.

Étape 7 : Politiques de routage avancées, exceptions et MTU

Objectif

Raffiner les routes pour le split tunnel, exclure certains sous-réseaux locaux en tunnel complet sur le client, optimiser le MTU, et éviter les problèmes liés à FastTrack.

Instructions pas à pas

  1. En split tunnel, ajoutez dans AllowedIPs sur les clients les adresses des réseaux domestiques : 10.10.10.0/24, 192.168.88.0/24, etc.
  2. En tunnel complet, pour exclure par exemple des imprimantes Wi-Fi locales dans les hôtels, ajoutez des routes d’exclusion dans le système d’exploitation client ou utilisez un profil split dédié.
  3. Sur MikroTik, vérifiez que le NAT masquerade couvre bien 10.10.10.0/24 pour l’accès internet des clients VPN.
  4. Contrôlez FastTrack : placez la règle plus bas ou configurez un match pour exclure le trafic tunnel, garantissant ainsi la gestion correcte des sessions.
  5. Pour un WAN PPPoE, réduisez le MTU de l’interface WireGuard à 1412 pour éviter la fragmentation et les pertes de paquets importants.
  6. Si vous avez des connexions instables, augmentez Persistent Keepalive à 25-30 secondes pour les clients derrière un NAT strict.
  7. Si besoin, activez reply-only dans IP → ARP sur les interfaces LAN pour réduire le bruit ARP, utile surtout dans les grands réseaux.

Astuce : Vérifiez la valeur MSS des clients en tunnel complet : sur certaines plateformes, diminuer le MTU client à 1280-1380 améliore la compatibilité avec les réseaux mobiles.

Résultat attendu

Le routage correspond parfaitement à vos besoins, il n’y a ni perte ni fragmentation, FastTrack n’interfère pas avec le tunnel, et les clients passent sans souci les NAT complexes.

Problèmes possibles et solutions

  • Pages web qui bloquent ou ralentissent → Diminuez le MTU sur le client et/ou l’interface wg-home à 1412 ou 1380 et testez à nouveau.
  • Trafic qui sort du tunnel sans raison → Vérifiez les AllowedIPs : si seulement 10.10.10.0/24 est présent, le reste du trafic passe hors tunnel.
  • Perte de connexion au repos → Mettez Persistent Keepalive à 25 secondes sur les clients, ce réglage résout souvent ce problème avec les NAT cellulaires.

✅ Vérification : Le traceroute vers des adresses internet passe par le tunnel en mode complet, ou seulement les sous-réseaux domestiques en mode split ; la navigation est rapide sans blocages.

Étape 8 : Ajouter d’autres utilisateurs, suivi et sécurité renforcée

Objectif

Mettre en place une procédure de création de peers, conserver un suivi clair, activer des mesures et logs de sécurité pour un diagnostic rapide.

Instructions pas à pas

  1. Pour chaque nouvel utilisateur, créez un peer distinct avec une adresse /32 unique, par exemple 10.10.10.4/32, 10.10.10.5/32, etc.
  2. Remplissez le champ Comment avec le nom, l’appareil, la date d’ajout.
  3. Tenez un tableau ou un fichier avec nom, appareil, adresse, clé publique, date, mode (split/complet), et clé prépartagée si utilisée.
  4. Restreignez certains peers à certaines sous-réseaux via AllowedIPs côté client et par des filtres forward côté serveur.
  5. Activez les logs système pour WireGuard : dans System → Logging, ajoutez une règle topics=wireguard avec action en mémoire ou fichier pour un audit rapide des connexions.
  6. Contrôlez régulièrement Peers : le champ Last Handshake montre qui est actif et RX/TX le volume de transfert.
  7. Révoquez immédiatement l’accès en supprimant les peers perdus ou suspects sur MikroTik.

Astuce : Si vous utilisez une règle drop all input sur WAN, gardez toujours un accès physique ou un canal de secours pour éviter de vous bloquer en modifiant les règles.

Résultat attendu

Les nouveaux utilisateurs sont ajoutés en quelques minutes, le suivi est clair, vous voyez qui se connecte et la consommation de trafic, et vous pouvez révoquer l’accès rapidement en cas de besoin.

Problèmes possibles et solutions

  • Utilisateur se plaint de lenteur → Vérifiez le MTU, la qualité de son lien et la charge WAN, testez avec iperf à l’intérieur du tunnel.
  • Journaux encombrés → Filtrez les topics ou activez un mode rotation sur disque pour éviter la saturation de la mémoire.
  • Blocages aléatoires du trafic → Vérifiez l’ordre des règles, les règles WG doivent être au-dessus du drop général.

✅ Vérification : L’ajout d’un client prend quelques minutes, le handshake est immédiat à la connexion, les logs sont à jour et les accès révoqués sont coupés instantanément.

Vérification finale

Checklist de bon fonctionnement

  • L’interface wg-home est active avec l’adresse 10.10.10.1/24.
  • Le port UDP 51820 est ouvert sur l’interface externe, testé depuis l’extérieur.
  • Le serveur affiche une clé publique valide, les clients ont le bon Endpoint et les clés correspondantes.
  • Les règles de pare-feu autorisent l’entrée UDP 51820 et le forward WG vers LAN et WAN.
  • Le DNS sur le routeur permet aux clients distants de résoudre les noms.
  • Les clients ont accès aux réseaux domestiques en mode split ou à internet via le tunnel complet.

Comment tester

  1. Activez le tunnel sur votre téléphone et pinguez 10.10.10.1 puis 192.168.88.1.
  2. Ouvrez un NAS ou l’interface web du routeur via l’IP locale.
  3. En tunnel complet, vérifiez l’IP publique visible, elle doit être celle du domicile.
  4. Depuis l’extérieur, testez la disponibilité du port UDP 51820 sur votre DDNS.
  5. Dans MikroTik, vérifiez dans WireGuard → Peers que Last Handshake se met à jour et que RX/TX augmente.

Indicateurs de réussite

  • Handshake stable toutes les 20 à 120 secondes lors de l’activité.
  • Faible latence et absence de fragmentation, chargement rapide des pages.
  • Aucun drop non justifié dans les logs sur le trafic WireGuard.

Erreurs courantes et leurs solutions

  • Problème : Pas de handshake chez le client. Cause : Port 51820/UDP bloqué ou Endpoint/DDNS erroné. Solution : Vérifiez la règle d’entrée, le transfert de port et la validité du DDNS. Assurez-vous que l’Endpoint correspond exactement au nom et port utilisés.
  • Problème : Handshake OK mais pas d’accès LAN. Cause : Absence de règle forward WG → LAN ou AllowedIPs client incomplètes. Solution : Ajoutez la règle forward et complétez AllowedIPs avec le réseau 192.168.88.0/24.
  • Problème : Pas d’internet en tunnel complet. Cause : NAT masquerade manquant ou mal placé. Solution : Ajoutez une règle srcnat masquerade pour 10.10.10.0/24 et placez-la en tête des règles NAT.
  • Problème : Sites lents ou bloqués. Cause : MTU inadapté, fragmentation. Solution : Mettez MTU 1412 sur wg-home et/ou réduisez MTU client entre 1280 et 1380.
  • Problème : Coupures intermittentes chez les clients mobiles. Cause : NAT avec timeout court. Solution : Réglez Persistent Keepalive à 25 sur client et serveur.
  • Problème : Perte d’accès à l’administration après renforcement des règles. Cause : Règle drop en entrée avant les acceptations. Solution : Connectez-vous par MAC-WinBox en LAN, corrigez l’ordre des règles ou restaurez la sauvegarde si besoin.
  • Problème : Client connecté mais ne résout pas les noms. Cause : Allow Remote Requests non activé ou DNS non configuré. Solution : Activez Allow Remote Requests et spécifiez un DNS valide (10.10.10.1 ou externe) dans la configuration client.

Fonctionnalités avancées

Configurations avancées

  • IPv6 via WireGuard : Ajoutez une adresse ULA pour VPN, comme fd00:10:10::1/64 sur wg-home, et mettez ::/0 dans AllowedIPs pour tunnel complet. Pas besoin de NAT66, mais vérifiez que votre fournisseur et la routage sont compatibles.
  • Site-à-site (maison-dépendance) : Déployez WireGuard sur un second MikroTik, échangez les clés publiques, autorisez les sous-réseaux réciproques dans AllowedIPs, et configurez des routes statiques pour relier les deux sites.
  • Accès à des services spécifiques seulement : Plutôt que de donner tout le LAN dans AllowedIPs, limitez-vous aux IP/ports nécessaires et filtrez le reste avec des règles forward dans le pare-feu.
  • Exemption FastTrack : Pour garantir une gestion stable, excluez le trafic wg-home de FastTrack, ou placez les règles WireGuard au-dessus de FastTrack.

Optimisations

  • Performances matérielles : Sur les MikroTik récents, WireGuard est très performant. Surveillez la charge CPU aux pics pour estimer votre débit réel.
  • Queues : Si vous utilisez QoS, assurez-vous que le trafic wg-home est bien classifié.
  • Journaux : Activez la journalisation de façon temporaire afin d’éviter la saturation de la mémoire, et utilisez rotation et filtrage thématique.

Autres options

  • Automatisation des configurations : Stockez des modèles .conf clients, injectez clés et adresses automatiquement, générez des QR codes sous PC pour mobiles, et conservez des notes dans MikroTik.
  • Segmentation de la plage VPN : Séparez les adresses, par exemple 10.10.10.2-50 pour la famille, 10.10.10.51-100 pour les invités, et gérez les droits d’accès aux sous-réseaux.

Astuce : Gardez deux utilisateurs administrateurs WireGuard sur des appareils différents pour garantir un accès de secours en cas de perte d’un appareil.

FAQ

  • Quel port utiliser pour WireGuard ? Celui par défaut est 51820/UDP, mais vous pouvez choisir n’importe quel port UDP libre ; un port non standard limite parfois le bruit des scanners.
  • Peut-on connecter plusieurs appareils simultanément ? Oui, chaque appareil doit avoir son propre peer et une adresse /32 unique dans votre plage VPN.
  • Faut-il une IP externe statique ? Non, DDNS MikroTik suffit, à condition que le port soit accessible depuis l’extérieur.
  • Comment désactiver rapidement un téléphone perdu ? Supprimez son peer sur MikroTik, l’accès sera coupé immédiatement.
  • Quelle différence entre split tunnel et tunnel complet ? En split, seul le trafic vers le domicile passe par le tunnel ; en complet, tout passe par votre domicile avec NAT coté serveur.
  • Comment choisir le MTU ? Commencez à 1420 ; en PPPoE, 1412 ; si problèmes, diminuez par étapes jusqu’à 1380 en testant la stabilité.
  • Doit-on utiliser PresharedKey ? C’est un chiffrement supplémentaire superposé aux clés WireGuard. Optionnel mais recommandé pour renforcer la sécurité.
  • Peut-on restreindre un client à un seul serveur LAN ? Oui, en mettant l’IP serveur dans AllowedIPs client et en configurant des règles pare-feu précises sur MikroTik.
  • Pourquoi pas de trafic affiché malgré une connexion active ? Vérifiez si le trafic est fasttracké et que les interfaces utilisées figurent bien dans vos graphiques.
  • Comment tester la disponibilité du port sans site externe ? Depuis un serveur distant, lancez un scan UDP nmap sur votre DDNS et port 51820 ; si vous obtenez une réponse, le port est accessible.

Conclusion

Vous avez déployé un serveur WireGuard sur MikroTik sous RouterOS 7.16, configuré l’interface wg-home, l’adressage 10.10.10.0/24, le résolveur DNS, les règles de pare-feu et NAT adaptées, ouvert le port UDP 51820, connecté smartphone et portable, choisi votre mode de routage (split ou complet) et validé le fonctionnement. Vous avez aussi découvert l’optimisation MTU, les exceptions FastTrack, la prise en charge d’IPv6 et les scénarios site-à-site.

Vous pouvez désormais ajouter d’autres utilisateurs, segmenter les accès, intégrer domotique et services locaux, ainsi qu’automatiser la génération de configurations. Gardez RouterOS à jour et faites régulièrement des sauvegardes pour assurer la pérennité de vos réglages.

Astuce : Chaque trimestre, consultez la liste des peers, supprimez les inactifs et renouvelez les clés sur les appareils sensibles — c’est un excellent réflexe de sécurité.

⚠️ Attention : Un VPN DIY, ce n’est pas seulement la configuration initiale, c’est aussi la maintenance : surveillez la disponibilité du port, archivez vos sauvegardes et sachez restaurer rapidement en cas de problème. Si vous cherchez une solution clé en main sans manipulations en console, pensez au serveur VPN personnel sur vpn.how : vous bénéficiez d’une IP dédiée non partagée, du support de WireGuard, OpenVPN, IKEv2, L2TP et SSTP au choix selon vos besoins, un démarrage automatique 5 minutes après paiement, sans logs, paiement par cartes russes (Tinkoff, Ozon), SBP et USDT/BTC, hébergements à Moscou, Saint-Pétersbourg, Amsterdam, Francfort, Londres, New York, San Jose, Chicago, Singapour, Sydney, Madrid, Helsinki, Stockholm, Varsovie, Copenhague, Stavanger ; tarifs dès 490 ₽ par jour ou 2490 ₽ par mois avec réductions sur les durées longues. Ce sera particulièrement pratique si vous n’avez pas d’IP publique ou peu de temps à consacrer au transfert de ports chez votre fournisseur.

Votre VPN domestique sur MikroTik est maintenant opérationnel. Entraînez-vous, documentez vos modifications et améliorez la configuration selon l’évolution de vos besoins. Bonne chance !

Roman Melnikov

Roman Melnikov

Technical Writer and System Administrator

Technical writer and DevOps engineer with 9 years of experience. Created over 50 detailed guides on system configuration and administration. His instructions helped thousands of professionals successfully solve technical tasks. Popular author on Habr and YouTube.
Bauman Moscow State Technical University. Information Systems and Technologies
Technical Documentation DevOps System Administration Linux Docker and Kubernetes CI/CD Infrastructure Automation Cloud Technologies System Monitoring Bash and Python Scripting

Partager cet article :