Zum Hauptinhalt springen
S-EDV news
← Alle Anleitungen
📘 Anleitung UGREEN NAS 04.11.2026 · 10 min Lesezeit

UGREEN NAS: Vaultwarden mit HTTPS als Passwortserver einrichten

Teil 72 der UGREEN-Serie: Vaultwarden 1.37 auf der UGREEN NAS, warum der Web-Tresor ohne HTTPS nicht startet, eingebautes TLS mit eigenem Zertifikat, Registrierung sperren, Admin-Token und Sicherung.

Geprüft am 04.11.2026 · für UGOS Pro 1.21.0.0190, Vaultwarden 1.37.5

WerbelinksMit * markierte Links sind Werbelinks: Bei einem Kauf erhalten wir eine Provision, der Preis bleibt gleich. Als Amazon-Partner verdiene ich an qualifizierten Verkäufen. Mehr dazu

Titelbild Teil 72: Vaultwarden auf der UGREEN NAS

Vaultwarden ist ein schlanker, mit Bitwarden kompatibler Server für Passwörter. Die Apps und Browsererweiterungen von Bitwarden verbinden sich damit, die Daten bleiben auf Ihrer UGREEN NAS. Diese Anleitung zeigt, warum der Web-Tresor ohne HTTPS nicht funktioniert, wie Sie es mit dem eingebauten TLS und einem eigenen Zertifikat im Heimnetz betreiben, die Registrierung nach dem ersten Konto sperren, die Verwaltungsseite absichern und die Datenbank richtig sichern.

Getestet auf einer UGREEN DXP4800 Pro mit UGOS Pro 1.21.0.0190 und Docker 29.6.2, mit Vaultwarden 1.37.5 im Image vaultwarden/server und dem Web-Tresor 2026.10.1.

Voraussetzungen

Schritt 1: Warum es ohne HTTPS nicht geht

Unser erster Start lief über reines HTTP auf Port 8100. Der Container lief, die Seite lud, aber statt der Anmeldung zeigte der Web-Tresor nur einen Hinweis:

Vaultwarden Web-Tresor über HTTP mit Hinweis auf fehlenden sicheren Kontext
Web-Tresor über HTTP: 1 der Hinweis, dass ein sicherer Kontext und damit HTTPS nötig ist.

Der Grund liegt im Browser: Der Web-Tresor verschlüsselt Ihre Daten schon im Browser. Die dafür nötige Schnittstelle Web Crypto stellen Browser nur auf Seiten mit HTTPS oder auf localhost bereit. Über die Adresse der NAS mit HTTP fehlt sie, und der Tresor bleibt leer. Sie brauchen also ein Zertifikat, bevor Sie das erste Konto anlegen.

Verifizieren: ip -4 addr auf der NAS zeigt die feste Adresse, die Sie in Schritt 2 und 3 eintragen.

Schritt 2: Ordner und Zertifikat anlegen

Für den Betrieb im Heimnetz erzeugen Sie ein eigenes Zertifikat, das auf die Adresse der NAS ausgestellt ist. Passen Sie volume2 und die Beispieladresse 192.168.1.10 an Ihre NAS an:

sudo mkdir -p /volume2/docker/vaultwarden/ssl
cd /volume2/docker/vaultwarden
sudo openssl req -x509 -newkey rsa:3072 -sha256 -days 825 -nodes \
  -keyout ssl/key.pem -out ssl/cert.pem \
  -subj "/CN=vaultwarden-nas" -addext "subjectAltName=IP:192.168.1.10"
sudo chmod 600 ssl/key.pem

Wichtig ist der Eintrag subjectAltName: Browser prüfen die Adresse dort und nicht im Feld CN. Das Zertifikat gilt 825 Tage. Weil es selbst ausgestellt ist, warnt der Browser beim ersten Aufruf, dazu mehr in Schritt 4.

sudo openssl x509 -in ssl/cert.pem -noout -ext subjectAltName -enddate
X509v3 Subject Alternative Name:
    IP Address:192.168.1.10
notAfter=Feb  6 10:26:00 2029 GMT

Verifizieren: Die Ausgabe zeigt die Adresse Ihrer NAS unter Subject Alternative Name.

Schritt 3: Die Compose-Datei schreiben

sudo nano compose.yaml
services:
  vaultwarden:
    image: vaultwarden/server:1.37.5
    container_name: vaultwarden
    restart: unless-stopped
    environment:
      DOMAIN: "https://192.168.1.10:8100"
      SIGNUPS_ALLOWED: "true"
      ROCKET_TLS: '{certs="/ssl/cert.pem",key="/ssl/key.pem"}'
      TZ: Europe/Berlin
    volumes:
      - ./data:/data
      - ./ssl:/ssl:ro
    ports:
      - "192.168.1.10:8100:80"
    labels:
      - wud.watch=false

Die wichtigsten Punkte:

  • ROCKET_TLS: schaltet das eingebaute HTTPS von Vaultwarden ein. Der Container spricht dann auf Port 80 verschlüsselt, der Name des Ports täuscht. Das Vaultwarden-Wiki empfiehlt für den Dauerbetrieb einen Reverse Proxy, das eingebaute TLS ist der einfachste Weg für das Heimnetz.
  • DOMAIN: die vollständige Adresse mit https und Port, unter der Sie Vaultwarden aufrufen.
  • SIGNUPS_ALLOWED true: nur für das erste Konto. Schritt 5 schaltet die Registrierung wieder ab.
  • 192.168.1.10:8100: bindet den Port nur an die Adresse der NAS, nicht an weitere Schnittstellen.
  • wud.watch=false: Ihren Passwortserver aktualisieren Sie von Hand, siehe Teil 69.
sudo docker compose up -d
sudo docker logs vaultwarden 2>&1 | grep launched
[start][INFO] Rocket has launched from https://0.0.0.0:80

Das Image war bei uns 311 MB groß, im Betrieb belegte Vaultwarden nur rund 12 MiB Arbeitsspeicher. Nach gut einer Minute meldete der Container healthy, die eingebaute Gesundheitsprüfung kommt auch mit TLS zurecht. Mehr zu Gesundheitsprüfungen steht in Docker Compose absichern.

Verifizieren: curl -k https://ADRESSE-DER-NAS:8100/alive antwortet, und sudo docker ps zeigt vaultwarden als healthy.

Schritt 4: Das erste Konto anlegen

Öffnen Sie https://ADRESSE-DER-NAS:8100. Der Browser warnt, weil er Ihr eigenes Zertifikat nicht kennt. In Chrome klicken Sie auf Erweitert und dann auf Weiter zu 192.168.1.10 (unsicher). Danach erscheint die Anmeldung des Web-Tresors.

Vaultwarden Anmeldung über HTTPS mit Link Konto erstellen
Web-Tresor über HTTPS: 1 Anmeldung mit E-Mail-Adresse, 2 Konto erstellen für das erste Konto.

Legen Sie über Konto erstellen Ihr Konto an. Das Master-Passwort ist der einzige Schlüssel zu Ihrem Tresor. Vaultwarden kennt es nicht und kann es nicht zurücksetzen. Notieren Sie es auf Papier und bewahren Sie es sicher auf.

Verifizieren: Sie können sich mit dem neuen Konto anmelden und sehen den leeren Tresor.

Schritt 5: Die Registrierung sperren

Solange SIGNUPS_ALLOWED auf true steht, kann jeder im Netz ein Konto anlegen. Ändern Sie den Wert, sobald Ihr Konto existiert:

      SIGNUPS_ALLOWED: "false"
sudo docker compose up -d

Der Link Konto erstellen bleibt im Web-Tresor sichtbar. Ein Versuch scheitert aber, bei uns mit dieser Meldung:

Vaultwarden Registrierung nach dem Sperren mit Fehlermeldung
Registrierung nach dem Sperren: 1 Fehlermeldung Registration not allowed, 2 das ausgefüllte Formular.

Die Sperre gilt laut Dokumentation nicht für Einladungen. Eigentümer und Admins einer Organisation können weiterhin Personen einladen, die sich dann trotz SIGNUPS_ALLOWED false registrieren. Nutzen Sie Vaultwarden allein, setzen Sie zusätzlich INVITATIONS_ALLOWED: "false". Über die Verwaltungsseite können Sie trotzdem jederzeit einladen. Ohne Mailserver registriert sich die eingeladene Person selbst mit der eingeladenen Adresse. Für Einladungen per E-Mail braucht Vaultwarden einen Mailserver, laut Dokumentation über SMTP_HOST, SMTP_PORT, SMTP_SECURITY, SMTP_FROM, SMTP_USERNAME und SMTP_PASSWORD.

