Todo lo que querrías saber antes de instalar.
Una mirada detallada a cómo funciona Módulo Copia de Seguridad PrestaShop 8 & 9 — dfbackup, BDD + Archivos, Cifrado AES-256, S3/FTP/Dropbox, Replicación Staging, por qué lo construimos así y la lógica detrás de las características anteriores.
Un backup real, no un script de circunstancia
La mayoría de los módulos de backup PrestaShop simplemente llaman a mysqldump y luego empaquetan la carpeta shop, lo que causa tres problemas en producción : mysqldump no está disponible en la mayoría de hostings compartidos, shell_exec está deshabilitado por razones de seguridad, y los archivos no cifrados tirados en disco son una bomba de tiempo en caso de compromiso. dfbackup resuelve los tres puntos : volcado BDD en PHP puro, archivado vía ZipArchive y cifrado AES-256 autenticado opcional con passphrase de usuario. Todo funciona en hosting compartido OVH, o2switch, Infomaniak, Hostinger, Plesk, sin configuración particular.
Cifrado AES-256 con HMAC : encrypt-then-MAC bien hecho
El patrón encrypt-then-MAC es el estándar recomendado por los criptógrafos para los esquemas simétricos : se cifra primero, luego se calcula un HMAC sobre el ciphertext y el IV. En lectura, se verifica el HMAC antes de descifrar — protección contra bit-flip attacks y padding oracle attacks. La passphrase de usuario pasa por PBKDF2-SHA256 con 120000 iteraciones para derivar una clave de cifrado y una clave HMAC separadas (32 bytes cada una). El formato binario IV-HMAC-ciphertext está documentado, es auditable y leído por cualquier herramienta compatible OpenSSL. La passphrase misma nunca se almacena en texto plano : solo su hash password_hash se conserva para verificación.
S3 SigV4 nativo : multipart, MinIO, R2, OVH, Scaleway, Wasabi, B2
En lugar de empaquetar el SDK oficial de AWS (que pesa varios MB e impone Composer), dfbackup implementa directamente AWS Signature V4 en cURL. Cien líneas de código, cero dependencia externa, firma canónica compatible con todos los servicios que hablan S3. Puede apuntar dfbackup hacia Amazon S3 en región eu-west-3, o MinIO en su propio VPS, o Cloudflare R2 (que ofrece 10 GB gratis y cero coste de salida — ideal para backups), o OVH Object Storage, o Scaleway, o Wasabi, o Backblaze B2 — todos funcionan cambiando solo el endpoint y la región en los ajustes. Por encima de 100 MB, el upload pasa automáticamente a multipart con partes de 10 MB, lo que permite transferir un archivo de varios gigabytes sin saturar la memoria.
Replicación push : un staging nightly sin configuración sysadmin
Es la característica que distingue a dfbackup : la posibilidad de empujar cada backup hacia una segunda instalación PrestaShop. Instale dfbackup en su producción y en su staging, comparta un secreto común, marque Replicación como destino de almacenamiento. En cada backup — manual o programado — el archivo se sube por chunks de 8 MB firmados HMAC-SHA-256 hacia un front controller dedicado en el target. Si la opción auto-restore está activada del lado target, el backup se aplica automáticamente — su staging está al día por la mañana siguiente con los datos de la víspera. No más rsync, scripts cron sysadmin, transferencias FTP manuales ni licencias ManageWP.
Restauración 1-clic con red de seguridad
Una restauración de backup es la operación más arriesgada del ciclo de vida de una tienda : se sobrescribe la BDD viva con una versión anterior, se reemplazan todos los archivos, y si algo se desvía, el rollback es complejo. dfbackup añade una red de seguridad automática : antes de cada restauración, se crea silenciosamente un snapshot de BDD sola. Si la restauración falla a mitad de camino (corrupción de archivo, error SQL, espacio en disco insuficiente), restaura ese snapshot y vuelve al estado inicial en pocos minutos. La tabla dfbackup misma nunca se sobrescribe durante una restauración — su historial de backups se preserva incluso cuando restaura una versión de hace seis meses.
Backups en segundo plano : un clic, logs en directo
La experiencia clásica de un botón Run backup en PHP : haces clic, el navegador se congela durante 5 a 15 minutos, el usuario cree que está bloqueado, vuelve a hacer clic, dos backups salen en paralelo y el lock cae en error. dfbackup resuelve este patrón feo en dos tiempos : el clic pre-asigna una fila en base, dispara un cURL self-call hacia un front controller dedicado y devuelve el ID inmediatamente (menos de 500 ms). El navegador muestra inmediatamente una barra de progreso y hace polling de los logs en tiempo real — usted ve los 15 pasos pasar (inicio, volcado BDD, archivado, cifrado, cálculo de checksum, upload hacia cada backend, rotación). El backup se ejecuta en su propio proceso PHP, completamente desacoplado de la petición del usuario. Funciona en todos los modos PHP : FPM, mod_php, FastCGI.
Programación : cron nativo PS más web-cron de respaldo
En hostings compartidos que no dan acceso al cron del sistema, el hook actionCronJob de PrestaShop se ejecuta solo cuando alguien visita la tienda — no ideal para programar un backup nocturno. dfbackup proporciona un web-cron de respaldo : una URL firmada por token (regenerable desde el BO) que un servicio externo como cron-job.org o EasyCron llama como mínimo cada hora. El módulo verifica internamente la hora objetivo configurada (por ejemplo 03:00 daily) y dispara el backup solo dentro de la ventana prevista. La deduplicación de 60 minutos evita los disparos dobles. El front controller webcron pasa por el dispatcher PrestaShop, así que funciona incluso cuando el hosting bloquea el acceso directo a los PHP bajo modules.
Registro de auditoría, alertas BO, snapshot pre-upgrade : defensa en profundidad
Tres mecanismos complementarios para evitar que un backup se pierda sin que nadie se dé cuenta. El registro de auditoría traza cada acción sensible (lanzamiento, restauración, eliminación, verificación, descarga) con empleado, IP y timestamp — útil para reconstituir incidentes. La alerta back-office muestra un banner amarillo o rojo en la cabeza de todas las páginas admin si el último backup falló o data de más de 7 días — imposible olvidar. El snapshot pre-upgrade se dispara automáticamente antes de cada actualización de módulo instalado : si la actualización rompe algo, restaura en un clic. Estos tres mecanismos son activables y desactivables independientemente en Settings.
No hay valoraciones aún.