Vaultwarden: Tu Gestor de Contraseñas Self-Hosted en Docker (Guía Completa 2025)
⏱️ Tiempo de lectura: 18 minutos | Nivel: Intermedio | Actualizado: Diciembre 2025
TL;DR
Vaultwarden es la alternativa self-hosted perfecta a Bitwarden que consume solo 10MB de RAM (vs 1GB+ del oficial). En esta guía aprenderás a instalarlo con Docker, configurar SSL automático con Traefik, habilitar 2FA, automatizar backups y migrar desde LastPass/1Password. Todo el código está disponible para copy-paste y funciona en cualquier homelab.
—
Tabla de Contenidos
- Introducción
- ¿Qué es Vaultwarden?
- Requisitos y Preparación
- Instalación con Docker Compose
- Configuración SSL con Traefik
- Seguridad Avanzada
- Migración desde Otros Gestores
- Clientes y Extensiones
- Backup y Recuperación
- Comparativa vs Alternativas
- Troubleshooting
- Preguntas Frecuentes
- Conclusión
—
Introducción
¿Cuántas contraseñas gestionas actualmente? Si eres como la mayoría de usuarios, probablemente tengas más de 100 cuentas repartidas entre servicios de trabajo, redes sociales, banca online, compras y entretenimiento. El problema es claro: gestionar tantas contraseñas de forma segura es imposible sin una herramienta dedicada.
Las soluciones cloud como LastPass ($36/año), 1Password ($36/año) o incluso Bitwarden Premium ($10/año) funcionan, pero tienen un problema fundamental: tus contraseñas están almacenadas en servidores de terceros. Y aunque prometen cifrado de extremo a extremo, la realidad es que confías en empresas externas para proteger tus credenciales más sensibles.
Vaultwarden resuelve este problema permitiéndote alojar tu propio gestor de contraseñas compatible con Bitwarden, con control total sobre tus datos y sin costes recurrentes.
En esta guía aprenderás:
- Cómo instalar Vaultwarden con Docker en 5 minutos
- Configurar SSL automático con Traefik o Nginx Proxy Manager
- Habilitar 2FA y seguridad avanzada
- Automatizar backups con scripts y n8n
- Migrar todas tus contraseñas desde otros servicios
—
¿Qué es Vaultwarden?
Vaultwarden (anteriormente bitwarden_rs) es una implementación alternativa del servidor de Bitwarden escrita en Rust. Es 100% compatible con todos los clientes oficiales de Bitwarden, pero consume una fracción de los recursos.
Diferencias Clave con Bitwarden Oficial
| Característica | Vaultwarden | Bitwarden Oficial |
|---|---|---|
| Lenguaje | Rust | C# (.NET) |
| Base de datos | SQLite | SQL Server |
| RAM mínima | ~10MB | ~1GB+ |
| Imagen Docker | ~100MB | ~1.5GB+ |
| Funciones Premium | ✅ Gratis | $10/año |
| 2FA (TOTP) | ✅ Incluido | Premium |
| Compartir | ✅ Incluido | Premium |
| Vault attach | ✅ Incluido | Premium |
¿Por Qué Elegir Vaultwarden?
- Eficiencia brutal: Funciona perfectamente en una Raspberry Pi con 10MB de RAM
- Control total: Tus contraseñas nunca salen de tu servidor
- Funciones premium gratis: 2FA, compartir, adjuntos, todo incluido
- Compatibilidad total: Usa las apps oficiales de Bitwarden sin cambios
- Mantenimiento activo: Comunidad muy activa con actualizaciones frecuentes
Arquitectura de Vaultwarden
—

Requisitos y Preparación
Hardware Mínimo
Vaultwarden es extremadamente ligero. Estos son los requisitos reales:
| Componente | Mínimo | Recomendado |
|---|---|---|
| CPU | 1 core | 2 cores |
| RAM | 256MB | 512MB |
| Almacenamiento | 1GB | 5GB |
| Red | Cualquiera | Gigabit |
Funciona perfectamente en:
- Raspberry Pi 3/4/5
- VPS económico ($5/mes)
- NAS con Docker (Synology, QNAP, TrueNAS)
- Cualquier servidor con Docker
Software Necesario
- Docker y Docker Compose instalados
- Dominio apuntando a tu servidor (opcional pero recomendado para HTTPS)
- Reverse proxy para SSL (Traefik, Nginx Proxy Manager o Caddy)
Verificar Instalación de Docker
Si no tienes Docker instalado, consulta nuestra guía de Docker desde cero.
—
Instalación con Docker Compose
Paso 1: Crear Directorio de Trabajo
Paso 2: Crear docker-compose.yml
Paso 3: Generar Token de Administración
Paso 4: Configurar Variables de Entorno
Paso 5: Iniciar Vaultwarden
Paso 6: Verificar Funcionamiento
Acceder a Vaultwarden
Abre http://tu-ip:8080 en tu navegador. Verás la interfaz de Bitwarden lista para registrar tu primera cuenta.
⚠️ Importante: Sin HTTPS, los clientes oficiales de Bitwarden no funcionarán correctamente. Continúa con la siguiente sección para configurar SSL.
—
Configuración SSL con Traefik
Opción A: Docker Compose con Traefik
Si ya tienes Traefik funcionando en tu homelab, esta es la configuración óptima:
Opción B: Nginx Proxy Manager
Si usas Nginx Proxy Manager, la configuración es más visual:
- Añade un nuevo Proxy Host
- Domain:
vault.tudominio.com - Scheme:
http - Forward Hostname:
vaultwarden(nombre del container) - Forward Port:
80 - Habilita SSL con Let’s Encrypt
- En Custom locations, añade:
– Location: /notifications/hub
– Scheme: http
– Forward: vaultwarden:3012
– Habilita WebSocket Support
Consulta nuestra guía de Nginx Proxy Manager para más detalles.
—
Seguridad Avanzada
Habilitar Autenticación de Dos Factores (2FA)
- Inicia sesión en Vaultwarden
- Ve a Settings > Two-step Login
- Elige tu método preferido:
– Authenticator App (TOTP): Compatible con Google Authenticator, Authy, etc.
– YubiKey OTP: Para llaves de seguridad físicas
– Email: Código por email (requiere SMTP configurado)
Desactivar Registros Públicos
Una vez creada tu cuenta, desactiva los registros para evitar accesos no autorizados:
Configurar SMTP para Emails
Integración con Authelia (SSO)
Si usas Authelia para Single Sign-On en tu homelab, puedes añadir una capa extra de protección:
Consulta nuestra guía de Authelia + LLDAP para configurar SSO completo.
Fail2ban para Vaultwarden
Protege contra ataques de fuerza bruta:
—

Migración desde Otros Gestores
Desde LastPass
- En LastPass: Account Settings > Advanced > Export
- Descarga el archivo CSV
- En Vaultwarden: Settings > Import Data
- Selecciona LastPass (csv)
- Sube el archivo
Desde 1Password
- En 1Password: File > Export > All Items
- Selecciona formato CSV
- En Vaultwarden: Settings > Import Data
- Selecciona 1Password (csv)
Desde Bitwarden Cloud
Si ya usas Bitwarden y quieres migrar a tu servidor:
- En Bitwarden: Tools > Export Vault
- Selecciona JSON (Encrypted) e introduce tu contraseña
- En Vaultwarden: Settings > Import Data
- Selecciona Bitwarden (json)
Tip: El export encriptado es más seguro que CSV ya que las contraseñas no quedan en texto plano.
—
Clientes y Extensiones
Una de las grandes ventajas de Vaultwarden es que puedes usar los clientes oficiales de Bitwarden sin modificaciones.
Extensiones de Navegador
| Navegador | Enlace |
|---|---|
| Chrome | Chrome Web Store |
| Firefox | Firefox Add-ons |
| Edge | Microsoft Store |
| Safari | App Store |
Aplicaciones Móviles
| Plataforma | Enlace |
|---|---|
| Android | Google Play |
| iOS | App Store |
Configurar el Servidor
En cualquier cliente de Bitwarden:
- Abre la app/extensión
- Pulsa en el engranaje ⚙️ (Configuración)
- En Server URL, introduce:
https://vault.tudominio.com - Guarda y haz login normalmente
CLI de Bitwarden
Para automatizaciones y scripts:
—
Backup y Recuperación
Estructura de Datos
Todo lo que necesitas respaldar está en el volumen /data:
Script de Backup Automatizado
Automatizar con Cron
Restaurar Backup
—

Comparativa vs Alternativas
Tabla Comparativa Completa
| Característica | Vaultwarden | Bitwarden Cloud | 1Password | LastPass |
|---|---|---|---|---|
| Precio anual | $0 (gratis) | $10 (Premium) | $36 | $36 |
| Self-hosted | ✅ Sí | ❌ No | ❌ No | ❌ No |
| Código abierto | ✅ GPL-3.0 | Parcial | ❌ No | ❌ No |
| 2FA incluido | ✅ Gratis | Premium | ✅ Sí | Premium |
| Compartir | ✅ Gratis | Premium | ✅ Sí | Premium |
| Adjuntos | ✅ Gratis | Premium | ✅ Sí | Premium |
| Control datos | Total | Ninguno | Ninguno | Ninguno |
| Brechas conocidas | 0 | 0 | 0 | Varias |
| RAM necesaria | 10MB | N/A | N/A | N/A |
| Offline | ✅ Sí | ✅ Sí | ✅ Sí | ✅ Sí |
¿Cuándo Elegir Cada Opción?
Elige Vaultwarden si:
- Tienes un servidor o homelab
- Valoras la privacidad total
- No quieres pagar suscripciones
- Quieres funciones premium gratis
Elige Bitwarden Cloud si:
- No quieres gestionar infraestructura
- Necesitas soporte oficial
- Prefieres simplicidad sobre control
Elige 1Password si:
- Necesitas compartir con familia/equipo
- Valoras la UX pulida
- El precio no es problema
—
Troubleshooting
Error: WebSocket connection failed
Síntoma: Las extensiones no sincronizan automáticamente.
Causa: WebSocket no configurado en el reverse proxy.
Solución para Nginx:
Error: Unauthorized al sincronizar
Síntoma: Los clientes no pueden conectar.
Solución:
- Verifica que
DOMAINcoincida exactamente con tu URL - Comprueba que el certificado SSL sea válido
- Cierra sesión y vuelve a iniciar
Container reinicia constantemente
Síntoma: Vaultwarden no arranca.
Causa: Permisos incorrectos en el volumen.
Solución:
SMTP no envía emails
Síntoma: No llegan invitaciones ni verificaciones.
Solución:
- Usa App Password en lugar de contraseña normal (Gmail)
- Verifica puertos: 587 (TLS) o 465 (SSL)
- Habilita logs con
LOG_LEVEL=debug
Error: «This browser requires HTTPS»
Síntoma: Los clientes no funcionan sin HTTPS.
Solución: Configura un reverse proxy con SSL (ver sección Configuración SSL).
—

📦 Descargar Ejemplos
Todos los archivos de configuración están disponibles en nuestro repositorio:
🔗 github.com/ziruelen/learningaiagents/tree/main/homelab/vaultwarden
Incluye:
docker-compose.yml– Configuración básicadocker-compose-traefik.yml– Con Traefikbackup.sh– Script de backup automatizadoREADME.md– Documentación adicional
—
Preguntas Frecuentes
¿Es legal usar Vaultwarden?
Sí, Vaultwarden es completamente legal. Es software open source bajo licencia GPL-3.0 que implementa la API de Bitwarden de forma independiente.
¿Puedo usar los clientes oficiales de Bitwarden?
Sí, Vaultwarden es 100% compatible con todas las aplicaciones y extensiones oficiales de Bitwarden. Solo necesitas configurar la URL de tu servidor.
¿Cómo actualizo Vaultwarden?
Vaultwarden mantiene compatibilidad hacia atrás, así que las actualizaciones son seguras.
¿Qué pasa si pierdo acceso al servidor?
Tus contraseñas están cacheadas localmente en cada cliente. Mientras tengas acceso a tu contraseña maestra y un backup del volumen /data, puedes restaurar todo.
¿Cuántos usuarios soporta?
No hay límite técnico. Para uso personal o familiar (1-10 usuarios), un servidor básico es más que suficiente. Para cientos de usuarios, considera PostgreSQL-guia-completa-tutorial-2025/)-mongodb-guia-completa-tutorial-2025/) en lugar de SQLite.
¿Es seguro exponer Vaultwarden a Internet?
Sí, siempre que uses HTTPS y sigas las prácticas de seguridad:
- Desactiva registros públicos
- Habilita 2FA
- Usa contraseña maestra fuerte
- Mantén actualizado
¿Vaultwarden tiene panel de administración?
Sí, accede a /admin con tu ADMIN_TOKEN. Desde ahí puedes:
- Ver usuarios registrados
- Invitar nuevos usuarios
- Configurar SMTP
- Ver diagnósticos
¿Cómo comparto contraseñas con mi familia?
- Crea una Organización en Vaultwarden
- Invita a los miembros por email
- Crea Colecciones para agrupar credenciales
- Asigna permisos (solo lectura, edición, etc.)
¿Funciona en Raspberry Pi?
Sí, Vaultwarden funciona perfectamente en Raspberry Pi 3, 4 y 5. Consume solo ~10MB de RAM, por lo que deja recursos de sobra para otros servicios.
¿Puedo usar Vaultwarden sin dominio propio?
Técnicamente sí, pero los clientes de Bitwarden requieren HTTPS. Opciones:
- Usar Tailscale con MagicDNS
- Certificado auto-firmado (no recomendado)
- Dominio gratuito de DuckDNS
¿Hay aplicación de escritorio?
Sí, Bitwarden tiene apps para Windows, macOS y Linux. Todas funcionan con Vaultwarden configurando la URL del servidor.
¿Cómo hago backup de forma segura?
El script incluido en esta guía detiene el contenedor para garantizar consistencia. Para máxima seguridad:
- Backup diario automatizado
- Almacenar en ubicación externa (NAS, cloud cifrado)
- Probar restauración periódicamente
—
Conclusión
Vaultwarden es la solución perfecta para quienes quieren control total sobre sus contraseñas sin renunciar a la comodidad de los clientes de Bitwarden. Con solo 10MB de RAM, funciones premium gratuitas y compatibilidad total, no hay razón para seguir pagando suscripciones a gestores de contraseñas cloud.
Resumen de lo aprendido:
- ✅ Instalación con Docker en 5 minutos
- ✅ SSL automático con Traefik
- ✅ Seguridad avanzada con 2FA y fail2ban
- ✅ Migración desde otros gestores
- ✅ Backup automatizado
Próximos Pasos
- Configura Traefik si aún no lo tienes
- Añade Authelia para SSO completo
- Automatiza backups con n8n para mayor tranquilidad
¿Tienes dudas? Únete a nuestra comunidad en Discord donde ayudamos con configuraciones de homelab y seguridad.
—
📚 Artículos Relacionados:
- Authelia + LLDAP: SSO para tu Homelab
- Traefik Reverse Proxy: Guía Completa
- Nginx Proxy Manager: SSL Automático
- Docker Compose desde Cero
- Tailscale: VPN sin Abrir Puertos
