Vaultwarden unter Docker im Proxmox LXC Container

Moin!

Bitwarden-rs wurde umbenannt in Vaultwarden. Daher gibt es ein neues Tutorial zum installieren von Vaultwarden. Das alte Tutorial wird weiterhin verfügbar bleiben. Dieses mal werden wir allerdings Docker-compose verwenden. So wird das Updaten des Containers erheblich vereinfacht.

Ihr benötigt dazu:

Ich starte persönlich immer gerne mit einem neuen LXC Container auf Basis von Debian 10 mit installierten sudo, Docker und Portainer. Für solche Fälle clone ich ein vorbereitetes Template innerhalb von Proxmox.

Optional: Ich persönlich lege immer einen User für Docker an, der keine sudo Berechtigung hat, aber Container verwalten darf. Dazu legen wir einen User an und fügen ihn der Docker Gruppe hinzu.

adduser vaultwarden
usermod -aG docker vaultwarden
su vaultwarden

Anschließend erstellen wir einen neuen Ordner. Dort angekommen erstellen wir die benötigte docker-compose.yml.
Optional: Wer mit MariaDB arbeiten und auf die interne Datenbank verzichten möchte, fügt die Zeile mit -e DATABASE_URL hinzu.

version: '3'
services:
  vaultwarden:
    image: vaultwarden/server:latest
    container_name: vaultwarden
    restart: always
    environment:
      - DATABASE_URL=mysql://username:passwort@ip-mariadb/datenbankname
      - LOG_LEVEL=info
      - TZ=Europe/Berlin
    ports:
      - 80:80
      - 443:443
    volumes:
      - /vw-data:/data/

So sieht die Basisinstallation aus. Ihr könnt nun Vaultwarden über die IP eures Containers erreichen.
Optional: Nun erstellen wir bei unserem Domainprovider eine Subdomain und hinterlegen dort unsere öffentliche IP. Anschließend hinterlegt ihr bei eurem Reverse Proxy Server die Weiterleitung auf die gewünschte interne IP und generiert ein SSL Zertifikat mit Let’s Encrypt.

Schon könnt ihr Vaultwarden über https://subdomain.euredomain.tld erreichen.

Wir können Vaultwarden nun noch um einige sinnvolle Einstellungen erweitern.

  • Adminseite aktivieren
  • offene Account Registrierung deaktivieren
  • Nutzer können andere Nutzer einladen deaktivieren
  • SMTP Server für Benachrichtigungen von Vaultwarden
  • Neue User zur Verifikation per Email zwingen
  • Passworthinweis dauerhaft deaktivieren (schütz Anwender vor eigener Dummheit)

Für jede Einstellung die wir hinzufügen stoppen wir den Container und editieren die docker-compose.yml. Danach wird der Container neu gebaut und gestartet. Die Einstellungen werden unter dem Punkt environment: ergänzt. Dies funktioniert wie folgt:

docker-compose down
nano docker-compose.yml
docker-compose up -d

Fangen wir mit der Adminseite an. Zuerst generieren wir uns einen sicheren Admintoken. Dieser sichert den Zugang zur Adminseite und verhindert das Unbefugte Zugriff erhalten.

openssl rand -base64 64
gE6i9XNXTnG9mzBob5GTJMsLxDAcqudeGBcZnwuDDleN2aD+Qlm4dGMMDCMBtL/Y
CtaKBZlglE9I0uhwhu6cfA==

// Token in die Zwischenablage kopieren
// Bedenke! Jeder der diesen Token hat, besitzt die Kontrolle über DEINEN Passwortmanager!!!

Nun docker-compose.yml editieren und folgende Variabel ergänzen.

nano docker-compose.yml

- ADMIN_TOKEN=DenVorherErstelltenAdmintokenEinfügen

Die Adminseite könnt ihr ganz einfach mit https://subdomain.euredomain.tld/admin aufrufen. Wer nicht möchte das jeder der eure Domain kennt sich einen Account in eurem Passwort Manager erstellen kann deaktiviert die Registrierungsfunktion von Vaultwarden.

- SIGNUPS_ALLOWED=false

Um eure Nutzer daran zu hindern andere User ohne euer Wissen einladen zu können deaktivieren wir diese Funktion ebenfalls.

- INVITATIONS_ALLOWED=false

Damit Vaultwarden auch in der Lage ist User per Email zu benachrichtigen müssen wir einen entsprechenden SMTP Server konfigurieren. Die benötigten Infos könnt ihr bei eurem Email Anbieter erfragen.

- SMTP_FROM_NAME=Vaultwarden
- SMTP_HOST=domain.euresanbieters.tld
- SMTP_FROM=vaultwarden.euredomain.tld
- SMTP_PORT=587 oder 465
- SMTP_SSL=true
- SMTP_EXPLICIT_TLS=true
- SMTP_USERNAME=euerloginname
- SMTP_PASSWORD=euerloginpasswort

Als nächstes kümmern wir uns um die Sicherheit unserer Nutzer indem wir sie dazu zwingen Ihre Email Adresse zu bestätigen.

- SIGNUPS_VERIFY=true

Als nächstes besteht noch die Möglichkeit den Passworthinweis zu unterbinden. Dies kann je nach Userpublikum durch aus sinnvoll sein.

- SHOW_PASSWORD_HINT=false

Grüße gehen aus dem Archiv!

Kommentar verfassen

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert.