Haz copias de seguridad de Bitwarden/Vaultwarden

2025-01-06

Hace tiempo que utilizo Vaultwarden como gestor de contraseñas alojado en mi propio servidor para todos mis dispositivos y los de la familia. Sobra decir la importancia que tiene el realizar copias de seguridad de mis bóvedas encriptadas. Afortunadamente existen aplicaciones que nos van a facilitar este trabajo, en concreto vamos a utilizar Bitwarden Secure Sync

Bitwarden Secure Sync va a exportar nuestra bóveda Bitwarden/Vaultwarden a un archivo local de forma periódica. Utiliza la herramienta Bitwarden CLI para comunicarse con la API, y exporta las contraseñas usando el método de exportación predeterminado de Bitwarden.

Obtención de las claves API

Para que la aplicación pueda comunicarse con la API, necesitamos de nuestra clave API, que podemos encontrar en la pestaña Keys dentro de la página de configuración de la cuenta de Bitwarden/Vaultgarden.

Vamos a necesitar los valores de:

  • Bitwarden:ClientId: Esta propiedad debe contener el ID del cliente para la cuenta de Bitwarden que se va a exportar.
  • Bitwarden:ClientSecret: Esta propiedad debe contener el secreto del cliente para la cuenta de Bitwarden que se va a exportar.Copiamos las claves de los campos

Instalación

Docker

Si vas a desplegar el servicio a través de docker puedes copiar el siguiente ejemplo adaptándolo a tus preferencias,

🗨️ Por defecto, el servicio se configura para ejecutarse como root (UID/GID 0). Por motivos de seguridad, se recomienda especificar las variables de entorno PGID y PUID al ejecutar el contenedor.

docker run --env PGID=100 --env PUID=99 -v /mnt/user/appdata/bitwarden-secure-sync/config:/app/config -v /mnt/user/appdata/bitwarden-secure-sync/data:/app/data aronmarinelli/bitwarden-secure-sync

Unraid

La instalación en Unraid es muy sencilla debido a que esta disponible como aplicación en las Community Applications.

Rellenamos la plantilla según nuestras preferencias

Fichero de configuración

Vamos a necesitar editar/crear el fichero de configuración appsettings.json que encontraras dentro de /app/config

Te dejo un ejemplo de mi fichero y su explicacion más adelante

{
  "Bitwarden": {
    "ClientId": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx",
    "ClientSecret": "xxxxxxxxxxxxxxxxxxxxxxxx",
    "ServerUrl": "https://server-vaultwarden",
    "VaultPassword": "clave maestra"
  },
  "Sync": {
    "CronSchedule": "1 0 * * *",
    "RunOnStartup": true,
    "IncludeOrganisationItems": true,
    "EncryptUsingCustomKey": true,
    "EncryptionKey": "clave cifrado",
    "FileRetention": 7,
    "DataDirectory": "data"
  }
}

Donde:

  • ClientId: Clave API obtenida anteriormente
  • ClientSecret: Clave API obtenida anteriormente
  • ServerUrl: Direccion del servidor Bitwarden/Vaultgarden
  • VaultPassword: Clave maestra del usuario
  • CronSchedule: Cron para la ejecución de la copia, en el ejemplo todos los a la 1
  • RunOnStartup: Hace una copia cuando arranca
  • IncludeOrganisationItems: Exportar datos de la organización vinculados a la cuenta
  • EncryptUsingCustomKey: Cifra la copia
  • EncryptionKey: Clave cifrado
  • FileRetention: Politica de retencion de las copias
  • DataDirectory: Especifica el directorio donde se crean las copias de seguridad. Por defecto en “data”.

⚠️ El desarrollador recomienda que para las instalaciones con Docker, no cambiar los valores predeterminados simplemente se debe montar el directorio /app/data en la ubicación deseada.

Si has realizado la instalación correctamente ahora podrás tener un copia programada de tus bóvedas de Bitwarden/Vaultwarden en la ubicación configurada para ello

Espero que te haya gustado, pasa un gran día 🐧


Ingrese la dirección de su instancia