PrestaShop: Guía de seguridad básica para tu tienda online
Si tienes una tienda online con PrestaShop, la seguridad no es un lujo, es una necesidad. Cada día, cientos de tiendas son atacadas por bots, hackers o scripts automatizados que buscan vulnerabilidades. Pero no te preocupes: no necesitas ser un experto en ciberseguridad para proteger tu negocio.
En esta guía de seguridad básica para tu tienda online, voy a explicarte paso a paso cómo blindar tu PrestaShop. Hablaremos de SSL, actualizaciones, permisos, backups y configuraciones clave. Todo explicado de forma clara y sin tecnicismos innecesarios.
Vamos a ello.
[INFO] Esta guía está pensada para usuarios con conocimientos básicos de hosting. Si usas un panel como Syspanel (accesible por el puerto 2106), te resultará muy fácil seguir los pasos.
¿Por qué es importante la seguridad en PrestaShop?
PrestaShop es uno de los CMS de ecommerce más populares del mundo. Precisamente por eso, también es uno de los más atacados. Una brecha de seguridad puede significar:
- Robo de datos de clientes (nombres, direcciones, tarjetas de crédito).
- Inyección de malware que redirige a tus clientes a sitios fraudulentos.
- Pérdida total de tu tienda si no tienes copias de seguridad.
- Penalizaciones en buscadores (Google puede marcar tu web como no segura).
- Daño irreparable a la reputación de tu marca.
Por eso, aplicar una seguridad PrestaShop sólida desde el principio es la mejor inversión que puedes hacer.
1. Activa y configura correctamente SSL (HTTPS)
El primer paso, y quizás el más importante, es tener un certificado SSL activo. SSL encripta la comunicación entre el navegador del usuario y tu servidor. Sin él, cualquier dato (contraseñas, números de tarjeta) viaja en texto plano.
¿Cómo activar SSL en tu hosting?
La mayoría de los paneles de control ofrecen SSL gratuito vía Let's Encrypt.
- Accede a tu panel de hosting (por ejemplo, Syspanel en el puerto 2106).
- Busca la sección "SSL" o "Certificados SSL".
- Selecciona tu dominio y solicita un certificado Let's Encrypt (suele ser automático).
- Activa la opción "Forzar HTTPS" para que todo el tráfico vaya por HTTPS.
Configuración en PrestaShop
Una vez el certificado esté activo en el servidor, debes decírselo a PrestaShop:
- Ve a Parámetros de la tienda > Tráfico y SEO.
- En "Configuración de la tienda", asegúrate de que la URL de la tienda comience con
https://. - Activa "Forzar SSL en todas las páginas".
- Guarda los cambios.
[TIP] Después de activar SSL, revisa que no haya contenido mixto (imágenes o scripts cargados por HTTP). Puedes usar la herramienta "¿Es mi sitio seguro?" de tu navegador o plugins gratuitos.
2. Mantén PrestaShop, módulos y temas actualizados
Esta es la regla de oro. Las actualizaciones no solo traen nuevas funciones, sino que corrigen vulnerabilidades de seguridad conocidas.
¿Qué actualizar?
- El núcleo de PrestaShop: la versión principal.
- Todos los módulos instalados (activos o inactivos).
- El tema que uses.
¿Cómo hacerlo de forma segura?
- Haz siempre una copia de seguridad completa (archivos y base de datos) antes de actualizar.
- Actualiza primero en un entorno de pruebas si es posible.
- Ve a Módulos > Gestor de módulos y revisa las notificaciones de actualización.
- Actualiza uno por uno, empezando por el núcleo.
[WARNING] No actualices todo a la vez. Si algo falla, será más fácil identificar el problema. Además, algunos módulos pueden no ser compatibles con la última versión de PrestaShop.
3. Fortalece el acceso al panel de administración
El back office de PrestaShop es la puerta de entrada a toda tu tienda. Si un atacante consigue acceder, puede hacer cualquier cosa.
Medidas básicas:
- Cambia la URL de administración: Por defecto es
/admin. Cámbiala a algo único (ej:/mipanel-seguro-2024). Esto evita ataques automatizados. - Usa contraseñas fuertes: Mínimo 12 caracteres, con mayúsculas, minúsculas, números y símbolos. No uses fechas de cumpleaños ni palabras comunes.
- Activa la autenticación de dos factores (2FA): PrestaShop tiene módulos gratuitos que añaden un código extra al iniciar sesión.
- Limita los intentos de inicio de sesión: Configura un bloqueo tras 3-5 intentos fallidos.
Cómo cambiar la URL de admin en PrestaShop 1.7+:
- Ve a Parámetros avanzados > Rendimiento.
- Busca la opción "Cambiar la carpeta de administración".
- Introduce el nuevo nombre (solo letras y números).
- Guarda. Luego renombra la carpeta física en el servidor (usando FTP o el administrador de archivos de Syspanel).
4. Configura permisos de archivos y carpetas correctamente
Los permisos determinan quién puede leer, escribir o ejecutar archivos en tu servidor. Unos permisos demasiado abiertos son una invitación a los hackers.
Regla general para PrestaShop:
- Carpetas: permisos 755 (lectura y ejecución para todos, escritura solo para el propietario).
- Archivos: permisos 644 (lectura para todos, escritura solo para el propietario).
- Archivos de configuración como
config/settings.inc.php: permisos 444 (solo lectura) después de la instalación. - Carpeta
/imgy/upload: permisos 755.
¿Cómo cambiarlos?
Desde el panel de control (Syspanel en puerto 2106), usa el administrador de archivos y haz clic derecho sobre la carpeta o archivo. También puedes usar FTP con un cliente como FileZilla.
[TIP] Si tienes dudas, muchos hosts ofrecen la opción de "restablecer permisos a valores seguros" desde el panel.
5. Protege la base de datos
La base de datos contiene toda la información de tu tienda: productos, clientes, pedidos. Si alguien accede a ella, el desastre está asegurado.
Medidas clave:
- Cambia el prefijo de las tablas: Por defecto es
ps_. Cámbialo durante la instalación (ej:miTienda_). Si ya instalaste, puedes hacerlo manualmente con una herramienta como phpMyAdmin (con cuidado). - No uses el usuario "root" de MySQL para PrestaShop. Crea un usuario específico con permisos solo para esa base de datos.
- Actualiza la contraseña de la base de datos periódicamente.
- Haz copias de seguridad de la base de datos al menos una vez por semana.
6. Implementa un firewall de aplicación web (WAF)
Un WAF analiza el tráfico que llega a tu tienda y bloquea peticiones maliciosas antes de que lleguen a PrestaShop.
Opciones gratuitas y efectivas:
- Cloudflare: Su plan gratuito incluye un WAF básico, CDN y protección contra DDoS. Solo tienes que cambiar los DNS de tu dominio.
- Módulos de PrestaShop: Busca "Firewall" en el marketplace oficial. Algunos son gratuitos y muy ligeros.
- Configuración en el servidor: Si usas Nginx o Apache, puedes añadir reglas para bloquear IPs sospechosas o patrones de ataque.
[INFO] Cloudflare también te ayuda a ocultar tu IP real del servidor, lo que dificulta ataques directos.
7. Realiza copias de seguridad periódicas
Da igual lo bien que protejas tu tienda: siempre existe el riesgo de un error humano, un fallo del servidor o un ataque que no pudiste evitar. Las copias de seguridad son tu salvavidas.
¿Qué debes respaldar?
- Archivos de PrestaShop: todo el contenido de la carpeta raíz.
- Base de datos: exportación SQL completa.
¿Cada cuánto?
- Tiendas pequeñas (menos de 50 productos): semanalmente.
- Tiendas activas: a diario o cada dos días.
- Antes de cualquier actualización: siempre.
¿Cómo hacerlas?
- Desde el panel de control (Syspanel en puerto 2106): suele tener opciones de backup automático.
- Usa módulos de PrestaShop como "Backup" o "MyBackup".
- También puedes hacerlas manualmente con phpMyAdmin (base de datos) y FTP (archivos).
[WARNING] No guardes las copias de seguridad en el mismo servidor que tu tienda. Si el servidor es hackeado, las copias también se perderán. Súbelas a un servicio externo (Google Drive, Dropbox, otro hosting).
8. Elimina módulos y temas que no uses
Cada módulo o tema instalado, incluso si está desactivado, añade código que puede tener vulnerabilidades. Los atacantes pueden explotar esas puertas traseras.
Regla práctica:
- Desinstala (no solo desactives) cualquier módulo que no necesites.
- Elimina temas que no estés usando.
- Revisa periódicamente la lista de módulos en el back office.
9. Protege el archivo .htaccess (o nginx.conf)
El archivo .htaccess (en servidores Apache) o la configuración de Nginx pueden bloquear accesos no deseados, evitar hotlinking de imágenes o denegar el acceso a archivos sensibles.
Ejemplo de regla básica para .htaccess:
# Bloquear acceso a archivos de configuración
<FilesMatch "\.(tpl|sql|log|ini)$">
Order allow,deny
Deny from all
</FilesMatch>
# Bloquear acceso a la carpeta de instalación
RedirectMatch 403 ^/install/
Si no sabes cómo editarlo, muchos módulos de seguridad de PrestaShop lo hacen por ti.
10. Monitoriza tu tienda
La seguridad no es un evento único, es un proceso continuo. Debes estar atento a señales de actividad sospechosa.
Herramientas útiles:
- Google Search Console: Te avisa si detecta malware en tu web.
- Módulos de monitorización: Busca "Security Scanner" en el marketplace de PrestaShop.
- Logs del servidor: Revisa periódicamente los logs de acceso y errores desde Syspanel o tu panel de hosting.
- Alertas de cambio de archivos: Algunos módulos te notifican si algún archivo del core ha sido modificado.
Preguntas frecuentes (FAQ)
¿Es suficiente con tener SSL para estar seguro?
No. SSL es solo una capa de protección (la comunicación). Necesitas combinar SSL con actualizaciones, contraseñas fuertes, copias de seguridad y un firewall.
¿Cada cuánto debo cambiar la contraseña de administración?
Al menos cada 3 meses, y siempre que sospeches de un acceso no autorizado.
¿Puedo usar una contraseña igual para el hosting y PrestaShop?
No. Usa contraseñas diferentes para cada servicio (hosting, base de datos, FTP, back office).
¿Qué hago si mi tienda ya ha sido hackeada?
- Desconéctala temporalmente (pon un mensaje de mantenimiento).
- Restaura desde una copia de seguridad limpia.
- Cambia todas las contraseñas.
- Actualiza todo a la última versión.
- Escanea con un antivirus web (Sucuri SiteCheck es gratuito).
¿Los módulos gratuitos son menos seguros?
No necesariamente. Hay módulos gratuitos excelentes y de código abierto, pero otros pueden tener mala calidad. Descarga siempre del marketplace oficial de PrestaShop.
¿Debo ocultar la versión de PrestaShop que uso?
Sí. Los atacantes buscan vulnerabilidades específicas de cada versión. Puedes ocultarla editando el archivo themes/tu-tema/header.tpl y eliminando la línea que muestra la versión (o usando un módulo).
Conclusión
Proteger tu tienda online con PrestaShop no es complicado, pero requiere constancia. Con solo aplicar los pasos que hemos visto (SSL, actualizaciones, contraseñas fuertes, backups y firewall), reduces drásticamente el riesgo de sufrir un ataque.
Recuerda: la seguridad PrestaShop es una inversión, no un gasto. Cada minuto que dediques hoy a proteger tu tienda, te ahorrará horas de dolor de cabeza mañana.
Si tienes dudas o necesitas ayuda con la configuración, contacta con tu proveedor de hosting. Si usas Syspanel, recuerda que el acceso es por el puerto 2106 y suele incluir herramientas de seguridad integradas.
¡Protege tu negocio y duerme tranquilo!
