Copia de seguridad de LitArbi Server en Amazon S3, paso a paso

Unos 20 minutos, una sola vez. Después, el servidor escribe cada noche un punto de restauración cifrado en un bucket que nadie puede vaciar antes de tiempo — ni un atacante en el servidor, ni un administrador, ni Amazon.

Actualizado el

Antes de empezar

Necesita tres cosas: una cuenta de Amazon Web Services en la que pueda entrar como administrador, una cuenta de administrador en su LitArbi Server y un lugar seguro para el kit de copia de seguridad — el gestor de contraseñas del despacho, o una impresora y una caja fuerte. Reserve 20 minutos; la primera copia se hace después sola.

Las etiquetas de AWS de abajo son las de la consola en inglés; el idioma se cambia en la configuración de la consola (icono de engranaje arriba). Creará cinco cosas, en este orden:

QuéPara qué sirve
Un bucket con Object LockEl lugar donde se guardan los puntos de restauración. Object Lock hace que cada archivo no se pueda borrar durante 30 días.
Una regla de limpiezaElimina 30 días después los archivos que el servidor ha borrado — para que la factura no siga creciendo.
Una política (policy)Las cinco cosas que el servidor puede hacer en ese bucket — y nada más.
Un usuario con clave de accesoEl acceso propio del servidor al bucket. No puede abrir la consola de AWS.
La página BackupsEn LitArbi Server: la clave de copia de seguridad, los datos del bucket y cuánto tiempo se conservan los puntos de restauración.

Todo lo que envía el servidor va cifrado antes de salir de él, con una clave que solo tiene su despacho. Amazon guarda datos que no puede leer; LitArbi tampoco.

Coste. Amazon cobra unos céntimos por gigabyte al mes por el almacenamiento en Fráncfort, más importes mínimos por petición. Un servidor con 20 GB de documentos cuesta bastante menos de un euro al mes.

Paso 1 — Crear el bucket

  1. Entre en la AWS Management Console. En el menú de regiones, arriba a la derecha, elija Europe (Frankfurt) eu-central-1 — u otra región de la UE; anote cuál.
  2. Abra S3 (escriba «S3» en la búsqueda) y pulse Create bucket.
  3. Bucket type: General purpose. Bucket name: un nombre único, por ejemplo litarbi-backup-sudespacho — minúsculas, cifras y guiones; el nombre no puede estar ocupado en ningún lugar de AWS.
  4. Deje los valores por defecto: ACLs disabled, Block all public access marcado, cifrado por defecto SSE-S3.
  5. Abra Advanced settings. En Object Lock elija Enable y marque la casilla que confirma que los objetos podrán bloquearse de forma permanente. El control de versiones se activa con ello.
  6. Pulse Create bucket.

Object Lock solo se puede activar ahora, al crear el bucket — y nunca se desactiva. AWS sugiere después una «default retention»: omítala. LitArbi bloquea cada archivo por sí mismo, durante los días que indique en el paso 5.

Paso 2 — La regla de limpieza

Object Lock necesita el control de versiones, y con él un borrado solo oculta el archivo. Cuando LitArbi retira un punto de restauración antiguo, la regla elimina definitivamente la copia oculta 30 días después.

  1. Abra el nuevo bucket, pestaña Management, y pulse Create lifecycle rule.
  2. Lifecycle rule name: litarbi-cleanup. Choose a rule scope: Apply to all objects in the bucket, y marque la confirmación.
  3. En Lifecycle rule actions marque Permanently delete noncurrent versions of objects y Delete expired object delete markers or incomplete multipart uploads.
  4. Days after objects become noncurrent: 30. Deje vacío «Number of newer versions to retain».
  5. Marque Delete expired object delete markers y Delete incomplete multipart uploads, Number of days: 7.
  6. Pulse Create rule.

No marque «Expire current versions of objects»: borraría las propias copias de seguridad.

Paso 3 — La política: qué puede hacer el servidor

  1. Abra IAM (escriba «IAM» en la búsqueda), después Policies y Create policy.
  2. Cambie el editor de Visual a JSON, seleccione todo y sustitúyalo por la política de abajo. Ponga el nombre de su bucket en los dos lugares donde dice litarbi-backup-yourfirm.
  3. Pulse Next. Policy name: LitArbiServerBackup. Pulse Create policy.
{
  "Version": "2012-10-17",
  "Statement": [
    {
      "Sid": "ListTheBackupBucket",
      "Effect": "Allow",
      "Action": "s3:ListBucket",
      "Resource": "arn:aws:s3:::litarbi-backup-yourfirm"
    },
    {
      "Sid": "ReadWriteBackupFiles",
      "Effect": "Allow",
      "Action": ["s3:GetObject", "s3:PutObject", "s3:PutObjectRetention", "s3:DeleteObject"],
      "Resource": "arn:aws:s3:::litarbi-backup-yourfirm/*"
    }
  ]
}

Con esta política el servidor puede listar, leer, escribir y borrar los archivos actuales de ese único bucket. No puede eliminar versiones antiguas — s3:DeleteObjectVersion falta a propósito. Quien se haga con el servidor solo podrá ocultar archivos, nunca destruirlos; las copias ocultas siguen recuperables durante 30 días.

Si el editor duplica llaves o comillas mientras escribe, pegue la política en lugar de teclearla.

