Remote Access
Gestion distante MikroTik avec OpenVPN
Configurez OpenVPN avec un serveur VPS et un client MikroTik pour la gestion distante — PKI, flux de certificats et bonnes pratiques de sécurité.
Résumé OpenVPN est un VPN basé sur TLS éprouvé qui fonctionne bien avec un VPS en tant que concentrateur et des routeurs MikroTik en tant que clients pour la gestion distante. Il précède WireGuard et Tailscale mais reste pertinent en raison de sa compatibilité étendue, de son contrôle PKI granulaire et de ses options de routage flexibles. Ce guide décrit la configuration du serveur Ubuntu VPS avec easy-rsa, le flux de travail des certificats clients, la configuration du client OVPN MikroTik et la liste de contrôle de sécurité qui maintient le déploiement auditabile dans le temps.
Comment OpenVPN permet-il la gestion distante de MikroTik ?
OpenVPN est une implémentation VPN basée sur OpenSSL établissant des tunnels chiffrés sur TCP ou UDP. Pour la gestion distante de MikroTik, la topologie classique associe un VPS Ubuntu en tant que serveur toujours en ligne à un ou plusieurs routeurs MikroTik en tant que clients. Le routeur initie le tunnel vers l’extérieur, il n’y a donc pas de problème de NAT et CGNAT côté client, et le VPS détient les routes et les règles NAT qui vous permettent d’accéder au routeur (et aux appareils derrière lui) à travers le tunnel.
Les forces d’OpenVPN sont une crypto mature (AES-256, SHA-256, TLS), la prise en charge d’IPv4 et IPv6, les modes TUN (routé) et TAP (pont), et une compatibilité étendue entre les fournisseurs et les systèmes d’exploitation, notamment RouterOS. Les inconvénients sont une consommation CPU plus importante que WireGuard sur les petits routeurs, une véritable étape de configuration PKI (CA, certificats, clés) et une limite spécifique à RouterOS que vous devez connaître — historiquement, le client OVPN MikroTik ne supporte que le transport TCP sur certaines versions. Pour les modèles de comparaison, consultez notre guide de gestion distante WireGuard, guide SSTP et guide Tailscale.
Comment fonctionne OpenVPN
OpenVPN établit un tunnel chiffré entre un serveur (généralement un VPS public) et un ou plusieurs clients. L’authentification utilise une AC, des certificats par client et optionnellement TLS-auth (ta.key). Deux modes courants :
- TUN (routé) — Routage IP entre les réseaux. Le choix standard.
- TAP (ponté) — Pontage de couche 2, utile pour les applications dépendant de diffusion. Plus lourd et rarement nécessaire.
Étape 1 : Installer OpenVPN sur le VPS
apt update && apt install -y openvpn easy-rsaÉtape 2 : Construire l’infrastructure PKI et les clés serveur
make-cadir ~/openvpn-cacd ~/openvpn-ca./easyrsa init-pki./easyrsa build-ca nopass./easyrsa gen-req server nopass./easyrsa sign-req server server./easyrsa gen-dhopenvpn --genkey --secret ta.keyGardez l’AC privée et sauvegardez-la. Traitez les clés AC comme des secrets de production — quiconque possédant l’AC peut forger des certificats clients légitimes.
Étape 3 : Écrire la configuration du serveur
/etc/openvpn/server.conf (minimum) :
port 1194proto udpdev tunca ca.crtcert server.crtkey server.keydh dh.pemserver 10.8.0.0 255.255.255.0push "redirect-gateway def1 bypass-dhcp"push "dhcp-option DNS 8.8.8.8"keepalive 10 120cipher AES-256-CBCuser nobodygroup nogrouppersist-keypersist-tunstatus openvpn-status.logverb 3Étape 4 : Démarrer le service et ouvrir le pare-feu
systemctl enable openvpn@serversystemctl start openvpn@serverufw allow 1194/udpSi vous exposez le port 1194 à l’ensemble d’Internet, sécurisez le VPS — fail2ban, clés SSH strictes et restrictions d’adresse IP source du pare-feu si possible. Les terminaisons VPN exposées à Internet sont continuellement sondées.
Étape 5 : Créer les certificats et la configuration client
Générez un certificat client avec easy-rsa (./easyrsa build-client-full client1 nopass) et regroupez les éléments suivants pour le client :
ca.crtclient1.crtclient1.keyta.key(si utilisé)client.ovpn— le fichier de configuration du client
Un client.ovpn minimal :
clientdev tunproto udpremote YOUR.VPS.IP 1194resolv-retry infinitenobindpersist-keypersist-tunca ca.crtcert client1.crtkey client1.keyremote-cert-tls servercipher AES-256-CBCverb 3Étape 6 : Configurer le MikroTik en tant que client OpenVPN
RouterOS supporte les connexions clients OpenVPN avec des limites spécifiques à RouterOS — notamment les versions anciennes restreignent au transport TCP.
- Téléchargez
ca.crt,client1.crtetclient1.keysur le MikroTik via la fenêtre Fichiers de Winbox. - Dans un terminal :
/interface ovpn-client add name=ovpn-out1 \ connect-to=YOUR.VPS.IP port=1194 \ user=vpnuser password="yourpassword" \ profile=default-encryption add-default-route=no
/interface ovpn-client printÉtat attendu :
status: connecteduptime: 00:01:03remote-address: 10.8.0.1local-address: 10.8.0.6Vérifiez les notes de version de RouterOS en cas d’échec de la connexion avec UDP — si votre version restreint le client OVPN à TCP, changez le proto serveur à tcp et la règle de pare-feu en conséquence. Pour une alternative compatible avec UDP sur RouterOS, WireGuard est la valeur par défaut moderne.
Atteindre un appareil interne à travers le tunnel
Pour atteindre un appareil derrière le MikroTik (par exemple, une caméra à 192.168.88.100), utilisez dst-nat sur le MikroTik pour exposer un port local sur le tunnel :
/ip firewall nat add chain=dstnat protocol=tcp dst-port=8081 \ action=dst-nat to-addresses=192.168.88.100 to-ports=80À partir du serveur ou d’un autre client VPN, connectez-vous via l’adresse routée et le port :
http://10.8.0.6:8081Le trafic s’écoule par le tunnel OpenVPN et atteint l’hôte interne.
Bonnes pratiques de sécurité
- Certificat unique par client. Ne réutilisez jamais les clés entre les appareils.
- Combinez les certificats clients TLS avec un nom d’utilisateur/mot de passe si vous souhaitez un contrôle de type double facteur.
- Faites tourner les clés et les certificats selon un calendrier. Implémentez les CRL (listes de révocation de certificats) pour les appareils perdus.
- Limitez les adresses IP source dans le pare-feu VPS si possible.
- Préférez UDP pour la performance ; vérifiez la compatibilité RouterOS par version.
- Surveillez la santé des connexions et les journaux (syslog,
openvpn-status.log). - Automatisez l’émission de certificats pour de nombreux appareils avec des scripts, mais gardez l’AC hors ligne si possible — une AC sur un serveur connecté est à un email d’hameçonnage près d’être compromise.
Pour un contexte de sécurité du plan de gestion plus large, consultez notre article Winbox bonnes pratiques de sécurité.
OpenVPN par rapport aux alternatives modernes
| Solution | Forces | Quand le choisir |
|---|---|---|
| OpenVPN | Compatibilité, contrôle granulaire des certificats | Flottes mixtes/héritées ; appliances d’entreprise |
| WireGuard | Vitesse, simplicité, crypto moderne | Appareils modernes, routeurs petite empreinte |
| SSTP | TLS sur port 443, traversée de pare-feu | Réseaux qui bloquent UDP et autres ports VPN |
| Tailscale / ZeroTier | Maille, identité, déploiement facile | Ordinateurs portables, équipes, collaboration cross-platform |
Quand utiliser OpenVPN
Choisissez OpenVPN lorsque le contrôle granulaire des certificats compte, que votre flotte inclut des appareils ou appliances hérités sans agents VPN modernes, ou que vous devez intégrer les règles de pare-feu existantes et l’infrastructure PKI d’entreprise. Si le débit brut et la surcharge CPU minimale comptent davantage, WireGuard gagne — consultez le tutoriel WireGuard et le guide Tailscale.
Passer à l’étape suivante
OpenVPN n’est pas une relique. C’est un outil fiable lorsque vous avez besoin de compatibilité et de contrôle explicite sur l’authentification et le routage. Associez-le à un VPS et à un client MikroTik et vous obtenez un chemin d’accès distant robuste et auditabile pour les caméras, les routeurs et les services internes.
Si vous préférez ignorer la cérémonie PKI par appareil, NATCloud de MKController fournit l’accès distant aux appareils derrière NAT ou CGNAT avec gouvernance centralisée, surveillance et reconnexion automatique — pas de certificats à maintenir par routeur.