Vaultwarden – Genialer Passwort-Safe


Ungeachtet der sich ausbreitenden Passkeys sind klassische Passwörter immer noch für viele Webdienste Realität. Nicht zuletzt im Homelab, denn viele Apps haben schlicht noch keine alternativen Login-Methoden implementiert. Selbst TOTP (also eine zeitbasierte 2-Faktor Autorisierung) ist nicht immer verfügbar.

Was macht ein gutes Passwort aus? Experten sind sich einig: Je länger und komplexer ein Passwort, desto sicherer ist man als Anwender vor einfachem Ausprobieren und Brute Force-Attacken. Einfach Passwörter finden sich auch auf Listen, die die meistgenutzten Passwörter Hackern zur Verfügung stellen.

Wer merkt sich denn sowas? Vaultwarden!

Sich Passwörter vom Schlage eines „jHuio76#$W“kdiauiHG!“ zu merken, ist für Menschen schlicht unmöglich. Ein Passwort-Safe muss her. Da gibt es eine Menge Anbieter wie

  • 1Password
  • Dashlane
  • KeePass
  • Bitwarden

Für letzteres kann man sich im Homelab eine App anlegen. Auf schwächerer Hardware bietet sich aber eine alternative Implementierung an: Vaultwarden. In Rust programmiert, bietet Vaultwarden alle Features von Bitwarden, läuft aber auch in einem schwächer ausgerüsteten Homelab stabil.

Installation mit Docker Compose

Installiert ist Vaultwarden recht schnell per Docker Compose. Meine docker-compose.yaml sieht so aus:

services:
version: '3'

services:
  vaultwarden:
    container_name: vaultwarden
    image: vaultwarden/server:latest
    restart: unless-stopped
    volumes:
      - ./data/:/data/
    ports:
      - 9445:80 #Kann auch 80:80
    environment:
#     - ROCKET_TLS={certs="/ssl/certs/certs.pem",key="/ssl/private/key.pem"}  // Environment variable is specific to th>
     - ADMIN_TOKEN=UltrageheimerToken
     - WEBSOCKET_ENABLED=true
     - SIGNUPS_ALLOWED=true
     - EMERGENCY_ACCESS_ALLOWED=true
     - DOMAIN=https://vaultwarden-app.hanold.online
#Mail
     - SMTP_HOST=DeinServer
     - SMTP_FROM=DeineMailadresse
     - SMTP_FROM_NAME=Vaultwarden
     - SMTP_SECURITY=starttls  #Kann “starttls” / “force_tls” / “off”
     - SMTP_PORT=587
     - SMTP_USERNAME=DeinUsername
     - SMTP_PASSWORD=DeinPassowrt
     - SMTP_AUTH_MECHANISM=Login #Kann “Plain” / “Login” / “Xoauth2”

Nach einem docker-compose up -d kannst du dich dann bei deinem Vaultwarden-Server anmelden. Sobald die Ersteinrichtung abgeschlossen ist, kannst du die Bitwarden-Apps aus den App Stores (für Mac, iPhone, Windows und Android) laden und damit deine Passwörter verwalten.

Eine Sache noch: In meinem Setup kümmert sich NGINX Proxy Manager um die Verwaltung der SSL-Zertifikate. Denn ohne Zertifikat verweigert Vaultwarden den Login. Was auch klar ist bei der Sensibilität der darin gespeicherten Daten.