Forum

Notifications
Clear all

Self Hosted Password Manager

Lantern
(@lantern)
Illustrious Member Admin

Voor jaren gebruik ik 1Password als password manager, dit was een betaal app maar 1Password is een tijd geleden overgestapt naar een betaaldienst en dat vond ik als gebruiker wel jammer zeker als je er al voor betaald had. Enfin nu begint 1Password wel een issue te worden, elke keer meldingen van dat je moet overstappen en dat ze de oudere versie niet meer gaan ondersteunen.

Toen dacht ik kan ik dat niet zelf hosten een password manager en na wat onderzoek ben ik uit gekomen op Vaultwarden (server) i.c.m. de Bitwarden apps.

afbeelding
afbeelding

Verschil Vaulwarden vs Bitwarden:

Bitwarden is de officiële, volledig ontwikkelde wachtwoordmanager met alle functies, officiële apps, beveiligingsaudits en professionele ondersteuning.

Vaultwarden is een community‑gedreven, zelf‑hostbare (= op je eigen server draaiende) implementatie van de Bitwarden API — lichter en zonder officiële ondersteuning, maar compatibel met Bitwarden‑clients.

💡 Kort gezegd:

  • Bitwarden: officiële, uitgebreid ondersteunde dienst.

  • Vaultwarden: open‑source, zelf te hosten alternatief dat werkt met Bitwarden apps maar minder officieel/lichter is.

 

Plan van Aanpak op Basis van Docker omgeving 🐳:

1. Maak een stackfile aan in Portainer

version: "2"

services:
  vaultwarden:
    image: vaultwarden/server:latest
    container_name: vaultwarden
    restart: unless-stopped
    environment:
      - WEBSOCKET_ENABLED=true
      - SIGNUPS_ALLOWED=false  # Zet op true als je het eerste account aanmaakt
      - SMTP_HOST=[JOUW MAILPROVIDER]
      - SMTP_FROM=[JOUW EMAILADRES]
      - SMTP_PORT=587
      - SMTP_SSL=false
      - SMTP_USERNAME=xxxx@xxxx.yyy
      - SMTP_PASSWORD=[JOUW PASSWORD]
      - SMTP_AUTH_MECHANISM=Login
      - DOMAIN=https://[JOUW DOMAIN]
      - SMTP_TIMEOUT=15
    volumes:
      - ./vw-data:/data
    networks:
      - [JOUW NETWORK]
    expose:
      - "80"

networks:
[JOUW NETWORK]:
    external: true

2. Maak een DNS of Url voor je zelf aan bij je provider of lokale DNS server. bijv. password.mijndomein.nl

2. Nu draait je Vaulwarden container en om deze ook beschikbaar te maken maak ik gebruik van NGINX Proxy Manager , dit verzorgt ook je SSL certificaat via Let's Encrypt voor de URL https://password.mijndomein.nl

3. Ga in je browers naar https://password.mijndomein.nl

4. Nu kom je op het loginscherm ter recht van je Bitwarden portal

afbeelding

Gefeliciteerd met je eigen hosted Password manager ! 🎉🎉

