Cómo hacer una copia de seguridad de PrestaShop y restaurarla en caso de ataque
¿Por qué es vital tener una copia de seguridad de tu PrestaShop?
Imagina que un día llegas a tu oficina y la puerta está forzada. Entras y ves que han robado el ordenador, la caja registradora y todos los documentos importantes. Eso es exactamente lo que siente un administrador de una tienda online cuando su web es atacada y pierde los datos de clientes, pedidos y productos. La diferencia es que, en el mundo digital, podemos prevenir este desastre con un buen backup PrestaShop.
Tener una copia de seguridad de tu tienda no es un lujo, es una necesidad. No solo te protege de ataques informáticos, sino también de errores humanos, fallos de actualización o problemas con el servidor. Si no tienes una copia reciente, un ataque puede significar el cierre definitivo de tu negocio. Pero no te preocupes, en esta guía te voy a enseñar, paso a paso, cómo hacer un backup PrestaShop y, lo más importante, cómo restaurar copia cuando todo parece perdido.
¿Qué necesitas antes de empezar?
Antes de ponernos manos a la obra, es fundamental que entiendas qué compone tu tienda online. Una web con PrestaShop no es un solo archivo, sino un conjunto de elementos que trabajan juntos:
- Los archivos del núcleo de PrestaShop: El código PHP, las plantillas, los módulos y las imágenes.
- La base de datos: Donde se guardan todos los productos, clientes, pedidos y configuraciones.
Para hacer una copia de seguridad completa, debemos capturar ambos elementos. Además, necesitarás acceso a dos lugares:
- El panel de control de tu hosting (cPanel, Plesk o Syspanel). Aquí es donde gestionas los archivos y las bases de datos.
- El panel de administración de PrestaShop. Para configuraciones específicas y la opción de mantenimiento.
[INFO] Si tu hosting usa Syspanel (antes conocido como HestiaCP), recuerda que el acceso se realiza a través del puerto 2106. Por ejemplo: https://tu-dominio.com:2106. No lo olvides, es un detalle clave para no perder tiempo buscando el panel.
Paso 1: Cómo hacer una copia de seguridad de la base de datos
La base de datos es el corazón de tu tienda. Perderla sería como perder la memoria de tu negocio. Vamos a aprender a hacer un backup PrestaShop de la base de datos de forma manual, que es el método más fiable y no depende de plugins.
Usando phpMyAdmin (el método clásico)
Este es el método más universal y funciona en casi todos los paneles de control.
- Accede a tu panel de control: Entra en cPanel, Plesk o Syspanel (puerto 2106).
- Busca la herramienta phpMyAdmin: Normalmente está en la sección "Bases de Datos". Haz clic en el icono de phpMyAdmin.
- Selecciona tu base de datos: En el panel izquierdo verás una lista de bases de datos. Haz clic en la que corresponde a tu PrestaShop (suele tener un prefijo como
presta_ops_). - Ve a la pestaña "Exportar": En la parte superior de la pantalla, verás varias pestañas. Haz clic en "Exportar".
- Elige el método de exportación: Te aparecerán dos opciones: "Rápido" y "Personalizado". Para una copia completa, te recomiendo "Rápido" si tu base de datos no es demasiado grande. Si es muy grande (más de 100 MB), usa "Personalizado" y selecciona la opción de comprimir con gzip.
- Inicia la descarga: Haz clic en el botón "Continuar" o "Exportar". El archivo
.sql(o.sql.gz) se descargará a tu ordenador. ¡Guárdalo en un lugar seguro!
Usando la línea de comandos (SSH) [Para usuarios avanzados]
Si tu hosting te da acceso SSH, este método es mucho más rápido y fiable, especialmente para bases de datos grandes.
- Conéctate a tu servidor por SSH.
- Ejecuta el siguiente comando:
mysqldump -u USUARIO -p NOMBRE_BASE_DATOS > backup_base_datos.sql - Te pedirá la contraseña del usuario de la base de datos. Escríbela y pulsa Enter.
- El archivo
backup_base_datos.sqlse creará en el directorio donde estés. Luego puedes descargarlo con un cliente FTP.
Paso 2: Cómo hacer una copia de seguridad de los archivos de tu tienda
Ahora que tenemos la base de datos a salvo, vamos a por los archivos. Aquí es donde están las imágenes de tus productos, los temas y los módulos.
Método con el administrador de archivos del hosting
Esta es la forma más visual y sencilla para principiantes.
- Accede al administrador de archivos: En tu panel de control (cPanel, Plesk o Syspanel), busca la opción "Administrador de archivos" o "File Manager".
- Navega a la raíz de tu web: Normalmente es una carpeta llamada
public_html,wwwohtdocs. Dentro de ella estarán todos los archivos de tu PrestaShop. - Selecciona todo: En la parte superior, haz clic en "Seleccionar todo" o usa
Ctrl+A. - Comprime en un archivo ZIP: Busca el botón "Comprimir" o "Compress" y elige la opción "Zip Archive". Se creará un archivo con todos tus archivos.
- Descarga el archivo ZIP: Haz clic derecho sobre el archivo comprimido y selecciona "Descargar". Este proceso puede tardar si tu tienda tiene muchas imágenes.
Método con FTP y FileZilla
Si prefieres una descarga más controlada, puedes usar un cliente FTP como FileZilla.
- Conecta FileZilla a tu servidor con tus credenciales FTP.
- En el panel remoto (derecha), navega hasta la carpeta raíz de tu web.
- Selecciona todos los archivos y carpetas con
Ctrl+A. - Haz clic derecho y elige "Descargar". FileZilla comenzará a descargar todos los archivos a tu ordenador.
[TIP] Guarda siempre la copia de la base de datos y los archivos en dos lugares diferentes. Por ejemplo, en tu ordenador y en un disco duro externo o en la nube (Google Drive, Dropbox). Así, si un disco falla, tendrás otra copia.
Paso 3: Planifica copias de seguridad automáticas
Hacer copias manuales está bien, pero es fácil olvidarse. La solución es automatizar el proceso. Muchos paneles de control ofrecen esta función.
Copias de seguridad en cPanel
- Busca la sección "Archivos" y haz clic en "Copias de seguridad".
- Puedes descargar una copia completa de tu sitio o de partes específicas (base de datos, archivos).
- Para automatizar, busca en tu hosting la opción de "Trabajos Cron" o "Cron Jobs". Puedes crear un script que ejecute el backup semanalmente.
Copias de seguridad en Syspanel
En Syspanel, el proceso es muy intuitivo.
- Accede a tu panel Syspanel en el puerto 2106.
- Busca la sección de tu web y haz clic en "Copias de seguridad".
- Podrás crear una copia de seguridad completa (archivos y base de datos) con un solo clic.
- Syspanel te permite programar copias automáticas diarias o semanales. Esta es una de las mejores funciones para la seguridad PrestaShop.
Paso 4: Restaurar tu PrestaShop desde una copia de seguridad
Llegó el momento crítico: has sido atacado o tu web falla y necesitas restaurar copia. No te asustes, sigue estos pasos con calma.
Preparación: Modo de mantenimiento
- Accede a tu panel de administración de PrestaShop.
- Ve a "Parámetros avanzados" > "Mantenimiento".
- Activa el modo de mantenimiento (pon el interruptor en "Sí"). Esto evitará que los clientes vean errores mientras restauras.
Restaurar los archivos
- Sube el archivo ZIP con los archivos de tu copia de seguridad a la carpeta raíz de tu web (usando FTP o el administrador de archivos).
- Descomprime el archivo ZIP. Sobrescribirá los archivos actuales con los de la copia.
- Si usas FTP, asegúrate de que FileZilla te pregunte si quieres sobrescribir los archivos. Responde "Sí" o "Sobrescribir siempre".
[WARNING] Si tu web fue hackeada, es muy importante que elimines todos los archivos de la carpeta raíz antes de subir la copia. Si solo sobrescribes, podrías dejar archivos maliciosos que reactiven el ataque.
Restaurar la base de datos
Este es el paso más delicado. Vamos a usar phpMyAdmin.
- Accede a phpMyAdmin desde tu panel de control.
- Selecciona tu base de datos en el panel izquierdo.
- Borra todas las tablas: En la parte inferior, haz clic en "Marcar todas" y luego en el menú desplegable "Con seleccionados" elige "Eliminar". Confirma la acción. Esto vaciará la base de datos.
- Ve a la pestaña "Importar".
- Haz clic en "Elegir archivo" y selecciona el archivo
.sqlo.sql.gzque descargaste antes. - Haz clic en "Continuar". Espera a que termine el proceso. Si es una base grande, puede tardar unos minutos.
Comprobación final
- Desactiva el modo de mantenimiento en tu PrestaShop.
- Visita tu web y comprueba que todo funciona correctamente: productos, carrito, imágenes, etc.
- Revisa la configuración y asegúrate de que tu tienda esté actualizada.
¿Y si no tengo una copia de seguridad? Medidas de emergencia
Si no tienes una copia, la cosa se complica, pero no es el fin del mundo. A veces, los servidores de hosting tienen copias de seguridad propias.
- Contacta con tu proveedor de hosting inmediatamente. Ellos pueden tener una copia de seguridad de tu web en sus servidores. Pregunta si pueden restaurarla por ti.
- Revisa si tu hosting tiene copias automáticas. Muchos paneles como cPanel o Syspanel guardan copias de seguridad diarias o semanales. Busca en la sección "Copias de seguridad" o "Backups" si hay alguna versión anterior de tu web.
- Usa la caché de Google. Puedes usar la versión en caché de Google para recuperar el contenido de tus páginas más importantes, aunque no te devolverá los datos de los clientes.
Preguntas frecuentes (FAQ) sobre backup y seguridad
¿Con qué frecuencia debo hacer una copia de seguridad?
Depende de la actividad de tu tienda. Si haces muchas ventas al día, lo ideal es una copia diaria. Si es una tienda más pequeña, con una copia semanal puede ser suficiente. Syspanel te permite programar esto fácilmente.
¿Puedo restaurar una copia de seguridad en un servidor diferente?
Sí, es posible. Deberás subir los archivos a un nuevo servidor y crear una base de datos nueva. Luego, importa el archivo .sql en esa nueva base de datos. Recuerda que tendrás que cambiar la configuración en el archivo parameters.php de PrestaShop para que apunte a la nueva base de datos.
¿Qué es mejor, un plugin de backup o el método manual?
Los plugins (como PrestaShop Backup) son cómodos, pero a veces pueden fallar o no capturar todos los archivos. El método manual, aunque requiere más trabajo, es más fiable y te da un control total. Te recomiendo que combines ambos: usa un plugin para copias frecuentes y haz una copia manual completa una vez al mes.
¿Cómo sé si mi web ha sido atacada?
Algunas señales son: tu web se vuelve muy lenta, aparecen enlaces sospechosos, los clientes reportan redirecciones a otras páginas o Google te avisa de que tu sitio no es seguro. Si notas algo raro, revisa tus logs de acceso y cambia todas tus contraseñas.
Conclusión: La prevención es tu mejor aliada
Hacer un backup PrestaShop y saber cómo restaurar copia es como tener un seguro de vida para tu negocio online. No esperes a que ocurra una desgracia para aprender a hacerlo. Dedica un tiempo ahora a configurar un sistema de copias automáticas, ya sea con las herramientas de tu hosting como Syspanel o con métodos manuales.
La seguridad PrestaShop no se limita solo a las copias de seguridad. Recuerda mantener siempre tu tienda actualizada, usar contraseñas fuertes y cambiar las contraseñas de administrador con regularidad. Una buena estrategia de copia seguridad tienda te dará la tranquilidad de saber que, pase lo que pase, podrás recuperar web y seguir vendiendo. No lo dejes para mañana, tu tienda te lo agradecerá.
