Todo lo que querrías saber antes de instalar.
Una mirada detallada a cómo funciona Plugin Copia de Seguridad Shopware 6 — DfBackup SW: BD + Archivos, Cifrado AES-256, S3/FTP/Dropbox, Restauración 1-Clic, por qué lo construimos así y la lógica detrás de las características anteriores.
Una copia de seguridad Shopware de verdad, no un script improvisado
La mayoría de las soluciones de copia para Shopware se limitan a llamar a mysqldump y empaquetar la carpeta, lo que plantea tres problemas en producción: mysqldump no está disponible en muchos hostings compartidos, shell_exec suele estar desactivado, y los archivos sin cifrar que quedan en el disco son una bomba de relojería en caso de compromiso. DfBackup SW resuelve los tres puntos: volcado de BD en PHP puro vía DBAL, archivado vía ZipArchive, y cifrado AES-256 autenticado opcional con passphrase de usuario. Todo funciona sin configuración sysadmin especial, tanto en hosting compartido como en VPS.
Un volcado que entiende el esquema Shopware
Un volcado SQL ingenuo se rompe en Shopware: las claves primarias son UUID en BINARY 16 que deben emitirse como literales hexadecimales, algunas columnas son generadas (STORED o VIRTUAL) y no deben aparecer nunca en los INSERT, y las vistas deben recrearse después de las tablas. DfBackup SW gestiona todo esto de forma nativa: inspección SHOW FULL COLUMNS por tabla, exclusión de columnas generadas, codificación hex de columnas binarias, paginación keyset sobre claves primarias enteras para tablas grandes (order, log_entry), y volcado de vistas al final. El fichero producido se reimporta limpiamente, instrucción por instrucción, con FOREIGN_KEY_CHECKS desactivado durante la importación.
Cifrado AES-256 con HMAC: encrypt-then-MAC bien hecho
El patrón encrypt-then-MAC es el estándar recomendado para esquemas simétricos: primero se cifra, luego se calcula un HMAC sobre el ciphertext. En la lectura, el HMAC se verifica antes de descifrar — protección contra ataques bit-flip y padding oracle. La passphrase de usuario pasa por PBKDF2-SHA256 con 120000 iteraciones para derivar claves de cifrado y HMAC separadas. El cifrado se realiza en streaming por bloques de 1 MiB con encadenamiento CBC manual: un archivo de 5 GB se cifra con la misma huella de memoria que uno de 50 MB. El formato binario (cabecera magic, sal, IV, HMAC, ciphertext) está documentado y es auditable.
S3 SigV4 nativo: multipart, MinIO, R2, OVH, Scaleway, Wasabi, B2
En lugar de incluir el SDK oficial de AWS, DfBackup SW implementa directamente AWS Signature V4 en cURL. Cero dependencias Composer adicionales, firma canónica compatible con todos los servicios que hablan S3. Puedes apuntar el plugin a Amazon S3, MinIO en tu propio VPS, Cloudflare R2 (10 GB gratis, coste de salida cero — ideal para copias), OVH Object Storage, Scaleway, Wasabi o Backblaze B2 — cambiando solo el endpoint y la región. Por encima de 100 MB, la subida pasa automáticamente a multipart con partes de 10 MB, lo que permite transferir varios gigabytes sin agotar la memoria.
Replicación push: un staging nocturno sin trabajo de sysadmin
Es la función que distingue a DfBackup SW: enviar cada copia hacia una segunda instalación Shopware. Instalas el plugin en producción y en staging, compartes un secreto común, activas Replicación como destino. En cada copia — manual o planificada — el archivo se sube en chunks de 8 MB firmados HMAC-SHA-256 hacia endpoints dedicados en el destino, con anti-replay por marca de tiempo y tolerancia de 5 minutos. Si el auto-restore está activado en el destino, la copia se aplica automáticamente — tu staging refleja la producción del día anterior a la mañana siguiente. Combinado con la migración de dominio, el clon es inmediatamente navegable en su propio dominio. Se acabaron rsync y los scripts cron de sysadmin.
Restauración 1-clic con red de seguridad
Una restauración es la operación más arriesgada del ciclo de vida de una tienda: se sobrescribe la BD viva, se reemplazan los archivos, y si algo sale mal, la vuelta atrás es compleja. DfBackup SW añade una red de seguridad automática: antes de cada restauración, se crea silenciosamente un snapshot protegido de la BD. Si la restauración falla a medio camino, restauras ese snapshot y vuelves al estado inicial en minutos. Las tablas del plugin nunca se sobrescriben durante una restauración — tu historial de copias se preserva incluso al restaurar una versión de hace seis meses. La confirmación explícita (escribir RESTORE) evita las falsas maniobras.
Messenger, ScheduledTask y web-cron: el segundo plano a la manera Shopware
DfBackup SW se apoya en la infraestructura nativa de Shopware: las copias se despachan como mensajes asíncronos Symfony Messenger y las ejecuta el worker, sin bloquear ni el admin ni el storefront. Una ScheduledTask nativa comprueba cada 10 minutos si debe lanzarse una copia planificada (daily, weekly o monthly, hora objetivo, ventana de 30 minutos, deduplicación de 60 minutos). Para hostings sin cron de sistema ni worker permanente, un web-cron por URL firmada con token toma el relevo: llama a la URL cada 10 a 15 minutos desde cron-job.org o tu monitorización, la puerta de planificación interna hace el resto. El módulo de administración muestra el progreso en vivo con 15 hitos consultados.
Auditoría, alertas y notificaciones: defensa en profundidad
Tres mecanismos complementarios para que ninguna copia se pierda sin que nadie se entere. El registro de auditoría traza cada acción sensible (ejecución, restauración, eliminación, verificación, descarga) con usuario admin, IP y marca de tiempo. La alerta en el módulo señala si la última copia exitosa tiene más de N días. Las notificaciones salen por email (Symfony Mailer, éxito o fallo a elección) y por webhook con autodetección del formato: Slack, Discord, Microsoft Teams o JSON genérico para tus integraciones a medida.
No hay valoraciones aún.