Aller au contenu
Homelab medium

Tailscale vs OpenVPN : VPN mesh WireGuard pour accès à distance simple

16 min de lecture

logo tailscale

Tailscale permet d’accéder à vos serveurs depuis n’importe où en 10 minutes, sans ouvrir de ports ni gérer d’IP dynamique. Contrairement à OpenVPN, la configuration se fait en quelques clics et chaque machine reçoit une IP fixe dans un réseau privé maillé sécurisé par WireGuard.

  • Accès distant sécurisé à toutes vos machines depuis n’importe où
  • IP fixe privée pour chaque appareil (fini les problèmes d’IP dynamique)
  • SSH simplifié sans exposer le port 22 sur Internet
  • Accès au LAN (NAS, routeur) via subnet router
  • Sortie Internet “comme à la maison” en déplacement (exit node)
ÉlémentDétail
CompteGratuit sur tailscale.com (Google, Microsoft ou email)
OS supportésLinux, Windows, macOS, iOS, Android
Accès adminDroits sudo/admin pour l’installation
Temps estimé10–15 minutes pour l’installation de base
  1. Installation — 5 min
  2. Connexion SSH — 2 min
  3. Subnet router — 5 min (optionnel)
  4. Exit node — 3 min (optionnel)
  5. Checklist sécurité — 5 min

Jusqu’à récemment, j’utilisais OpenVPN pour accéder à mon homelab à distance. Ça fonctionnait bien, tant que mon FAI me fournissait une IP fixe. Puis des travaux dans la rue ont tout changé : mon IP publique change maintenant régulièrement et mon fournisseur ne propose plus d’IP fixe.

Face à ce problème, j’ai testé Tailscale. Contrairement à OpenVPN, Tailscale gère automatiquement les changements d’IP et crée un réseau privé où chaque machine dispose d’une IP fixe interne, même si l’IP publique change.

CritèreOpenVPNTailscale
ConfigurationComplexe (certificats, ports)Simple (quelques clics)
IP dynamiqueNécessite un DynDNSGéré automatiquement
Ports ouvertsOui (UDP 1194 typiquement)Non (connexions sortantes)
ArchitectureClient-serveurMesh (peer-to-peer)
ProtocoleOpenVPNWireGuard

Comparaison VPN traditionnel hub-and-spoke vs réseau mesh Tailscale

Dans un VPN traditionnel (à gauche), tout le trafic passe par un serveur central : latence élevée, goulot d’étranglement, et point unique de défaillance. Avec Tailscale (à droite), chaque appareil se connecte directement aux autres via WireGuard : latence minimale et pas de point de congestion.

Tailscale est un VPN nouvelle génération basé sur WireGuard. Il crée un réseau mesh (maillé) où chaque appareil peut communiquer directement avec les autres, sans passer par un serveur central.

Quand vous créez un compte Tailscale, vous obtenez un tailnet : votre réseau privé personnel. Chaque appareil connecté reçoit une IP fixe dans la plage 100.x.y.z (appelée CGNAT). Cette IP reste la même, peu importe où se trouve l’appareil dans le monde.

WireGuard est un protocole VPN moderne créé par Jason A. Donenfeld. Ses avantages :

  • Légèreté : ~4000 lignes de code (vs 100 000+ pour OpenVPN)
  • Performance : connexions quasi-instantanées, latence minimale
  • Sécurité : primitives cryptographiques modernes (ChaCha20, Poly1305, Curve25519)
  • Auditabilité : code suffisamment petit pour être audité en profondeur

Tailscale ajoute une couche de coordination et de gestion au-dessus de WireGuard, simplifiant l’échange de clés et la découverte des pairs.

  1. Installation : Tailscale s’installe en quelques clics sur tous les OS
  2. Authentification : Connexion via un fournisseur d’identité (Google, Microsoft, GitHub…)
  3. Coordination : Les serveurs Tailscale distribuent les clés publiques et les adresses
  4. Connexion directe : Les appareils établissent des connexions peer-to-peer chiffrées
  5. NAT traversal : Tailscale utilise des techniques avancées (STUN, ICE) pour traverser les NAT

  1. Créez un compte

    Rendez-vous sur tailscale.com et créez un compte gratuit (Google, Microsoft ou email).

  2. Installez l’application

  3. Connectez-vous

    Fenêtre de terminal
    sudo tailscale up

    Un lien s’affiche pour autoriser l’appareil dans votre navigateur.

  4. Vérifiez la connexion

    Fenêtre de terminal
    tailscale status

    Vous devriez voir votre machine avec son IP Tailscale (100.x.x.x).

  5. Répétez sur vos autres appareils

    Installez Tailscale sur chaque machine que vous voulez connecter.

Machines connectées à Tailscale


Tailscale offre un terminal SSH directement dans le navigateur :

  1. Connectez-vous au tableau de bord Tailscale
  2. Trouvez la machine cible dans la liste
  3. Cliquez sur le bouton SSH à côté du nom

Terminal integré tailscale

Fenêtre de terminal
ssh utilisateur@100.x.x.x

Ou avec MagicDNS activé :

Fenêtre de terminal
ssh utilisateur@nom-machine

Configuration SSH recommandée (~/.ssh/config) :

Host *.tail*.ts.net
User votre_nom_utilisateur
IdentityFile ~/.ssh/votre_cle_privee

Un subnet router permet d’accéder à des appareils qui n’ont pas Tailscale installé (NAS, routeur, imprimante, caméras IP).

Exemple d’Architecture complète d’un homelab avec Tailscale

Section intitulée « Exemple d’Architecture complète d’un homelab avec Tailscale »

Architecture homelab avec subnet router et exit node Tailscale

Ce schéma illustre une configuration typique :

  • Le subnet router (en violet) expose le réseau local 192.168.1.0/24 à votre tailnet
  • Les appareils avec Tailscale (en vert) communiquent directement entre eux
  • Les appareils sans Tailscale (en gris) restent accessibles via le subnet router
  • L’exit node permet de faire sortir tout le trafic Internet via votre connexion domestique

Le subnet router agit comme une passerelle entre votre tailnet et un réseau local traditionnel. Il utilise le SNAT (Source Network Address Translation) par défaut : le trafic des appareils Tailscale apparaît comme provenant du subnet router pour les appareils du LAN.

  • Accéder à l’interface web de votre routeur (192.168.1.1)
  • Monter un partage NFS/SMB sur un NAS
  • Administrer des équipements IoT
  1. Activez le routage IP sur la machine qui servira de passerelle

    Fenêtre de terminal
    echo 'net.ipv4.ip_forward = 1' | sudo tee -a /etc/sysctl.d/99-tailscale.conf
    echo 'net.ipv6.conf.all.forwarding = 1' | sudo tee -a /etc/sysctl.d/99-tailscale.conf
    sudo sysctl -p /etc/sysctl.d/99-tailscale.conf
  2. Annoncez le sous-réseau

    Fenêtre de terminal
    sudo tailscale up --advertise-routes=192.168.1.0/24
  3. Approuvez la route dans la console Tailscale

    • Allez dans Machines → cliquez sur la machine → Edit route settings
    • Cochez la route annoncée
  4. Vérifiez l’accès

    Depuis un autre appareil Tailscale, pingez une IP du LAN :

    Fenêtre de terminal
    ping 192.168.1.1

Un exit node fait transiter tout votre trafic Internet via une machine de votre réseau. Contrairement au subnet router qui ne route que vers des réseaux spécifiques, l’exit node devient votre passerelle Internet par défaut.

FonctionSubnet routerExit node
ObjectifAccéder à un réseau privéRouter tout le trafic Internet
RoutesSous-réseaux spécifiques (192.168.x.x)Routes par défaut (0.0.0.0/0, ::/0)
Cas d’usageAccéder au NAS, routeurSécuriser Wi-Fi public
  • Wi-Fi public : chiffrer tout le trafic sur un réseau non fiable (café, aéroport)
  • Accès géo-restreint : apparaître comme si vous étiez chez vous (streaming, banque)
  • Compliance : respecter les politiques qui exigent un VPN
  • Centraliser les logs : toutes les connexions sortent d’une seule IP
  1. Sur la machine exit node (typiquement un serveur homelab)

    Fenêtre de terminal
    sudo tailscale up --advertise-exit-node
  2. Approuvez dans la console Tailscale (même procédure que subnet router)

  3. Sur le client (laptop en déplacement, téléphone…)

    Fenêtre de terminal
    sudo tailscale up --exit-node=nom-de-la-machine

    Ou dans l’app mobile : sélectionnez l’exit node dans les paramètres.

  4. Vérifiez

    Fenêtre de terminal
    curl ifconfig.me

    L’IP affichée doit être celle de votre connexion domestique.


Tailscale utilise WireGuard, un protocole VPN moderne reconnu pour sa simplicité et son efficacité.

FonctionAlgorithmeRôle
ChiffrementChaCha20Confidentialité des données
AuthentificationPoly1305Intégrité et authenticité
Échange de clésCurve25519Diffie-Hellman sur courbe elliptique
Dérivation de clésBLAKE2sGénération de clés de session
HandshakeNoise ProtocolÉtablissement de connexion sécurisé
  • Pas de choix cryptographique : WireGuard impose des algorithmes modernes, pas de négociation vulnérable
  • Code minimal : ~4000 lignes (vs 100 000+ pour OpenVPN), plus facile à auditer
  • Perfect Forward Secrecy : même si une clé est compromise, les sessions passées restent sécurisées
  • Pas de state server-side : résistant aux attaques par déni de service

