Skip to content
BotServBotServ
VaultwardenBitwardenGestor de contraseñasAuto-hospedajeSeguridadOpen Source

Vaultwarden auto-hospedado: Gestor de contraseñas Bitwarden

Vaultwarden auto-hospedado: servidor Bitwarden ligero en Rust. Setup Docker, configuración, clientes y seguridad.

S

schutzgeist

5 min read
Vaultwarden auto-hospedado: Gestor de contraseñas Bitwarden

Vaultwarden self-hosted: gestor de contraseñas Bitwarden en tu propio servidor

Qué cubre este artículo

  • Qué es Vaultwarden: reimplementación del servidor Bitwarden en Rust, mucho más ligera.
  • Setup con Docker en 5 minutos y configuración del panel admin.
  • Usar los clientes Bitwarden: navegador, móvil, escritorio, todos compatibles.
  • Seguridad: HTTPS, token admin, solo por invitación, copias de seguridad.
  • Por qué Vaultwarden es el primer servicio self-hosted que tiene más sentido implementar.

Introducción

Vaultwarden es la reimplementación no oficial, pero extremadamente popular, del servidor Bitwarden en Rust. El servidor Bitwarden oficial es pesado (varios contenedores .NET, ~2 GB de RAM). Vaultwarden corre en un único contenedor con ~50 MB de RAM, perfecto para servidores caseros y VPS pequeños.

El truco: utilizas los clientes Bitwarden oficiales (extensión del navegador, iOS/Android, escritorio), solo tu servidor está alojado localmente. Las contraseñas permanecen en tu poder y las aplicaciones son maduras.

Casos de uso típicos

  • Gestor de contraseñas familiar: padres e hijos, colecciones compartidas (WiFi, servicios de streaming).
  • Contraseñas de equipo: credenciales corporativas, claves API, accesos a servidores compartidos y gestionados.
  • Acceso de emergencia: función de acceso de emergencia para situaciones críticas.
  • Secretos para automatización: claves API en Vaultwarden, scripts las recuperan vía CLI.
  • RGPD: contraseñas en tu servidor en lugar de en la nube estadounidense.

Instalación: Docker

services:
  vaultwarden:
    image: vaultwarden/server:latest
    ports:
      - "127.0.0.1:8222:80"
    environment:
      - DOMAIN=https://vault.tu-dominio.com
      - ADMIN_TOKEN=token-admin-largo-aleatorio
      - SIGNUPS_ALLOWED=false          # solo invitaciones
      - INVITATIONS_ALLOWED=true
      - WEBSOCKET_ENABLED=true
      - SMTP_HOST=smtp.tu-servidor.com
      - SMTP_PORT=587
      - SMTP_USERNAME=vault@tu-dominio.com
      - SMTP_PASSWORD=...
      - SMTP_FROM=vault@tu-dominio.com
    volumes: [vw_data:/data]
    restart: always

volumes:
  vw_data:
docker compose up -d

Importante: Vaultwarden necesita HTTPS para los clientes. Un proxy inverso (Caddy/Nginx) con TLS es obligatorio, no opcional. Consulta Proxy inverso.

Configuración inicial

  1. Panel admin: https://vault.tu-dominio.com/admin con ADMIN_TOKEN, configura los ajustes del servidor, gestión de usuarios, prueba SMTP.
  2. Tu cuenta: /accounts/register, establece una contraseña maestra fuerte. Si la pierdes, todo desaparece, no hay recuperación de contraseña con cifrado de extremo a extremo.
  3. Invitar usuarios: panel admin, Users, Invite (o SIGNUPS_ALLOWED=true temporalmente para familia).
  4. Organización: para colecciones compartidas (familia/empresa), crea una organización, invita miembros, define colecciones.

Conectar clientes

En cada aplicación Bitwarden, antes del inicio de sesión, cambia la URL del servidor:

  • Extensión del navegador: engranaje, «Self-hosted», URL del servidor https://vault.tu-dominio.com
  • Aplicación móvil: mismo ajuste en el inicio de sesión.
  • Aplicación de escritorio: mismo procedimiento.
  • CLI: bw config server https://vault.tu-dominio.com luego bw login

Después todo funciona como en Bitwarden: autocompletar, generador de contraseñas, TOTP (las características premium son gratuitas en Vaultwarden).

Extensiones

CLI para automatización

# Bitwarden CLI con Vaultwarden
bw config server https://vault.tu-dominio.com
bw login
export BW_SESSION=$(bw unlock --raw)

# Obtener secreto en script
API_KEY=$(bw get password "ollama-api-key")
curl -H "Authorization: Bearer $API_KEY" http://ollama:11434/api/...

Así los secretos para scripts de automatización no están en archivos .env, sino en el vault. Consulta Claves API.

Send: compartir archivos y texto de forma segura

Bitwarden Send también funciona con Vaultwarden, enlaces únicos para contraseñas, texto y archivos (por ejemplo, compartir acceso con clientes en lugar de por correo).

Organizaciones para equipos

Colecciones por equipo (desarrollo, administración, contabilidad), miembros con permisos (solo lectura, edición, administración), intercambio limpio de secretos en lugar de hojas de cálculo de contraseñas.

Seguridad, crítica aquí

  • HTTPS obligatorio: los clientes requieren TLS. Contraseñas sin HTTPS es catastrófico.
  • Contraseña maestra: fuerte, no utilizada en ningún otro lugar, anotada en un lugar seguro. Sin recuperación.
  • ADMIN_TOKEN: largo, aleatorio, secreto. El acceso al panel admin es poderoso.
  • SIGNUPS_ALLOWED=false: si no, cualquiera se registra en tu instancia.
  • Copias de seguridad: /data (base de datos SQLite, adjuntos, claves RSA) diariamente. Consulta Backup. Sin copia de seguridad, todo se pierda si el servidor falla.
  • 2FA: activa dos factores en cada cuenta (Vaultwarden soporta TOTP y WebAuthn).
  • No expongas a internet sin endurecimiento: Vaultwarden es seguro, pero un servidor de contraseñas en línea es un objetivo. VPN/Tailscale o al menos rate-limiting y fail2ban.

Vaultwarden vs. alternativas

HerramientaFortalezaDebilidad
VaultwardenLigero, clientes Bitwarden, gratuitoNo oficial (pero estable desde hace años)
Bitwarden ServerOficialPesado (~2 GB RAM, stack .NET)
Bitwarden CloudSin configuraciónContraseñas con proveedor estadounidense
KeePassXCOffline, simpleSin sincronización, clientes o compartir
1PasswordMaduroPropietario, nube, suscripción

Enlaces relacionados

Puntos clave:

  • Vaultwarden es el servidor Bitwarden en Rust, ligero (~50 MB de RAM), un contenedor.
  • Los clientes oficiales de Bitwarden funcionan (navegador, móvil, escritorio, CLI).
  • HTTPS es obligatorio, la contraseña maestra es irreemplazable, las copias de seguridad son críticas.
  • Las características premium (TOTP, Send, organizaciones) son gratuitas en Vaultwarden.
  • El primer servicio self-hosted que tiene más sentido, ganancia de privacidad inmediata.

FAQ

¿Es Vaultwarden suficientemente seguro para contraseñas?

Sí, estable desde hace años, código abierto, bien auditado. Requisitos: HTTPS, contraseña maestra fuerte, 2FA, SIGNUPS_ALLOWED=false, copias de seguridad regulares. El mayor riesgo es tu contraseña maestra, no el software.

¿Qué pasa si pierdo la contraseña maestra?

Todos tus datos desaparecen, ese es el punto del cifrado de extremo a extremo. Vaultwarden no tiene mecanismo de recuperación. Configura acceso de emergencia para personas de confianza y guarda tu contraseña maestra de forma segura (en papel).

¿Funcionan las aplicaciones Bitwarden?

Sí, todos los clientes oficiales (extensión del navegador, iOS, Android, Windows, Mac, Linux, CLI) funcionan con Vaultwarden. Solo apunta la URL del servidor a tu instancia.

¿Vaultwarden o Bitwarden oficial?

Vaultwarden es mucho más ligero (~50 MB vs. ~2 GB de RAM) y tiene todas las características gratuitas. El servidor oficial es más pesado pero «oficial». Para self-hosters, Vaultwarden es el estándar.

¿Para equipos/empresas?

Sí: organizaciones con colecciones y permisos. Para empresas grandes, Bitwarden oficial (con soporte y SLA) puede ser más adecuado. Para pymes, Vaultwarden es más que suficiente.

¿Qué necesito respaldar?

El volumen /data: base de datos SQLite, adjuntos, claves RSA, caché de iconos. Respalda diariamente. Sin copia de seguridad, todo se pierde si falla el servidor. Consulta el artículo de Backup.

Fuentes y referencias

Volver al blog
Share:

Entradas relacionadas