Copias de seguridad de un VPS: estrategia y restauración
Una copia solo tiene valor si puede devolver un servicio operativo en el tiempo previsto. Un archivo en el mismo disco no basta: define la pérdida tolerable, conserva versiones independientes, cifra los datos y ensaya la recuperación.

Empieza por RPO y RTO
RPO es cuánto dato reciente puedes perder; RTO, cuánto puede tardar la recuperación. Si no puedes perder más de 15 minutos de pedidos, un dump diario no sirve. Define objetivos separados para base, uploads, configuración y código.
| Proyecto | RPO orientativo | RTO orientativo |
|---|---|---|
| Blog | 24 h | 4–8 h |
| Web empresarial | 4 h | 1–2 h |
| Tienda | 15–60 min | 30–60 min |
Qué debes guardar
- dump o copia consistente de la base;
- uploads y documentos no recreables;
- configuración de proxy, systemd, firewall y cron;
- código, migraciones y versiones de dependencias;
- instrucción y claves de recuperación fuera del VPS.
Excluye caches y temporales, pero documenta las reglas. Una máscara equivocada puede omitir datos reales durante meses.
Regla 3-2-1
Mantén tres copias, en dos tipos de almacenamiento y una fuera de la plataforma. Un snapshot del proveedor facilita rollback, pero no protege de borrar el proyecto o perder la cuenta. La sincronización tampoco basta si replica inmediatamente un borrado o ransomware. Usa versionado o retención inmutable.
La credencial del VPS debería poder añadir copias sin borrar versiones antiguas. Protege la cuenta administrativa con MFA y guarda la clave de cifrado en dos lugares controlados.
Copiar bases correctamente
No archives el directorio de una base activa sin coordinación. Usa pg_dump, mysqldump o la herramienta física oficial. Un dump lógico es portable pero lento en bases grandes; una copia física restaura rápido y depende más de versión. Comprueba código de salida, estructura y restauración con consultas funcionales.
Herramientas
| Opción | Uso | Límite |
|---|---|---|
| Snapshot | Rollback rápido | Misma cuenta/plataforma |
| Restic/Borg | Incrementales cifradas | Requiere política y pruebas |
| Rclone | Transferencia a nubes | Sync puede replicar borrados |
| Dump de SGBD | Copia portable | Tiempo en bases grandes |
Calcula almacenamiento, versiones, salida durante recuperación y coste de solicitudes. El almacenamiento frío barato puede no cumplir el RTO.
Calendario, retención y coste
La política “7 diarias, 4 semanales y 12 mensuales” es un comienzo, no una regla universal. Una base activa necesita puntos cortos y frecuentes; documentos legales pueden requerir retención larga. El backup también contiene datos personales, por lo que debe respetar los plazos de borrado y el control de acceso.
El cifrado evita que el proveedor de almacenamiento lea la copia, pero introduce una dependencia crítica. Guarda la clave y el runbook en dos ubicaciones controladas. No pongas la única contraseña en el propio VPS ni junto al archivo cifrado. Comprueba además cuánto cuesta y tarda descargar todo el volumen.
La prueba definitiva
- Crear un VPS limpio sin consultar el servidor activo.
- Desplegar versiones fijadas desde el repositorio.
- Descifrar y verificar checksums.
- Restaurar base y archivos.
- Ejecutar migraciones y pruebas de lectura/escritura.
- Medir RPO/RTO reales y actualizar el runbook.
Monitoriza edad, tamaño y resultado de la copia, no solo que cron arrancó.
Después de restaurar, valida una operación de negocio: último pedido, inicio de sesión, relación entre registros y archivos, y ejecución de jobs. Un servicio que responde HTTP 200 puede seguir incompleto. Anota cada paso manual observado durante el simulacro y automatízalo antes del siguiente.
Errores frecuentes
- Copia en el mismo disco.
- Guardar base pero olvidar uploads o configuración.
- No restaurar nunca.
- Sin alertas ante credencial revocada o disco lleno.
- Secretos sin cifrar en el archivo.
- Sin política de retención.
Preguntas frecuentes
¿Un snapshot es backup?
Es una capa útil, no una copia independiente.
¿Hay que parar la web?
Normalmente no si usas herramientas consistentes.
¿Cada cuánto probar?
Tras cambios y regularmente; al menos trimestralmente en un proyecto pequeño.
¿Dónde guardar la clave?
En un gestor de secretos con una copia de emergencia independiente.
Revisa también seguridad del servidor.
