Plan de recuperación ante desastres

Alcance y objetivos

Este plan aborda la recuperación de sucesos catastróficos que afecten la disponibilidad del servicio Weblate, la integridad de los datos o la continuidad operativa.

Nota

El plan está diseñado específicamente para implementaciones de Weblate de Weblate s.r.o., pero se puede aplicar a otras implementaciones de manera similar.

Definiciones

  • Desastre: Cualquier evento imprevisto que cause la pérdida total o significativa del servicio, los datos o la funcionalidad del sistema. Algunos ejemplos incluyen fallos de hardware, corrupción de datos, interrupciones de la infraestructura o ataques maliciosos.

  • Objetivo de punto de recuperación (RPO): Intervalo máximo aceptable de pérdida de datos: 24 horas.

  • Objetivo de tiempo de recuperación (RTO): Tiempo máximo aceptable para restaurar el servicio completo: 8 horas.

Componentes críticos

  • Capa de aplicación: Aplicación Weblate Python/Django, trabajadores en segundo plano (Celery) y tareas programadas.

  • Capa de datos: Base de datos PostgreSQL, repositorios de traducción (Git) y bitácoras.

  • Infraestructura: servidor web (NGINX/Apache), proxy inverso, volúmenes de almacenamiento, configuración SSL/TLS y sistema de registro SIEM opcional.

Directiva de respaldo

El proceso Copia de respaldo automatizada utilizando BorgBackup garantiza que todos los componentes esenciales (base de datos, datos y configuración) se respalden diariamente. Las copias de respaldo se almacenan en dos lugares geográficamente diferentes. La directiva de retención de copias de respaldo garantiza la disponibilidad diaria de copias de respaldo recientes y conserva seis meses de copias de respaldo.

Procedimientos de Recuperación

Escenario de fallo: pérdida total del host/system

  1. Provisión de host nuevo.

  2. Arranque Weblate utilizando software de aprovisionamiento.

  3. Restaurar la copia de seguridad de Weblate siguiendo Restaurar a partir de BorgBackup.

  4. Reiniciar el contenedor Weblate.

  5. Verificar la funcionalidad y realizar comprobaciones de coherencia.

Escenario de fallo: corrupción de la base de datos o pérdida de volumen de datos

  1. Detener Weblate para evitar más operaciones de escritura.

  2. Restaurar la copia de seguridad de Weblate siguiendo Restaurar a partir de BorgBackup.

  3. Reiniciar los servicios y verificar la traducción y la coherencia de los datos del usuario.

Escenario de falla: manipulación maliciosa o ransomware

  1. Aislar el host afectado desde la red.

  2. Identificar el último respaldo conocido como correcto (antes de la infección).

  3. Siga los pasos de Escenario de fallo: pérdida total del host/system para implementar el sistema en un nuevo host.

Validación y testeo

  • Verificación de respaldo: Prueba de restauración mensual de los respaldos de Weblate.

  • Simulacro de recuperación ante desastres: se realiza al menos una vez al año y consiste en la restauración completa del entorno de preparación.

  • Comprobaciones de integridad automatizadas: BorgBackup garantiza la integridad de los archivos de respaldo.

Pasos tras recuperación

  • Confirme todos los servicios sean operacionales y accesibles.

  • Notificar a los usuarios y partes interesadas sobre el estado de recuperación.

  • Documentar línea de tiempo, causa de root, y lecciones aprendidas.

  • Aplicar actualizaciones o cambios estructurales para prevenir recurrencias.

  • Siga Directiva de divulgación de vulnerabilidades en caso de que haya alguna vulnerabilidad involucrada.