Loading page...Загружаем страницу...正在加载页面...
AtlasRepo

I self-host my mesh VPN with NetBird instead of Tailscale — here's the one reason, and where Tailscale still wins

Description and use

NetBird enables a fully self‑hosted WireGuard mesh integrated with an existing IdP, eliminating a second control plane and keeping all access decisions in one place.

Problem

Need a VPN that integrates with existing identity provider and keeps control plane self-hosted, avoiding a third‑party brain.

Outcome

NetBird enabled a fully self‑hosted WireGuard mesh that integrates with the existing IdP, eliminating a second control plane and keeping all access decisions in one place. It required some configuration work (token format, split‑horizon DNS) but provided tighter security alignment.

Workflow

  • 1. Install NetBird server and client on devices
  • 2. Configure NetBird to use OIDC with existing IdP
  • 3. Set dashboard to use ID token (JWT) instead of opaque access token
  • 4. Verify peer connectivity and name resolution over mesh
  • 5. Test split‑horizon DNS behavior and adjust resolvers
  • 6. Monitor and back up NetBird control plane
  • 7. Offboard devices/users via IdP to remove them from VPN

Evidence

NetBird speaks OIDC to my existing self-hosted identity provider. So logging into the mesh is logging into everything else — same username, same 2FA, same place to revoke a person.

Source

The token format gotcha. Wiring NetBird to my identity provider, the dashboard authenticated fine but API calls failed. The cause: my IdP was handing out opaque access tokens, and NetBird's dashboard needed a JWT it could actually read claims from.

Source

  • Record date: 2026-10-01T02:59:05.788Z