5. Voor het automatisch maken van een Backup naar een NAS heb ik het volgende gedaan (UBUNTU)

  • 1️⃣ Maak een mountpoint op je host

    sudo mkdir -p /mnt/vw-backups
    sudo mount -t cifs //[NAS IP]/VaultwardenBacku https://cloudcity.tradealliance.nl/apps/files/files/89409?dir=/Notes/ICT/Raspberry%20Pi5&editing=false&openfile=true#h-1-maak-een-mountpoint-op-je-hostps /mnt/vw-backups -o username=nasuser,password=naspass,uid=1000,gid=1000

    - Vervang nasuser en naspass door je NAS-gebruikersgegevens.
    - user en ww zie vaultwarden in bitwarden
    - uid=1000,gid=1000 zorgt dat jouw Linux-gebruiker schrijfrechten heeft.---

    2️⃣ Backup script

    Maak een bestand /root/scripts/vaultwarden-backup.sh:

    #!/bin/bash

    set -e

    # ==============================
    # Configuratie
    # ==============================

    CONTAINER="vaultwarden"
    DATA_DIR="/data/compose/52/vw-data" # Pas aan indien nodig
    BACKUP_DIR="/mnt/vw-backups"
    HOSTNAME=$(hostname)

    TIMESTAMP=$(date +%F-%H%M)

    DB_BACKUP="$BACKUP_DIR/db_$TIMESTAMP.sqlite3"
    FULL_BACKUP="$BACKUP_DIR/vw_data_$TIMESTAMP.tar.gz"

    # ==============================
    # Backup proces
    # ==============================

    {
    echo "======================================"
    echo "Vaultwarden backup gestart op $HOSTNAME"
    echo "Tijdstip: $TIMESTAMP"
    echo "======================================"

    echo "⏳ Container stoppen..."
    docker stop "$CONTAINER"

    echo "📦 SQLite backup maken..."
    sqlite3 "$DATA_DIR/db.sqlite3" ".backup '$DB_BACKUP'"

    echo "🗜️ Volledige data map archiveren..."
    tar -czf "$FULL_BACKUP" -C "$DATA_DIR" .

    echo "▶️ Container starten..."
    docker start "$CONTAINER"

    echo "🧹 Oude backups verwijderen (>30 dagen)..."
    find "$BACKUP_DIR" -type f -mtime +30 -delete

    SIZE=$(du -sh "$FULL_BACKUP" | cut -f1)

    echo "--------------------------------------"
    echo "✅ Backup succesvol voltooid"
    echo "Database backup: $DB_BACKUP"
    echo "Volledige backup: $FULL_BACKUP"
    echo "Backup grootte: $SIZE"
    echo "======================================"

    } || {

    echo "❌ FOUT: Backup mislukt op $HOSTNAME" >&2
    echo "Container wordt opnieuw gestart..." >&2

    docker start "$CONTAINER" 2>/dev/null || true

    exit 1
    }

    - Maak het script uitvoerbaar:

    chmod +x /home/user/vaultwarden-backup.sh

    3️⃣ Automatisch uitvoeren met cron

    Open de crontab:

    crontab -e
    Voeg toe:
    0 3 * * * /home/user/vaultwarden-backup.sh

    Dit maakt elke dag om 03:00 een backup naar de NAS.

    4️⃣ Extra tips

    1. Als je wilt dat de NAS automatisch gemount wordt bij herstart, voeg dit toe aan /etc/fstab:

    //[NAS IP]/VaultwardenBackups /mnt/vw-backups cifs username=nasuser,password=naspass,uid=1000,gid=1000 0 0

    1. Test een keer handmatig:

    /home/user/vaultwarden-backup.sh
    ls -l /mnt/vw-backups

    - Je zou nu bestanden moeten zien 🔍zoals:

    db_2026-02-13-0300.sqlite3
    vw_data_2026-02-13-0300.tar.gz

 

De automatisch Backup werkt goed ! via de cron job

afbeelding

MIGRATIE 1PASSWORD > BITWARDEN

De migratie vanuit 1Password is goed te doen je kan naar allerlei extensies exporteren. De Import is door Bitwarden ook goed geregeld

afbeelding

Ik had zelf wel wat problemen met de import omdat de login URL's uit je export meer dan x characters kan bevatten dan Bitwarden toe laat bij een import. Ik heb het export.csv wel even moet editten om de import goed te krijgen.

UITZONDERING:

Voorlopig het ik de 2FA codes voor de verschillende websites nog wel in een separate app draaien zoals Google Authenticator.

Conclusie: Tot nu toe gaat het goed en heb de apps geïnstalleerd op telefoon, browser o.a. Ik kijk nog even aan en dan zal ik het verder uitrollen in STAHQ.


Quote
Topic starter Posted : 20/02/2026 2:32 pm
Lantern
(@lantern)
Illustrious Member Admin

Owja en het bespaard mijn maandelijkse kosten en mijn data staat niet in de Cloud ☁️ bij een provider 

Dubbel Win 💪


This post was modified 2 hours ago by Lantern
ReplyQuote
Topic starter Posted : 20/02/2026 2:41 pm
Roebar
(@roebar)
Famed Member

interessant. ik heb Vaultwarden al een tijdje op YunoHost draaien maar de boel nog niet helemaal aan het draaien gekregen.

misschien met bovenstaande info meer succes.


ReplyQuote
Posted : 20/02/2026 3:05 pm