Files
2026-06-09 18:40:21 +02:00

9.0 KiB


title: NetBird created: 2026-06-07 updated: 2026-06-07 type: app tags: [catalogue, vpn, mesh, wireguard, zerotrust, nat-traversal, go, tailscale-alternative] confidence: high contested: false sources: [https://selfh.st/apps/?tag=VPN, https://github.com/netbirdio/netbird]

🔐 NetBird

Le challenger open source de Tailscale — mesh VPN WireGuard avec NAT traversal, panel web intégré et posture zero-trust en une seule stack.

📋 Informations Générales

Champ Valeur
Site web netbird.io
GitHub netbirdio/netbird
License Apache-2.0 (server) + client propriétaire (mais open source)
Langage Go + TypeScript (panel) + React (UI)
Étoiles GitHub 25 773
Dernière MAJ 2026-06-06
Catégorie [[cat-vpn

📝 Description

NetBird combine WireGuard + NAT traversal + un panel web self-hosted pour offrir une expérience comparable à Tailscale, mais 100% open source (Apache-2.0) avec un serveur de coordination, un serveur de signalisation STUN/ICE et un serveur de relais TURN entièrement auto-hébergeables. Lancé en 2021 par une équipe franco-turque, NetBird a connu une adoption massive (Airbnb, Bosch, Siemens dans la communauté) grâce à son approche "tout-en-un" : pas besoin de Docker Compose à rallonge, tout est fourni.

Là où Headscale nécessite d'utiliser le client Tailscale officiel et reste focalisé sur le "control plane", NetBird fournit un client natif netbird (CLI + GUI) et un dashboard web pour gérer utilisateurs, peers, ACLs, sans dépendre d'un service externe. C'est un concurrent direct de Tailscale avec une proposition de valeur claire : "Tailscale, mais chez vous, sans dépendance cloud".

  • Mesh VPN basé sur WireGuard : performances brutes excellentes
  • NAT traversal : STUN + ICE + TURN (relais)
  • Panel web intégré : gestion des users, peers, ACLs, politiques
  • Auth providers : intégration native OIDC (app-authentik, Keycloak, Google, GitHub, Azure AD, Okta, Zitadel…)
  • SSO + MFA : hérite de votre IdP
  • Posture zero-trust : vérifications de device (OS, version NetBird, version WireGuard, horloge)
  • MagicDNS : résolution automatique
  • Routes & Exit nodes : partager internet ou un sous-réseau LAN
  • Reverse shell : ouvrir un shell sécurisé sur un peer distant depuis le panel
  • API gRPC + REST
  • Audit logs : traçabilité complète des connexions

Public cible : équipes de 5 à 500 personnes, homelabbers qui veulent un panel web sans dépendre du SaaS Tailscale, organisations réglementées (santé, finance, OIV). NetBird brille dans les scénarios où vous voulez une seule stack pour VPN + SSO + dashboard.

Vs Tailscale/Headscale : Tailscale/Headscale misent sur la simplicité (client Tailscale officiel, écosystème mature) ; NetBird mise sur le panel web intégré et le zero-trust explicite (posture check). Si vous n'avez pas d'IdP et que vous voulez un panel web, NetBird gagne. Si vous aimez le client Tailscale et avez déjà un IdP, Headscale est plus léger.

🚀 Installation

Option 1 : Docker Compose (auto-hébergé complet)

# docker-compose.yml
version: '3.8'
services:
  # Management server (API + Dashboard + Signal)
  netbird-server:
    image: netbirdio/netbird-server:latest
    container_name: netbird-server
    restart: unless-stopped
    ports:
      - "80:80"       # HTTP (redirection)
      - "443:443"     # HTTPS (API + Dashboard)
      - "51820:51820/udp"  # WireGuard (optionnel si userspace)
    volumes:
      - netbird-data:/var/lib/netbird-server
    environment:
      - NB_DOMAIN=netbird.example.com
      - NB_PUBLIC_IP=1.2.3.4
    labels:
      - "traefik.enable=true"
      - "traefik.http.routers.netbird.rule=Host(`netbird.example.com`)"
      - "traefik.http.routers.netbird.entrypoints=websecure"
      - "traefik.http.routers.netbird.tls.certresolver=letsencrypt"
      - "traefik.http.services.netbird.loadbalancer.server.port=443"

  # TURN server (relais pour NAT impossible)
  coturn:
    image: coturn/coturn:latest
    container_name: netbird-turn
    restart: unless-stopped
    network_mode: host
    command: >
      -n
      --log-file=stdout
      --realm=netbird.example.com
      --use-auth-secret
      --static-auth-secret=ChangeMeStaticSecret
      --listening-port=3478
      --min-port=49160
      --max-port=49200
      --external-ip=1.2.3.4

volumes:
  netbird-data:

💡 Le serveur TURN (coturn) est optionnel mais fortement recommandé : sans lui, le NAT traversal échoue pour ~10-15% des pairs (NAT symétrique, 4G CGN).

Option 2 : SaaS managé

Pour tester : app.netbird.io (offre gratuite généreuse : jusqu'à 5 users, 100 peers).

⚙️ Configuration Initiale

  1. DNS : pointer netbird.example.com vers le serveur, laisser Traefik gérer le HTTPS
  2. Premier admin : créer via netbird-server create-admin --email admin@example.com
  3. Setup OIDC (recommandé) : Settings → Authentication → Add OIDC et pointer vers app-authentik / Keycloak
  4. Créer des peers : download le client (Windows/macOS/Linux/iOS/Android), login avec SSO
  5. Définir les ACLs : dans le dashboard, créer des groupes (Admins, Devs) et des règles (qui peut joindre qui)
  6. Tester : depuis un peer, ping peer-nom.local (MagicDNS) ou utiliser le reverse shell depuis l'UI

🔄 Alternatives

Open Source

  • app-tailscale (SaaS) + app-headscale (self-hosted) — L'écosystème dominant
  • app-zerotier + app-ztnet — Mesh L2, plus ancien, philosophie différente
  • app-wg-easy — WireGuard "plat" sans mesh
  • Nebula (overlay réseau par Slack) — concurrent historique, moins actif
  • Pritunl — OpenVPN/WireGuard avec panel enterprise

Propriétaires

  • Tailscale (freemium : 100 devices / 3 users, puis 5$/user/mois)
  • Cloudflare Tunnel + WARP (zero-trust, gratuit avec limites)
  • Zscaler Private Access (enterprise)
  • Palo Alto Prisma Access
  • NordLayer (NordVPN business)

Comparaison NetBird vs alternatives

Critère NetBird Tailscale Headscale ZeroTier Pritunl
Self-hosted complet (sans panel) (ZTnet partiel)
Panel web intégré (UI tierces)
License Apache-2.0 Propriétaire Apache-2.0 BSL Apache-2.0
Protocole base WireGuard WireGuard WireGuard Propre L2 WG/OpenVPN
OIDC natif
Posture check (intégré) (payant) Limité
MagicDNS
Reverse shell (SSH)
Idempotent setup (1 stack) (Tailscale cloud) ⚠️ (multi-composants)

Verdict : NetBird est le meilleur choix "tout-en-un" open source pour qui veut éviter Tailscale. Headscale reste plus léger si vous êtes déjà à l'aise avec le CLI et aimez le client Tailscale.

🔐 Sécurité

  • WireGuard moderne : Curve25519, ChaCha20-Poly1305, BLAKE2s — code audité, surface d'attaque minimale
  • ⚠️ Visibilité des IPs publiques : WireGuard route au niveau IP, le serveur de coordination voit les métadonnées réseau de vos peers (qui parle à qui). Pour l'anonymat, combiner avec Tor
  • Chiffrement bout-en-bout : les paquets WireGuard ne sont déchiffrables que par les pairs, jamais par le serveur NetBird (qui n'est qu'un "annuaire")
  • SSO + MFA obligatoires : OIDC force l'authentification multifacteur (TOTP, WebAuthn via votre IdP app-authentik)
  • Posture zero-trust : refus automatique des pairs non conformes (OS obsolète, client NetBird trop vieux, horloge décalée)
  • Audit logs : tracer toutes les connexions dans le dashboard, exporter vers app-loki / SIEM (app-wazuh)
  • Clés privées : générées localement sur chaque peer, JAMAIS transmises au serveur. Backup du volume netbird-data chiffré (app-vaultwarden pour le JWT signing key, age pour les archives)
  • ⚠️ Pour l'authentification des users, brancher un IdP mature (app-authentik, app-keycloak) — ne pas se contenter des magic links email

📚 Ressources

Pages Liées