vaultwarden-selfhostINFO

Self-host Vaultwarden: tutorial completo 2026 (Docker, Raspberry Pi, TLS)

Tutorial self-host Vaultwarden 2026: Docker Compose en Raspberry Pi 4, proxy nginx, Let's Encrypt TLS, copias automáticas, compatibilidad 100 % clientes Bitwarden oficiales. Privacidad máxima.

Por Eric Gerard · Éditeur · PwdFortress3 min de lecturaFoto: Markus Spiske — Unsplash

📌 Self-host NO es para todos: antes de empezar, sé honesto — ¿estás listo para gestionar reverse proxy, certificados TLS, backups cifrados y actualizaciones Docker cada mes? Si la respuesta es « no realmente », una bóveda gestionada como NordPass a 1,49 €/mes te costará menos que una caída de Raspberry Pi durante tus vacaciones. Si sí, este tutorial es para ti.

Vaultwarden es la reescritura Rust open source del servidor Bitwarden, diseñada para correr en hardware modesto (Raspberry Pi 4 basta). Este tutorial detalla un despliegue production-grade con Docker Compose, proxy Caddy automático HTTPS, y copias Backblaze B2 cifradas.

Vaultwarden hace correr tu bóveda Bitwarden en tu propio hardware. Compatible 100 % con clientes oficiales. Setup en 30 minutos si dominas Docker.

01 — Prerrequisitos

  • Un servidor Linux (Raspberry Pi 4, VPS, o homelab) con Docker instalado
  • Un nombre de dominio apuntando a la IP pública del servidor (ej.: vault.tudominio.com)
  • Puerto 443 abierto en firewall / NAT
  • 30 minutos
  • ~50 MB almacenamiento para Vaultwarden + tus datos futuros

02 — Arquitectura objetivo

Internet → Cloudflare (opcional) → Caddy reverse proxy con Let's Encrypt automático → Container Vaultwarden. Datos almacenados en el host en /srv/vaultwarden/data.

Caddy gestiona HTTPS automáticamente vía Let's Encrypt. Vaultwarden corre en un container Docker aislado.

03 — Docker Compose

Crea el archivo /srv/vaultwarden/docker-compose.yml. La configuración usa la imagen oficial vaultwarden/server:latest, expone la variable DOMAIN apuntando a tu URL HTTPS, desactiva inscripciones externas con SIGNUPS_ALLOWED: false, activa WebSockets para sync en tiempo real, y monta un volumen ./data para persistencia.

La configuración Caddy es minimalista: una sola directiva reverse_proxy vaultwarden:80 más cabeceras de seguridad estándar (HSTS, X-Frame-Options, X-Content-Type-Options, Referrer-Policy).

El ADMIN_TOKEN se genera con openssl rand -base64 48 (a reportar en tu config local solamente, nunca comiteado).

04 — Arrancar Vaultwarden

Lanza el servicio con docker compose up -d desde el directorio /srv/vaultwarden, luego verifica los logs con docker compose logs -f vaultwarden. Caddy obtiene un certificado Let's Encrypt automáticamente en 30 segundos (visible en docker compose logs caddy).

05 — Primera conexión + securización

  1. Abre https://vault.tudominio.com en tu navegador
  2. Crea tu cuenta (la única permitida: signups cerrados después)
  3. INMEDIATAMENTE: Settings → Security → Two-step Login → activar TOTP
  4. INMEDIATAMENTE: verificar que SIGNUPS_ALLOWED esté en false
  5. Prueba el autofill con tu navegador apuntando a tu URL personalizada

06 — Copias automáticas

Un script bash horario snapshot la base SQLite (coherente sin parar servicio), zip el directorio completo, cifra con GPG cliente (recipient = tu email), y sube a Backblaze B2 (~1 €/mes para 100 GB).

La secuencia:

  1. docker exec vaultwarden sqlite3 /data/db.sqlite3 ".backup '/tmp/db_DATE.sqlite3'" para snapshot coherente
  2. tar czf para archivar
  3. gpg --encrypt --recipient tu@email.com para cifrado cliente
  4. b2 upload-file para subida remota
  5. Limpieza local

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

Prueba mensual: restaurar un backup en instancia dev para verificar integridad.

07 — Conectar clientes Bitwarden oficiales

En cada cliente Bitwarden (móvil, desktop, navegador), antes de conectarte:

  1. Click en el engranaje Settings (antes de login)
  2. Server URL: https://vault.tudominio.com
  3. Guardar
  4. Conectar con tu master password

Todos los clientes funcionan exactamente como con el cloud Bitwarden oficial.

08 — Mantenimiento

  • Actualizaciones Vaultwarden: docker compose pull && docker compose up -d (mensual recomendado)
  • Monitorización: Uptime Kuma (auto-hospedado) o Healthchecks.io (gratis) para alertas downtime
  • Logs: docker compose logs --tail 200 vaultwarden
  • Auditoría: seguir github.com/dani-garcia/vaultwarden por CVEs potenciales

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

Ver NordPass Premium →1,49 €/mes · Sin mantenimiento · Auditado Cure53 + SOC 2

09 — Para profundizar


Tutorial basado en Vaultwarden 1.31.x en Raspberry Pi 4 (Debian 12) en junio 2026. Procedimientos probados en 2 instancias de producción en paralelo durante 8 meses.

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

Probar NordPass30 jours satisfait ou remboursé · Plan gratuit disponible