Paso 4 — El usuario del servidor y su clave de acceso

  1. En IAM abra Users y pulse Create user. User name: litarbi-server-backup. Deje sin marcar el acceso a la consola. Next.
  2. Permissions options: Attach policies directly. Busque LitArbiServerBackup, márquela, Next y luego Create user.
  3. Abra el nuevo usuario, pestaña Security credentials, y en Access keys pulse Create access key.
  4. Caso de uso: Application running outside AWS. Next, si quiere la descripción «LitArbi Server», y Create access key.
  5. AWS muestra la Access key (empieza por AKIA) y la Secret access key — el secreto solo esta vez. Deje la página abierta para el paso 5.

¿Ha perdido el secreto? Borre la clave de acceso, cree otra e introduzca el nuevo par en LitArbi. Nada más cambia.

Paso 5 — La página Backups de LitArbi Server

En LitArbi Web abra Administration ▸ Backups. La página tiene tres partes numeradas; sus etiquetas están en inglés.

1 · Backup key

Pulse Create the backup key. La página muestra el kit de copia de seguridad una sola vez: una clave LABK-… y su huella. Imprímalo o guárdelo en el gestor de contraseñas del despacho, separado del servidor, y asegúrese de que una segunda persona sepa dónde está. El servidor solo guarda la mitad pública: puede escribir copias, nunca leerlas. Sin el kit nadie puede abrirlas — ni usted, ni su proveedor de hosting, ni Amazon, ni LitArbi.

2 · Backup place

Elija S3-compatible storage y rellene:

CampoValor
Endpointhttps://s3.eu-central-1.amazonaws.com — para otra región https://s3.REGION.amazonaws.com
Regioneu-central-1 (la región del bucket)
Bucketel nombre de su bucket
Access keyla Access key del paso 4
Object Lock: … days30
Addressingautomatic
Secret key / passwordla Secret access key del paso 4
Sub-folder (optional)dejar vacío

Confirme con su propia contraseña de LitArbi y pulse Test and save. El servidor escribe, lee y borra primero un archivo de prueba, así que un error aparece enseguida (vea «Si algo falla» más abajo). Los datos de acceso se guardan cifrados en el servidor.

3 · Keep restore points for

14 días, 8 semanas y 12 meses es un buen comienzo: se conserva el punto de restauración más reciente de cada día, semana y mes. Las obligaciones profesionales de conservación pueden exigir más meses.

Por último pulse Back up now. La primera copia lo envía todo y puede tardar — continúa en segundo plano. Las siguientes solo envían lo nuevo.

Paso 6 — Comprobar que funciona

  • En la página Backups, Last backup muestra la fecha de hoy y At the backup place su bucket con «Object Lock 30 days».
  • El resumen ya no avisa de que no hay copias configuradas.
  • Introduzca la clave de su kit en Check the kit. Abre una vez el punto de restauración más reciente y no se guarda — la prueba de que el kit funciona antes de necesitarlo.
  • Check the backups compara el punto de restauración más reciente con lo enviado; el servidor lo repite solo cada semana.

La copia se hace en segundo plano en tramos cortos mientras se usa LitArbi. Si su hosting ofrece tareas cron, es más fiable lanzarla cada noche a una hora fija — la guía de instalación que acompaña al servidor indica la línea.

Si algo falla

Si Test and save falla, la página muestra el motivo que da Amazon. Los habituales:

El mensaje contieneCausaQué hacer
AccessDeniedLa política nombra otro bucket, o no está asignada al usuario.Revisar el nombre del bucket en los dos lugares de la política, y que el usuario tenga LitArbiServerBackup.
InvalidAccessKeyId o SignatureDoesNotMatchClave de acceso o secreto mal escritos — a menudo un espacio al final.Pegar ambos de nuevo, o crear una nueva clave de acceso.
NoSuchBucket o PermanentRedirectEl nombre del bucket o la región no coinciden.La región y el endpoint deben ser los del bucket.
Bucket is missing Object Lock ConfigurationObject Lock no se activó al crear el bucket.Crear un bucket nuevo con Object Lock (paso 1), o poner Object Lock a 0 días — sin la protección.

Otros proveedores S3

Cualquier almacenamiento compatible con S3 funciona igual — por ejemplo Hetzner Object Storage, IONOS S3 Object Storage, Backblaze B2 o Wasabi. Tres cosas importan en todos:

  • Activar Object Lock (y con él el control de versiones) al crear el bucket, si el proveedor lo ofrece.
  • Crear una clave de acceso limitada a ese único bucket, si el proveedor lo permite.
  • Tomar el endpoint y la región de la documentación del proveedor e introducirlos en el paso 5.

Preguntas frecuentes

¿Pueden LitArbi o Amazon leer nuestras copias?
No. El servidor lo cifra todo con la clave de copia de seguridad del despacho antes de enviar nada. Solo el kit abre un punto de restauración, y el kit solo existe en su poder.
¿Y si perdemos el kit?
Entonces nadie puede abrir los puntos de restauración existentes. Cree una clave nueva en «Replace the backup key» y guarde el nuevo kit; los puntos de restauración siguientes la usan. Por eso la página pide comprobar el kit ahora, y no el día en que lo necesite.
¿Qué pasa si alguien se hace con el servidor?
No puede borrar lo que está bajo Object Lock, y la clave de acceso del servidor no puede eliminar versiones antiguas. Como mucho oculta archivos — y la regla de limpieza solo elimina las copias ocultas pasados 30 días, tiempo suficiente para darse cuenta y restaurar.
¿Por qué 30 días?
Un mes basta para notar un ataque o un error, y el almacenamiento sigue siendo barato. Más tiempo protege más y cuesta algo más; 14 días es el mínimo que recomendamos.
¿Podremos borrar el bucket más adelante?
Solo cuando haya vencido el último bloqueo — 30 días después de la última copia. Nadie puede acortar los bloqueos en modo de cumplimiento, ni siquiera Amazon.

Fuentes