Documentación / Operar y recuperar
Recuperación de la plataforma
Copias cifradas, claves y un ensayo de restauración fuera del servidor.
Kit del operador
Esta guía es para el operador. Las aplicaciones normalmente usan copias de servicios. Recuperar la plataforma requiere código, configuración bootstrap, conexión R2, copia cifrada y clave age privada fuera del servidor. Perder el VPS no debe eliminar la única clave.
El kit contiene secretos. Guárdalo fuera del repositorio, VPS y bucket. Usa almacenamiento local protegido y un archivo adicional con contraseña, conservada por separado en un gestor de contraseñas.
Claves
Instala primero age, por ejemplo brew install age en macOS. Genera una identidad X25519 en el ordenador del operador:
umask 077
age-keygen -o /protected/platform-backup.agekey
age-keygen -y /protected/platform-backup.agekey
Crea /protected como directorio privado escribible o usa tu propia ruta protegida. El segundo comando muestra el destinatario público age1.... Solo ese valor se configura en el servidor como PLATFORM_BACKUP_AGE_RECIPIENT. La identidad privada nunca se copia al VPS. Sin ella no se descifran las nuevas copias.
Si falta el destinatario, la copia falla sin guardar texto plano. La limpieza automática de copias de plataforma queda pausada hasta que PLATFORM_BACKUP_AGE_VERIFIED_RECIPIENT coincida con el destinatario actual después de una restauración externa correcta. La retención de aplicaciones continúa.
Preparar y ensayar fuera del host
Desde un checkout autorizado, con SSH, Docker local, dependencias y age disponibles:
python3 scripts/prepare-recovery-kit.py \
--host root@YOUR_SERVER \
--output /protected/upferry-kit \
--identity /protected/platform-backup.agekey
pnpm recovery:drill \
--connection /protected/upferry-kit/r2-connection.json \
--bootstrap /protected/upferry-kit/bootstrap.env \
--identity /protected/upferry-kit/backup-identity.txt \
--output /protected/recovery-result