Cuando la “nube” es un CPD con marketing: lecciones para sysadmins del siniestro del G-Drive gubernamental en Corea (y cómo blindar tus datos de verdad)

Un incendio en el NIRS (Daejeon, Corea) ha destruido el G-Drive gubernamental —el “cloud” interno donde ~750.000 funcionarios guardaban su trabajo desde 2018— y ha dejado inutilizados 96 sistemas críticos colaterales. No existían copias externas del G-Drive por la arquitectura elegida (almacenamiento de gran capacidad y bajo rendimiento sin backup off-site), así que los ficheros de usuario se han perdido salvo lo que pueda recuperarse de otros sistemas (p. ej., OnNara). Traducción para admins: la “nube” no era multi-CPD, no tenía 3-2-1 y, además, había acoplamiento entre servicios críticos en el mismo dominio de fallo.

En España, el ENS (RD 311/2022), en nivel Alto, exige DRP y copias adecuadas; pero ya sabemos que norma ≠ ejecución. Este incidente es un buen detonante para revisar arquitectura, backups y procedimientos.


El fallo de diseño (y cómo evitarlo)

Qué salió mal

  1. Monolito físico: servicio “cloud” en un solo CPD.
  2. Sin off-site: la propia arquitectura no permitía backups externos.
  3. Acoplamiento: otros 96 sistemas críticos cayeron con el mismo evento.
  4. Uso exclusivo: algunos ministerios obligaban a usar G-Drive como única fuente.

Antídoto mínimo para cualquier plataforma “enterprise”

  • Regla 3-2-1 (mejor 3-2-1-1-0)
    • 3 copias, 2 soportes distintos, 1 off-site; añade 1 copia inmutable/air-gapped (S3 Object Lock, WORM, cinta) y 0 errores verificados en restauraciones de prueba.
  • Redundancia geográfica
    • Activo-activo entre dos zonas/regiones (RTO≈0 si hay capacidad).
    • Activo-pasivo con conmutación orquestada y RTO definido.
  • Separación de dominios de fallo
    • Energía, refrigeración, red, racks, uplinks, proveedores (cuando aplique).
  • Backups fuera del plano
    • Repositorios gestionados con identidades segregadas, MFA y acceso mínimo, no dependientes del mismo IAM/AD que producción.
  • Inmutabilidad
    • WORM (S3 Object Lock compliance mode), air-gap con cinta o repositorios “sellados”.
  • RPO/RTO reales
    • Defínelos por servicio. Documenta dependencias (DNS, IAM, PKI, colas, feature flags).
  • DR drills
    • Ensayos de conmutación y de restauración temporizados, al menos 1–2/año y tras cambios relevantes.

Arquitecturas de referencia (rápidas y con impacto)

1) “Cloud” privado/colo: activo-activo + backup inmutable

[CPD A]  <—replicación síncrona/async—>  [CPD B]
      \                                    /
       \—(jobs backup→repositorio WORM)—> [CPD C]
Lenguaje del código: HTML, XML (xml)
  • Producción: replicación de metadatos y datos (block/object) entre A y B.
  • Copia: backup inmutable diario/horario a C (otra región/proveedor).
  • Runbook: conmutación a B (fallo A) o restauración desde C (evento catastrófico).

2) Híbrido/SaaS: responsabilidad compartida

  • SaaS backup de tus datos. Exige en contrato:
    • Ubicaciones (zonales/regionales) y RPO/RTO proveedor.
    • Exportabilidad periódica a tu repositorio WORM.
    • Pruebas de recuperación o evidencias auditables.

Herramientas y patrones que funcionan (y que puedes desplegar mañana)

  • Backups
    • Proxmox Backup Server: deduplicación, cifrado, verificación de restauras, retention policies, soporte immutable (con store backends adecuados).
    • Veeam: scale-out repositories, SOBR con Object Lock, detección de anomalías, SureBackup (verificación), DR Orchestrator.
    • Cinta LTO: air-gap económico para retenciones largas/compliance.
  • Datos
    • S3-compatible con versionado + Object Lock (MinIO/ceph-rgw, nube pública).
    • ZFS snapshots + send/receive entre CPDs, con retention y scrub programado.
  • Orquestación DR
    • Infraestructura como código (Terraform/Ansible) + runbooks automatizados.
    • DNS/Anycast/GLB para bascular tráfico. Config-as-code (Consul/etcd).
  • Seguridad
    • IAM/LAPS para repos de backup separado del dominio de producción.
    • MFA obligatorio; bóveda de secretos (HashiCorp Vault; HSM si aplica).
    • SIEM/SOAR alertando de borrados masivos, cambios de políticas o cifrado de repositorios.

