vaultwarden-selfhostINFO

Self-host Vaultwarden : tutoriel complet 2026 (Docker, Raspberry Pi, TLS)

Tutoriel self-host Vaultwarden 2026 : Docker Compose sur Raspberry Pi 4, proxy nginx, Let's Encrypt TLS, sauvegardes automatiques, compatibilité 100 % clients Bitwarden officiels. Privacy maximale.

Par Eric Gerard · Éditeur · PwdFortress4 min de lecturePhoto : Markus Spiske — Unsplash

📌 Self-host n'est PAS pour tout le monde : avant de te lancer, sois honnête — es-tu prêt à gérer reverse proxy, certificats TLS, backups chiffrés et MAJ Docker chaque mois ? Si la réponse est « pas vraiment », un coffre managé comme NordPass à 1,49 €/mois te coûtera moins cher qu'une panne Raspberry Pi pendant tes vacances. Si oui, ce tuto est pour toi.

Vaultwarden est la réécriture Rust open source du serveur Bitwarden, conçue pour tourner sur du matériel modeste (Raspberry Pi 4 suffit). Ce tutoriel détaille un déploiement production-grade avec Docker Compose, proxy Caddy automatique HTTPS, et sauvegardes Backblaze B2 chiffrées.

Vaultwarden fait tourner ton coffre Bitwarden sur ton propre matériel. Compatible 100 % avec les clients officiels. Setup en 30 minutes si tu maîtrises Docker.

01 — Pré-requis

  • Un serveur Linux (Raspberry Pi 4, VPS, ou homelab) avec Docker installé
  • Un nom de domaine pointant vers l'IP publique du serveur (ex : vault.tondomaine.com)
  • Port 443 ouvert dans le pare-feu / NAT
  • 30 minutes
  • ~50 MB de stockage pour Vaultwarden + tes données futures

02 — Architecture cible

Internet → Cloudflare (optionnel) → Caddy reverse proxy avec Let's Encrypt automatique → Container Vaultwarden. Les données sont stockées sur le host dans /srv/vaultwarden/data.

Caddy gère automatiquement HTTPS via Let's Encrypt. Vaultwarden tourne dans un container Docker isolé.

03 — Docker Compose

Crée le fichier /srv/vaultwarden/docker-compose.yml. La configuration utilise l'image officielle vaultwarden/server:latest, expose la variable DOMAIN pointant vers ton URL HTTPS, désactive les inscriptions externes avec SIGNUPS_ALLOWED: false, active les WebSockets pour la sync en temps réel, et monte un volume ./data pour la persistance.

La configuration Caddy est minimaliste : une seule directive reverse_proxy vaultwarden:80 plus des headers de sécurité standard (HSTS, X-Frame-Options, X-Content-Type-Options, Referrer-Policy).

L'ADMIN_TOKEN se génère avec openssl rand -base64 48 (à reporter dans ta config locale uniquement, jamais commité).

04 — Démarrer Vaultwarden

Lance le service avec docker compose up -d depuis le dossier /srv/vaultwarden, puis vérifie les logs avec docker compose logs -f vaultwarden. Caddy obtient un certificat Let's Encrypt automatiquement sous 30 secondes (visible dans docker compose logs caddy).

05 — Première connexion + sécurisation

  1. Ouvre https://vault.tondomaine.com dans ton navigateur
  2. Crée ton compte (le seul autorisé : signups fermés ensuite)
  3. IMMÉDIATEMENT : Settings → Security → Two-step Login → activer TOTP
  4. IMMÉDIATEMENT : vérifier que SIGNUPS_ALLOWED est bien à false
  5. Test de l'autofill avec ton navigateur en pointant vers ton URL personnalisée

06 — Sauvegardes automatiques

Un script bash horaire snapshot la base SQLite (cohérent sans arrêt service), zip le dossier complet, chiffre avec GPG côté client (recipient = ton e-mail), et upload sur Backblaze B2 (~1 €/mois pour 100 GB).

La séquence :

  1. docker exec vaultwarden sqlite3 /data/db.sqlite3 ".backup '/tmp/db_DATE.sqlite3'" pour snapshot cohérent
  2. tar czf pour archiver
  3. gpg --encrypt --recipient ton@email.com pour chiffrement client-side
  4. b2 upload-file pour upload distant
  5. Cleanup local

Crontab : 0 * * * * /usr/local/bin/vaultwarden-backup.sh

Test mensuel : restaurer un backup sur une instance dev pour vérifier l'intégrité.

07 — Connecter les clients Bitwarden officiels

Dans chaque client Bitwarden (mobile, desktop, navigateur), avant de te connecter :

  1. Cliquer sur l'engrenage Settings (avant login)
  2. Server URL : https://vault.tondomaine.com
  3. Sauvegarder
  4. Connecter avec ton master password

Tous les clients fonctionneront exactement comme avec le cloud Bitwarden officiel.

08 — Maintenance

  • Mises à jour Vaultwarden : docker compose pull && docker compose up -d (mensuel recommandé)
  • Monitoring : Uptime Kuma (auto-hébergé) ou Healthchecks.io (gratuit) pour alertes downtime
  • Logs : docker compose logs --tail 200 vaultwarden
  • Audit : suivre github.com/dani-garcia/vaultwarden pour CVE éventuels

Alternative cloud si self-host devient trop coûteux

Self-host = liberté maximale mais coût récurrent (VPS, temps maintenance, backups). Si après quelques mois tu veux revenir à du cloud managé sans perdre les bonnes pratiques sécurité, NordPass Premium (1,49 €/mois plan 2 ans) offre une cryptographie moderne (XChaCha20 + Argon2id), audit Cure53 + SOC 2 Type 2 publiés, écosystème Nord Security intégré — zero maintenance.

★ Audit Cure53 2024 · ✓ Plan gratuit · Cross-platform

Voir NordPass Premium →1,49 €/mois · Zero maintenance · Audit Cure53 + SOC 2

09 — Pour aller plus loin


Tutoriel basé sur Vaultwarden 1.31.x sur Raspberry Pi 4 (Debian 12) en juin 2026. Procédures testées sur 2 instances de prod en parallèle pendant 8 mois.

★ Audit Cure53 2024 · ✓ Plan gratuit · Cross-platform

Voir l'offre NordPass30 jours satisfait ou remboursé · Plan gratuit disponible