Guía de despliegue

Alojar Backrest: copias cifradas sin línea de comandos

Desplegar en un VPS Cloud →

Tutorial

Alojar Backrest: copias cifradas sin línea de comandos

Seguridad y monitorización7 min de lectura

Todo el mundo sabe que hay que hacer copias de seguridad de su servidor. Casi nadie las hace de verdad, porque restic, la mejor herramienta de código abierto del sector, es una utilidad de línea de comandos que hay que envolver uno mismo en scripts y tareas cron. Backrest elimina esa fricción: el mismo motor, la misma seguridad, pero gobernado desde el navegador. Y, sobre todo, una copia de seguridad que le avisa cuando falla.

Contenido· El problema: la copia de seguridad que siempre se deja para después1/9
  1. 01El problema: la copia de seguridad que siempre se deja para después
  2. 02Lo que Backrest aporta por encima de restic
  3. 03Requisitos previos a la instalación
  4. 04Arquitectura: un contenedor, y sus datos siguen siendo suyos
  5. 05Elegir el backend de almacenamiento
  6. 06Desplegar Backrest y proteger un VPS en 6 pasos
  7. 07Restaurar un archivo o directorio
  8. 08Resolución de problemas habituales
  9. 09Consejo: la regla 3-2-1 empieza por salir del servidor

El problema: la copia de seguridad que siempre se deja para después

Respaldar un VPS es la tarea que todo el mundo aplaza, porque no aporta nada hasta el día en que lo salva todo. Las instantáneas que ofrecen los proveedores de alojamiento son cómodas, pero copian la máquina entera en casa del mismo proveedor, en el mismo sitio: protegen de un error humano, no de la pérdida de la cuenta ni de un incidente en la infraestructura. Y una instantánea no permite recuperar un solo archivo sobrescrito esta mañana.

La respuesta de referencia en código abierto se llama restic: cifrado de extremo a extremo, deduplicación, copias incrementales y compatibilidad con prácticamente todos los almacenamientos de objetos. Su único defecto es ergonómico: es una herramienta de línea de comandos. En la práctica, adoptarla significa escribir sus propios scripts, sus entradas cron, su política de retención, su purga periódica, su supervisión. Muchos se quedan en el primer script, y nadie se da cuenta cuando deja de ejecutarse.

Lo que Backrest aporta por encima de restic

  • Una interfaz web para crear los repositorios, lanzar las copias y recorrer las instantáneas como un árbol de archivos.
  • La programación estilo cron por plan, con políticas de retención (conservar N diarias, semanales, mensuales) definidas en el navegador.
  • El mantenimiento automático del repositorio: prune programado para recuperar espacio, check para detectar una corrupción antes de necesitarlo.
  • La restauración granular — un archivo, una carpeta — sin restauración completa ni interrupción del servicio.
  • Hooks al inicio, en caso de éxito y en caso de fallo: notificación hacia ntfy, Discord, Slack o cualquier webhook, o ejecución de un comando.
  • Varios repositorios y varios planes en paralelo, desde una sola instancia.
  • Un único binario Go, menos de 100 MB de RAM, ninguna base de datos — restic va integrado en la imagen.

Requisitos previos a la instalación

Backrest es ligero, pero conviene verificar algunos requisitos de hardware y software antes de desplegarlo. En el servidor, 512 MB de RAM es el mínimo funcional — suficiente para una máquina dedicada a las copias de seguridad; si el VPS aloja otros servicios activos, 1 GB es más cómodo. La versión de restic incluida en la imagen Docker de Backrest se mantiene actualizada por diseño, pero si gestionas restic de forma independiente, asegúrate de usar restic ≥ 0.16.0: las versiones anteriores no manejan correctamente ciertas políticas de retención JSON y pueden ignorar silenciosamente las reglas --keep-*.

Backrest expone su interfaz en el puerto 9898 (TCP). Ese puerto debe estar abierto en el cortafuegos del VPS (ufw allow 9898/tcp o su equivalente), pero no debería ser accesible públicamente sin autenticación. Finalmente, el directorio de datos de Backrest — /var/lib/backrest en la receta de ServOrbit — requiere acceso de escritura para el proceso en el contenedor: un volumen Docker montado por error en solo lectura fallará silenciosamente al guardar cambios de configuración.

Arquitectura: un contenedor, y sus datos siguen siendo suyos

Backrest es un único binario Go que integra restic. Se ejecuta en un solo contenedor, sin base de datos ni caché externa: su configuración vive en un archivo JSON y su estado en un directorio de datos. Es lo contrario de las pilas de copia de seguridad empresariales, y es lo que lo hace apto para un VPS modesto.

Lo importante es el sentido del cifrado. restic cifra cada instantánea localmente, en su servidor, antes de transmitir el menor byte: el destino solo recibe bloques opacos. La contraseña del repositorio es la clave, y solo usted la tiene — lo que significa que el almacenamiento puede ser un proveedor barato y no auditado sin que ello plantee un problema de confidencialidad, pero también que perder esa contraseña deja las copias definitivamente ilegibles.

