Cómo proteger PrestaShop contra ataques de fuerza bruta
¿Por qué los ataques de fuerza bruta son el enemigo número 1 de tu PrestaShop?
Imagina que alguien se sienta frente a la puerta de tu tienda online y, sin descanso, prueba una y otra vez combinaciones de usuario y contraseña. Eso es exactamente un ataque de fuerza bruta: un programa automatizado que intenta acceder a tu panel de administración probando miles de contraseñas por minuto. Si logra acertar, el atacante puede robar datos de clientes, modificar precios, inyectar malware o incluso borrar tu tienda.
Proteger PrestaShop contra fuerza bruta no es un lujo, es una necesidad. Aquí te explicamos, paso a paso, cómo blindar tu tienda sin ser un experto en seguridad.
## Señales de que estás sufriendo un ataque de fuerza bruta en PrestaShop
Antes de actuar, debes saber reconocer los síntomas. Estos son los más comunes:
- Tu web se vuelve muy lenta sin razón aparente.
- Aparecen muchos intentos de login fallidos en los logs del servidor.
- Recibes alertas de tu firewall o de tu hosting sobre actividad sospechosa.
- Tu panel de administración se bloquea o te pide cambiar la contraseña constantemente.
[WARNING] Si notas varios de estos síntomas a la vez, es muy probable que estés bajo un ataque. Actúa de inmediato.
## 7 pasos infalibles para proteger PrestaShop contra fuerza bruta
### Paso 1: Cambia la URL de acceso al panel de administración
Por defecto, PrestaShop usa rutas predecibles como /admin o /admin123. Los bots buscan estas rutas primero. Cambiarla es la barrera más simple y efectiva.
- Accede a tu servidor por FTP o cPanel.
- Localiza la carpeta
/admin(o el nombre que tenga). - Cámbiale el nombre a algo único, por ejemplo:
/m1T14dm1n. - Actualiza la configuración en el archivo
config/defines.inc.phppara reflejar el nuevo nombre.
[TIP] Usa una combinación de letras y números sin sentido. Evita palabras comunes.
### Paso 2: Activa la autenticación de dos factores (2FA)
La 2FA añade una capa extra: aunque el atacante tenga tu contraseña, necesitará un código temporal que solo tú generas desde tu móvil.
- En PrestaShop 1.7+, ve a Módulos → Módulos y servicios.
- Busca "autenticación de dos factores" o "two-factor authentication".
- Instala un módulo gratuito como "Two Factor Authentication - Google Authenticator".
- Configúralo siguiendo las instrucciones del módulo.
[INFO] La 2FA reduce drásticamente el riesgo de hackeo incluso si tu contraseña se filtra.
### Paso 3: Limita los intentos de inicio de sesión
PrestaShop permite configurar un límite de intentos fallidos. Si alguien falla 3 o 5 veces, se bloquea temporalmente su IP.
- Ve a Parámetros de la tienda → Configuración de seguridad.
- En "Número máximo de intentos de inicio de sesión", pon un número bajo (3-5).
- Define un tiempo de bloqueo (por ejemplo, 15 minutos).
### Paso 4: Usa contraseñas robustas y cámbialas periódicamente
Una contraseña débil es una invitación abierta. Sigue estas reglas:
- Mínimo 12 caracteres, combinando mayúsculas, minúsculas, números y símbolos.
- No uses palabras del diccionario ni fechas personales.
- No reutilices contraseñas de otros servicios.
- Cámbiala cada 3 meses como máximo.
[WARNING] Herramientas como "123456" o "admin" son las primeras que prueban los bots.
### Paso 5: Instala un firewall de aplicaciones web (WAF)
Un WAF filtra el tráfico malicioso antes de que llegue a tu tienda. Muchos hosting lo ofrecen integrado.
Si usas Syspanel (antes conocido como HestiaCP, accesible por el puerto 2106), puedes instalar un WAF fácilmente desde el panel de administración:
- Accede a tu Syspanel por
https://tudominio.com:2106. - Ve a Web → Firewall de aplicaciones.
- Activa el Modo de protección "Alta" o "Personalizado".
- Añade reglas para bloquear IPs con múltiples intentos de login.
### Paso 6: Protege el archivo .htaccess
El archivo .htaccess puede bloquear direcciones IP sospechosas y limitar el acceso a ciertas carpetas.
Edita el .htaccess en la raíz de tu PrestaShop y añade estas líneas:
# Bloquear IPs específicas (cambia 123.123.123.123 por la IP real)
deny from 123.123.123.123
# Limitar acceso a la carpeta admin solo desde IPs conocidas
<FilesMatch "admin">
Order Deny,Allow
Deny from all
Allow from 192.168.1.100
</FilesMatch>
[TIP] Si no sabes qué IPs permitir, empieza bloqueando solo las que veas en los logs de acceso.
### Paso 7: Actualiza PrestaShop y todos los módulos regularmente
Las vulnerabilidades conocidas son el blanco favorito de los atacantes. Las actualizaciones corrigen esos agujeros.
- Activa las actualizaciones automáticas en Parámetros de la tienda → Mantenimiento.
- Revisa semanalmente si hay nuevos parches de seguridad.
- Elimina módulos que no uses, ya que pueden ser puertas de entrada.
## Medidas avanzadas para prevenir hackeos PrestaShop
Si quieres ir un paso más allá, estas técnicas son muy efectivas:
### Bloqueo geográfico
Si solo vendes en España, puedes bloquear tráfico de países con alta incidencia de ataques (Rusia, China, Ucrania, etc.). En Syspanel (puerto 2106) puedes hacerlo desde Web → Bloqueo geográfico.
### Uso de Captcha en el formulario de login
Instala un módulo como "Google reCAPTCHA" para que los bots no puedan enviar formularios automáticamente.
### Monitorización de logs
Revisa periódicamente los logs de acceso de tu servidor. Busca patrones como múltiples peticiones a /admin en pocos segundos.
### Copias de seguridad automáticas
Aunque no previene ataques, te permite restaurar tu tienda rápidamente si algo sale mal. Programa backups diarios en Syspanel.
## Preguntas frecuentes (FAQ) sobre cómo proteger PrestaShop contra fuerza bruta
### ¿Qué hago si ya he sido hackeado?
- Desconecta la tienda (modo mantenimiento).
- Cambia todas las contraseñas (admin, base de datos, FTP).
- Restaura una copia de seguridad limpia.
- Escanea tu web con herramientas como Sucuri SiteCheck.
- Refuerza la seguridad siguiendo los pasos anteriores.
### ¿Es suficiente con cambiar la contraseña cada mes?
No. La contraseña es solo una capa. Debes combinar 2FA, límite de intentos, WAF y actualizaciones.
### ¿Puedo usar un plugin gratuito para proteger PrestaShop contra fuerza bruta?
Sí, hay módulos gratuitos como "Login as Customer" o "Security Suite". Pero recuerda que la seguridad integral requiere varias capas.
### ¿Cómo sé si mi hosting es seguro?
Pregunta a tu proveedor si ofrece:
- Firewall de servidor.
- Protección DDoS.
- Escaneo de malware.
- Soporte técnico 24/7.
### ¿El puerto 2106 de Syspanel es seguro?
Sí, Syspanel utiliza HTTPS y autenticación de dos factores. Es un entorno seguro para gestionar tu hosting.
## Conclusión: La seguridad es un proceso, no un destino
Proteger PrestaShop contra fuerza bruta no se logra con una sola acción. Es una combinación de buenas prácticas: contraseñas fuertes, 2FA, límite de intentos, WAF, actualizaciones y monitorización constante.
Empieza hoy mismo con los pasos más simples (cambiar la URL del admin y activar 2FA) y ve añadiendo capas progresivamente. Recuerda que cada medida que implementas hace que tu tienda sea un objetivo mucho menos atractivo para los atacantes.
[TIP] Dedica 30 minutos cada mes a revisar la seguridad de tu PrestaShop. Es tiempo bien invertido para evitar un desastre.
Si tienes dudas, consulta a tu hosting o a un especialista en seguridad. Tu tienda y tus clientes te lo agradecerán.