Verifizieren: Ein Versuch unter Konto erstellen endet mit Registration not allowed or user already exists.

Schritt 6: Die Verwaltungsseite absichern

Ohne ADMIN_TOKEN ist die Verwaltungsseite unter /admin gesperrt. Sie meldete bei uns: The admin panel is disabled, please configure the 'ADMIN_TOKEN' variable to enable it. Das ist der sicherste Zustand. Brauchen Sie die Seite, etwa für Einladungen, setzen Sie einen Token. Als Klartext funktioniert er, Vaultwarden warnt aber beim Start:

[NOTICE] You are using a plain text `ADMIN_TOKEN` which is insecure.

Besser ist ein Argon2-Hash. Vaultwarden bringt dafür den Befehl hash mit, der Ihr Kennwort verdeckt abfragt und den Hash ausgibt:

sudo docker exec -it vaultwarden /vaultwarden hash --preset owasp

Der Befehl braucht ein Terminal, ohne -it bricht er ab. Übernehmen Sie die Zeile, die mit ADMIN_TOKEN= beginnt, in eine eigene Datei admin.env im Projektordner und schützen Sie sie mit sudo chmod 600 admin.env. Lassen Sie die einfachen Anführungszeichen stehen, damit Compose die Dollarzeichen im Hash nicht als Variablen liest. Binden Sie die Datei im Dienst ein und starten Sie neu:

    env_file: admin.env
sudo docker compose up -d

Bei uns kam der Hash so korrekt im Container an, und die Warnung zum Klartext-Token blieb aus. Auf der Verwaltungsseite melden Sie sich mit dem Kennwort an, das Sie beim Befehl hash eingegeben haben, nicht mit dem Hash. Wie Sie Token, Fail2Ban und Sicherung im Detail härten, zeigt Vaultwarden produktiv betreiben.

Vaultwarden Verwaltungsseite mit Abfrage des Admin-Tokens
Verwaltungsseite nach dem Setzen von ADMIN_TOKEN: 1 Abfrage des Tokens.

Wichtig: Sobald Sie auf der Verwaltungsseite einmal Einstellungen speichern, legt Vaultwarden die Datei data/config.json an. Deren Werte haben laut Dokumentation Vorrang vor den Variablen in der Compose-Datei. Ändern Sie Einstellungen danach auf der Verwaltungsseite, sonst bleiben Änderungen in compose.yaml ohne Wirkung.

Verifizieren: sudo docker exec vaultwarden printenv ADMIN_TOKEN beginnt mit $argon2id$, ohne Anführungszeichen, und sudo docker logs vaultwarden enthält keinen Hinweis auf einen plain text ADMIN_TOKEN.

Schritt 7: Die Datenbank sichern

Vaultwarden speichert alles im Ordner data: die SQLite-Datenbank db.sqlite3, den Schlüssel rsa_key.pem zum Signieren der Anmeldungen, später die Ordner attachments und sends und, sobald Sie die Verwaltungsseite nutzen, die Einstellungen in config.json. Die Datenbank im laufenden Betrieb einfach zu kopieren ist riskant. Der eingebaute Befehl backup erstellt eine saubere Kopie:

sudo docker exec vaultwarden /vaultwarden backup
Backup to 'data/db_20261104_111634.sqlite3' was successful

Der Zeitstempel im Dateinamen ist UTC, also im Winter eine Stunde früher als die deutsche Uhrzeit, im Sommer zwei Stunden. Die Sicherung enthält Ihren verschlüsselten Tresor und den Signaturschlüssel, legen Sie sie nur auf Ziele, auf die Unbefugte keinen Zugriff haben. Sichern Sie danach den ganzen Ordner data mit der Kopie und dem Schlüssel auf ein anderes Gerät, wie in Teil 61 beschrieben. Ob die Kopie brauchbar ist, prüfen Sie direkt auf der NAS:

sudo sqlite3 data/db_20261104_111634.sqlite3 "select count(*) from users;"
1

Verifizieren: Im Ordner data liegt eine Datei db_DATUM_UHRZEIT.sqlite3, und die Abfrage zählt Ihre Konten.