En la receta de ServOrbit, los directorios /home, /root y /etc del anfitrión se montan en solo lectura bajo /host dentro del contenedor. Backrest puede así respaldar los datos y la configuración del servidor sin poder modificarlos nunca.

Elegir el backend de almacenamiento

Desplace la tabla

Backendvalue
Backblaze B2Recomendado para empezar. ~0,006 $/GB/mes, sin tarifas de entrada, salida gratuita hacia las CDN de Cloudflare. Cree un bucket privado, genere una clave de aplicación con acceso restringido a ese bucket y péguelos en Backrest. La deduplicación de restic hace que el coste real sea muy inferior al volumen bruto.
S3 AWS o MinIOAdecuado para infraestructuras ya en el ecosistema AWS, o para autoalojar almacenamiento de objetos en un segundo VPS (MinIO). Misma interfaz S3 — los parámetros en Backrest son idénticos, solo cambia la URL del endpoint. AWS Glacier Instant Retrieval es aún más barato pero alarga las restauraciones.
SFTP a un segundo VPSSin suscripción externa si dispone de un segundo servidor. Configure acceso SSH por clave dedicada (sin contraseña, derechos limitados al directorio destino) y use el backend `sftp:user@host:/ruta` en Backrest. Ideal para replicación cruzada entre dos VPS de ServOrbit en distintos centros de datos.

Desplegar Backrest y proteger un VPS en 6 pasos

  1. Conectarse por primera vez

    Al abrir la URL por primera vez, Backrest muestra su pantalla de configuración inicial: usted elige un identificador de instancia (definitivo) y luego crea su propio nombre de usuario y su contraseña. Abra esa dirección de inmediato.

Restaurar un archivo o directorio

La restauración en Backrest funciona en dos niveles según la granularidad necesaria.

Desde la interfaz web: abra la pestaña Snapshots de su plan, seleccione una instantánea por fecha, navegue en el árbol de archivos y haga clic en Restore para cualquier archivo o carpeta. Backrest lanza la restauración hacia la ruta de destino que usted especifica — por ejemplo /tmp/restore-test/ para no sobrescribir el archivo en producción.

Desde la CLI de restic (útil para restauraciones grandes o automatizadas): entre en el contenedor con docker exec -it backrest sh, luego ejecute restic -r <url-de-su-repo> restore latest --target /tmp/restore/. Para restaurar una ruta específica añada --include /host/home/user/proyecto. Tras la restauración, valide la integridad de la instantánea con restic check --read-data-subset=5%.

Resolución de problemas habituales

Fallo silencioso del cron. Si el plan no se dispara pese a una programación correcta, confirme que el contenedor está en marcha (docker ps) y que su reloj interno está sincronizado con el anfitrión (pase --env TZ=Europe/Madrid o su zona horaria al crear el contenedor).

Error wrong password or no key found. Este error aparece cuando la contraseña introducida no coincide con la clave almacenada en el repositorio. Compruebe que no haya un espacio o carácter invisible en la contraseña copiada y pegada. Si ha perdido la contraseña, el repositorio es permanentemente ilegible.

Espacio de almacenamiento insuficiente en el backend. Active el prune automático en su plan para evitar que las instantáneas antiguas se acumulen. En Backblaze B2 puede configurar una regla de ciclo de vida en el bucket para eliminar automáticamente los objetos marcados por restic como borrados.

Backrest ya no responde en el puerto 9898. Primero confirme que el contenedor está en marcha (docker ps), luego que el puerto está enlazado (ss -tlnp | grep 9898). Si el contenedor está en estado restarting, revise los logs con docker logs backrest --tail 50 — un archivo JSON de configuración corrupto es la causa más frecuente tras un apagado brusco.

Consejo: la regla 3-2-1 empieza por salir del servidor

El error más frecuente es enviar las copias a un disco del mismo servidor, o a un volumen del mismo proveedor. Eso protege de un borrado accidental, no de la pérdida de la máquina ni de un incidente con la cuenta. Apunte como mínimo a un destino fuera del proveedor del VPS: Backblaze B2 o Wasabi cuestan unos pocos euros al mes por varias decenas de gigabytes y, gracias a la deduplicación de restic, meses de retención diaria ocupan mucho menos de lo que se imagina.

Un servidor que puede permitirse perder

Despliegue Backrest en un VPS ServOrbit y programe copias de seguridad cifradas de extremo a extremo hacia el almacenamiento de objetos que prefiera — con restauración archivo por archivo desde el navegador.

¿Necesita ayuda?

Consulte nuestro centro de ayuda y nuestra FAQ, o contacte con nuestro equipo: llamada, WhatsApp o correo electrónico. Soporte en francés, inglés y árabe.

Escribir por WhatsAppse abre en una pestaña nueva