open-how2 – Entdecke. Verstehe. Nutze.
Veröffentlicht am
How2-Host

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

Autor
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:

mkdir ~/netbird && cd ~/netbird

Lade das offizielle docker-compose.yml von GitHub:

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:

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:

docker compose up -d

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

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):

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

Dann mit dem Self-Hosted-Server verbinden:

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:

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