Mini-runbook (plantilla) — caída total del CPD A

Objetivo: recuperar servicio desde B con RPO≤X min y RTO≤Y min.

  1. Activar DR (trayecto corto)
    • Congelar cambios en A (si está medio vivo).
    • Promover B como primario (base de datos/objetos/colas).
    • Cambiar DNS/GLB → B.
    • Validar salud (APM, synthetics, healthchecks).
    • Comunicar estado.
  2. Activar DR (trayecto largo: pérdida de ambos A/B)
    • Provisionar B desde templates (IaC).
    • Restaurar datos desde C (WORM):
      • DB → point-in-time
      • Objetos/ficheros → última versión válida
    • Validar integridad (checksums), arrancar servicios, conmutar DNS.
  3. Post-mortem
    • Tiempo de detección, RPO real, RTO real, bloqueo, causas raíz, acciones.

Checklist de sysadmin (para no repetir Daejeon)

  • Dos zonas/CPDs en activo-activo o conmutación probada (runbooks).
  • Copia off-site inmutable (WORM/air-gap) en tercer dominio de fallo.
  • RPO/RTO por servicio y ensayos documentados.
  • Backups fuera del plano (IAM segregado, MFA, acceso mínimo).
  • Monitorización de anomalías en repos de backup y alertas.
  • Inventario de datos (SaaS incluido) y export/retención definidos.
  • ENS/ISO 27001/22301 y evidencias de auditoría al día.
  • DR drills al menos semestrales con tiempos y resultados.

Comentario experto — David Carrero (Stackscale – Grupo Aire)

“La mejor póliza no es una, son varias. En Stackscale desplegamos producción activo-activo en dos CPDs distintos y, además, copias inmutables en un tercer sitio. Para backup inmutable o air-gap usamos herramientas como Proxmox Backup Server o Veeam con Object Lock. Lo crucial no es la marca, es el diseño y probar las recuperaciones: sin test, no hay DRP.”

Traducción operativa: producción que sobrevive a la caída de un sitio, copias que no pueden ser alteradas y ensayos cronometrados de conmutación/restauración.


Plantilla de política 3-2-1-1-0 (fragmento)

policy:
  copies:
    total: 3
    media:
      - disk (primary)
      - object-storage (WORM)
    offsite:
      enabled: true
      location: cpd-c
    immutability:
      mode: compliance
      retention: 30d
  rpo: "15m"   # por servicio
  rto: "60m"
  verification:
    schedule: weekly
    method: restore-test + checksum
    target: isolated network
  access:
    iam: separate-domain
    mfa: required
    roles:
      - backup-admin (no prod)
      - restore-operator (break-glass)
Lenguaje del código: PHP (php)

SaaS: recordatorio incómodo

  • Tu responsabilidad saber dónde están tus datos y cómo se recuperan.
  • Pacta por contrato RPO/RTO, export periódica, evidencias de DR y opción de ensayo.
  • Mantén copias propias (export/backup) en repositorio WORM.

FAQ

¿Cada cuánto debo probar DR?
Como mínimo 1–2 veces/año y tras cambios significativos; siempre con tiempos (RTO real) y reporte.

¿Activo-activo o activo-pasivo?
Depende de tu RTO y presupuesto. Activo-activo minimiza downtime pero complica coherencia; pasivo reduce coste pero aumenta RTO.

¿Qué uso para inmutabilidad?
S3 Object Lock (compliance), cinta LTO para air-gap, snapshots ZFS con retenciones, y repositorios PBS/Veeam configurados en WORM.

¿Cómo detecto que alguien “mata” mis backups?
Alertas por cambios de políticas, borrados masivos, patrones de cifrado; auditoría IAM, MFA universal y separación de dominios de identidad.


Conclusión

Si tu “nube” cabe en un edificio, no es nube: es un punto único de fallo con mucho hierro. El caso coreano lo demuestra con crudeza. Para no repetirlo: redundancia geográfica, copias inmutables off-site, segregación de accesos y DR drills periódicos. El resto es semántica.

Fuente: Noticias cloud y korea joongang daily

Suscríbete al boletín SysAdmin

Este es tu recurso para las últimas noticias y consejos sobre administración de sistemas, Linux, Windows, cloud computing, seguridad de la nube, etc. Lo enviamos 2 días a la semana.

¡Apúntate a nuestro newsletter!


– patrocinadores –

Noticias destacadas

– patrocinadores –

¡SUSCRÍBETE AL BOLETÍN
DE LOS SYSADMINS!

Scroll al inicio
×