Für unterwegs: Reverse Proxy mit echtem Zertifikat

Das eigene Zertifikat reicht für den Web-Tresor im Browser, nachdem Sie die Warnung bestätigt haben. Die Browsererweiterung, die Desktop-App und die Apps von Bitwarden auf dem Handy verbinden sich laut Vaultwarden-Wiki erst, wenn Sie das Zertifikat auf jedem Gerät als vertrauenswürdig installieren, für iPhone und Mac zusätzlich mit der Angabe extendedKeyUsage=serverAuth im Zertifikat. Das Wiki rät von selbst ausgestellten Zertifikaten und vom eingebauten TLS ab und empfiehlt einen Reverse Proxy. Für den Alltag mit Apps und für den Zugriff von unterwegs gehört Vaultwarden deshalb hinter einen Reverse Proxy mit einem Zertifikat von Let's Encrypt, oder Sie erreichen es per VPN. Die Einrichtung mit Nginx Proxy Manager zeigt Bitwarden selbst hosten mit Vaultwarden. Hinter dem Proxy entfällt ROCKET_TLS, und DOMAIN bekommt die echte Domain. Ist Vaultwarden aus dem Internet erreichbar, schützen Sie die Anmeldung zusätzlich gegen das Durchprobieren von Kennwörtern. Das Werkzeug Fail2Ban sperrt Adressen nach mehreren Fehlversuchen, die Grundlagen dazu zeigt Linux-Server absichern mit UFW und Fail2Ban. Prüfen Sie außerdem regelmäßig, ob eine neue Version Sicherheitslücken schließt, denn ein Passwortserver im Internet ist ein lohnendes Ziel.

Typische Fehler

  • You need to enable HTTPS: Der Web-Tresor läuft über HTTP. ROCKET_TLS mit Zertifikat setzen oder einen Reverse Proxy nutzen.
  • Zertifikatsfehler trotz eigenem Zertifikat: Die Adresse fehlt unter subjectAltName. Zertifikat mit -addext neu erstellen.
  • Fremde können Konten anlegen: SIGNUPS_ALLOWED steht noch auf true.
  • Warnung zum Klartext-Token: ADMIN_TOKEN durch einen Hash aus vaultwarden hash ersetzen.
  • Änderung in compose.yaml wirkt nicht: Auf der Verwaltungsseite wurde gespeichert, data/config.json hat Vorrang. Einstellung auf der Verwaltungsseite ändern.
  • Kaputte Sicherung: db.sqlite3 im laufenden Betrieb kopiert. vaultwarden backup nutzen.

Häufige Fragen

Was passiert, wenn ich das Master-Passwort vergesse?

Dann sind die Daten im Tresor verloren. Vaultwarden speichert nur verschlüsselte Daten und kann sie ohne das Master-Passwort nicht öffnen. Bewahren Sie das Master-Passwort deshalb auf Papier an einem sicheren Ort auf. Unabhängig davon schützt die Anmeldung in zwei Schritten Ihr Konto zusätzlich, falls das Master-Passwort in falsche Hände gerät.

Wie aktualisiere ich Vaultwarden?

Erstellen Sie zuerst eine Sicherung mit vaultwarden backup, lesen Sie die Versionshinweise, ändern Sie das Tag und starten Sie neu:

sudo docker compose pull
sudo docker compose up -d

Brauche ich die Verwaltungsseite überhaupt?

Für ein einzelnes Konto nicht. Lassen Sie ADMIN_TOKEN dann weg, die Seite bleibt gesperrt. Sie brauchen sie für Einladungen, zum Sperren von Konten und für die Diagnose.

Fazit

Vaultwarden läuft auf der UGREEN NAS mit einem Container und nur rund 12 MiB Arbeitsspeicher. Ohne HTTPS geht es nicht, im Heimnetz reicht das eingebaute TLS mit einem eigenen Zertifikat für die Adresse der NAS. Sperren Sie die Registrierung nach dem ersten Konto, nutzen Sie für die Verwaltungsseite einen gehashten Token und sichern Sie regelmäßig mit vaultwarden backup. Für Apps und den Zugriff von unterwegs kommt ein Reverse Proxy mit echtem Zertifikat dazu.

Weiterführende Anleitungen und Quellen

UGREENUGREEN NASDockerVaultwardenPasswortmanagerUGOS Pro