Une question fréquente : “Tailscale est-il vraiment sécurisé si c’est dans le cloud ?”

ComposantOù ?Rôle
Control planeServeurs TailscaleCoordination, distribution des clés publiques, ACL
Data planeDirect entre vos machinesTrafic chiffré, ne passe pas par Tailscale

En clair : Tailscale ne voit jamais vos données. Il ne fait que permettre à vos machines de se trouver. Le trafic passe directement entre elles (ou via des relais DERP si la connexion directe échoue, mais toujours chiffré de bout en bout).


  • Définir des ACL pour limiter qui accède à quoi

    {
    "acls": [
    {"action": "accept", "src": ["tag:admin"], "dst": ["*:*"]},
    {"action": "accept", "src": ["tag:user"], "dst": ["tag:web:80,443"]}
    ]
    }
  • Activer Tailscale SSH pour centraliser l’authentification

    Fenêtre de terminal
    sudo tailscale up --ssh
  • Taguer vos machines pour organiser les permissions

    • Console → Machine → Edit tags → tag:server, tag:laptop
  • Activer l’expiration des clés (Settings → Keys) pour forcer la ré-authentification

  • Configurer les posture checks (payant) pour bloquer les appareils non conformes

  • Auditer les accès via les logs dans la console Tailscale


SymptômeCause probableSolution
Subnet route ne fonctionne pasIP forwarding désactivésysctl net.ipv4.ip_forward=1
Connexion lente ou via relaisNAT strict, pare-feu bloquant UDPVérifier les logs avec tailscale netcheck
”DERP” dans les logsConnexion directe impossible, passe par relaisNormal derrière certains NAT, trafic reste chiffré
Machine invisibleNon autoriséeApprouver dans la console Tailscale
MagicDNS ne résout pasMagicDNS désactivéActiver dans Console → DNS
Exit node lentBande passante de votre connexion domestiqueNormal, limité par votre upload

Commandes utiles :

Fenêtre de terminal
# État de la connexion
tailscale status
# Diagnostic réseau complet
tailscale netcheck
# Voir les routes
tailscale status --json | jq '.Peer[].AllowedIPs'
# Logs détaillés
journalctl -u tailscaled -f

Tailscale propose plusieurs plans adaptés à différents usages. Pour un homelab personnel, le plan gratuit est généralement suffisant.

PlanPrixUtilisateursAppareilsPoints clés
PersonalGratuit3100Toutes les fonctionnalités essentielles, pour toujours
Personal Plus5$/mois6100Partage avec famille/amis
Starter6$/utilisateur/moisIllimité100 + 10/userACL basiques, MagicDNS, split tunneling
Premium18$/utilisateur/moisIllimité100 + 20/userTailscale SSH, Funnel, ACL avancées, MDM
EnterpriseSur devisIllimitéSur mesurePosture management, SCIM, support dédié

Inclus dans tous les plans (y compris gratuit) :

  • Subnet routers et exit nodes
  • MagicDNS
  • Taildrop (transfert de fichiers)
  • ACL de base (par IP, subnet, tags, autogroups)
  • Support multi-plateforme

Nécessite un plan payant (Starter+) :

  • ACL par groupes et utilisateurs
  • Logs de configuration

Nécessite Premium ou supérieur :

  • Tailscale SSH avec gestion centralisée
  • Tailscale Funnel (exposer sur Internet)
  • Logs de flux réseau
  • Politiques MDM

Enterprise uniquement :

  • SSH session recording
  • Log streaming
  • Posture checks avancés
  • SCIM/provisioning

  • Tailscale crée un réseau mesh sécurisé par WireGuard, sans ouvrir de ports
  • Chaque machine reçoit une IP fixe (100.x.x.x), indépendamment de l’IP publique
  • MagicDNS permet d’utiliser des noms plutôt que des IP
  • Subnet router donne accès aux appareils du LAN sans Tailscale
  • Exit node fait transiter tout le trafic via une machine de confiance
  • Le trafic ne passe jamais par Tailscale (sauf relais DERP chiffré)
  • Les ACL sont essentielles pour une sécurité en production

Ce site vous est utile ?

Sachez que moins de 1% des lecteurs soutiennent ce site.

Je maintiens +700 guides gratuits, sans pub ni tracing. Aujourd'hui, ce site ne couvre même pas mes frais d'hébergement, d'électricité, de matériel, de logiciels, mais surtout de cafés.

Un soutien régulier, même symbolique, m'aide à garder ces ressources gratuites et à continuer de produire des guides de qualité. Merci pour votre appui.