How2-Host

NetBird selbst hosten – Schritt-für-Schritt-Anleitung

Erfahre in dieser Schritt-für-Schritt-Anleitung, wie du NetBird – eine moderne, Zero-Trust-basierte VPN-Plattform mit WireGuard – sicher auf deinem eigenen Server installierst und betreibst, inklusive HTTPS, Docker und Admin-Panel.

1 min Lesezeit
NetBird selbst hosten – Schritt-für-Schritt-Anleitung

Einleitung

NetBird ist eine moderne VPN-Plattform, die Zero-Trust-Prinzipien mit der Geschwindigkeit und Sicherheit von WireGuard kombiniert. Für Unternehmen, Datenschutz-Enthusiasten oder Admins mit hohem Sicherheitsanspruch bietet NetBird eine attraktive Self-Hosting-Option – ganz ohne Abhängigkeit von externen Cloud-Diensten.

In diesem Artikel zeigen wir dir Schritt für Schritt, wie du NetBird auf deinem eigenen Server installierst.

Voraussetzungen

Bevor es losgeht, stelle sicher, dass folgende Anforderungen erfüllt sind:

  • Linux-Server (z. B. Debian 12, Ubuntu 22.04 o. ä.)
  • Grundkenntnisse in Linux und Docker
  • Eine öffentliche Domain (z. B. vpn.meinefirma.de)
  • Zugang zum DNS-Management der Domain (für A-/CNAME-Records und optional ACME-DNS)
  • Installiertes Docker und Docker Compose

1. Projektstruktur erstellen

Erstelle ein Verzeichnis für deine NetBird-Installation:

``bash mkdir ~/netbird && cd ~/netbird ``

Lade das offizielle docker-compose.yml von GitHub:

``bash curl -o docker-compose.yml https://raw.githubusercontent.com/netbirdio/netbird/main/docker/docker-compose.selfhost.yml ``

2. .env Datei konfigurieren

Erstelle eine .env-Datei mit deinen Einstellungen:

``bash cp env.example .env nano .env ``

Wichtige Felder:

| Variable | Beschreibung | | ---------------------- | ---------------------------------------------------------- | | NETBIRD_DOMAIN | Die öffentliche Domain, z. B. vpn.example.com | | ACME_EMAIL | Deine E-Mail für Let's Encrypt | | DNS_API_TOKEN | (Optional) Token, wenn du ACME DNS-01-Challenge nutzt | | NETBIRD_ADMIN_EMAILS | Komma-separierte Admin-E-Mails (z. B. admin@example.com) |

3. SSL-Zertifikate aktivieren (optional, aber empfohlen)

NetBird verwendet Caddy als Reverse Proxy, um automatisch HTTPS-Zertifikate von Let's Encrypt zu erhalten.

Wenn du DNS-01-Challenges verwenden möchtest (z. B. bei interner IP), brauchst du einen API-Key deines DNS-Providers. Ansonsten funktioniert auch HTTP-01, solange dein Server öffentlich erreichbar ist.

4. Container starten

Starte den NetBird-Stack:

``bash docker compose up -d ``

Schaue dir die Logs an, um sicherzustellen, dass alles korrekt läuft:

``bash docker compose logs -f ``

5. Zugriff auf das Admin-Panel

Sobald alles läuft, kannst du NetBird unter deiner Domain im Browser aufrufen:

`` https://vpn.example.com ``

Nutze die im .env eingetragenen E-Mail-Adressen, um dich als Administrator anzumelden. Der erste Login erstellt das Admin-Konto.

6. Clients verbinden

Installiere den NetBird-Agent auf einem Gerät (z. B. Linux, macOS oder Windows):

``bash curl -sSfL https://pkgs.netbird.io/install.sh | sh ``

Dann mit dem Self-Hosted-Server verbinden:

``bash netbird up --management-url https://vpn.example.com ``

Der Client sollte nun im Admin-Panel sichtbar sein und kann per ACLs verwaltet werden.

7. Optional: DNS, Gruppen, ACLs einrichten

Über das Dashboard kannst du:

  • Geräte gruppieren
  • ACL-Regeln festlegen (z. B. nur bestimmte Gruppen dürfen miteinander kommunizieren)
  • benutzerdefinierte DNS-Zonen definieren

8. Container stoppen & aktualisieren

NetBird lässt sich leicht stoppen oder aktualisieren:

``bash docker compose down # Stoppt alles docker compose pull # Holt neue Images docker compose up -d # Startet erneut mit Updates ``

Fazit

Mit wenigen Schritten kannst du dir eine vollständig selbst gehostete VPN-Lösung aufbauen – sicher, performant und transparent. NetBird ist nicht nur eine Alternative zu klassischen VPNs, sondern ein moderner Zero-Trust-Netzwerkansatz für die Anforderungen von heute.

Links & Quellen