Web Application Firewall. Web Application Firewall bloquea IP abusivas, rangos CIDR, países enteros y bots maliciosos, frena a los clientes demasiado insistentes, protege el acceso al back office contra la fuerza bruta y detiene los patrones de ataque más habituales (SQLi / XSS / LFI / sondeos). Una lista blanca de confianza, con protección contra el autobloqueo, te mantiene a salvo, y cada petición bloqueada queda registrada. Sin programar, sin tocar la plantilla.
Web Application Firewall bloquea IP abusivas, rangos CIDR, países enteros y bots maliciosos, frena a los clientes demasiado insistentes, protege el acceso al back office contra la fuerza bruta y detiene los patrones de ataque más habituales (SQLi / XSS / LFI / sondeos). Una lista blanca de confianza, con protección contra el autobloqueo, te mantiene a salvo, y cada petición bloqueada queda registrada. Sin programar, sin tocar la plantilla.
1. Instalación
- En el back office ve a Módulos → Gestor de módulos → Subir un módulo y selecciona el ZIP del módulo.
- Cuando termine la instalación, pulsa Configurar para abrir el asistente.
.local, .test, localhost) se admiten siempre. Cuando sale una versión nueva, el propio módulo te avisa.Si en lugar de la confirmación lees «Upload failed», PrestaShop puede haber desactivado el módulo sin decírtelo: los ajustes y los datos se quedan donde están. Cómo actualizar un módulo, y qué hacer si dice «Upload failed».
2. Configuración: paso a paso
El módulo está organizado en pestañas: Reglas y lista blanca, Registro de bloqueos, Protección del acceso y Ajustes. Las secciones siguientes recorren la pestaña Ajustes, donde cada protección tiene su propio interruptor.
General interruptor principal
El interruptor de encendido y apagado de todo el firewall, y cómo se lee la IP del visitante.
- Activar el firewall: interruptor principal. Apagado, no se filtra nada en el front office.
- Detrás de un proxy / CDN: actívalo solo si tu tienda está de verdad detrás de un proxy o un CDN de confianza. Si no, las cabeceras de proxy se pueden falsificar y un atacante podría inventarse su IP o su país.
- Cabecera de proxy de confianza: qué cabecera trae la IP real del visitante, Auto (Cloudflare → X-Real-IP → X-Forwarded-For), CF-Connecting-IP, X-Real-IP o X-Forwarded-For.

Bloqueo por IP / CIDR
Bloquea direcciones IP sueltas o rangos CIDR completos.
- Activar la lista negra de IP / CIDR: pone en marcha el bloqueo por IP y por rango.
- Las entradas de la lista negra y de la lista blanca se gestionan en la pestaña Reglas y lista blanca. Una IP o un rango en la lista blanca se salta todos los demás controles.

Bloqueo por país
Permite o rechaza visitantes según su país (códigos ISO de dos letras).
- Activar el bloqueo por país: pone en marcha el filtro geográfico.
- Modo: Lista de bloqueo (bloquear los países de la lista) o Lista de permitidos (permitir solo los países de la lista).
- Códigos de país: códigos ISO de dos letras separados por comas, por ejemplo
RU, CN, KP. - Ruta de la base GeoIP: ruta opcional a tu propio archivo MaxMind GeoLite2
.mmdb. El módulo no incluye ninguna base GeoIP (por restricciones de licencia): pon la tuya, o apóyate en la cabecera de país de un CDN (CF-IPCountry, por ejemplo) activando «detrás de un proxy / CDN».

Bots maliciosos / user-agents
Bloquea rastreadores, escáneres y clientes sospechosos por su User-Agent.
- Activar el bloqueo por user-agent: pone en marcha el filtro de User-Agent.
- Bloquear los user-agents vacíos: rechaza las peticiones que no envían ningún User-Agent.
- Fragmentos de user-agent bloqueados adicionales: un fragmento por línea; se suman a una lista interna sensata de rastreadores y escáneres conocidos.

Límite de peticiones
Frena a los clientes que envían demasiadas peticiones en poco tiempo.
- Activar el límite de peticiones: pone en marcha el limitador.
- Peticiones máximas por ventana: cuántas peticiones puede enviar una IP antes de que se la frene.
- Ventana (segundos): la ventana de tiempo móvil en la que se cuentan las peticiones.
- Duración del bloqueo temporal (segundos): cuánto tiempo queda bloqueada la IP infractora.

Bloqueo de patrones de ataque
Detecta y bloquea las firmas de ataque más habituales en las peticiones.
- Activar el bloqueo de patrones de ataque: bloquea intentos de SQLi, XSS, LFI y sondeos.
- Añade tus propios patrones, o pon en la lista blanca las URL legítimas que de otro modo darían un falso positivo, en la pestaña Reglas y lista blanca.

Protección del acceso al back office
Defiende el acceso de administrador frente a los intentos de fuerza bruta.
- Activar la protección del acceso: sigue los intentos fallidos de entrar en el back office por IP y por usuario.
- Intentos fallidos permitidos, Ventana de intentos (segundos) y Duración del bloqueo (segundos): tras demasiados fallos dentro de la ventana, el origen queda bloqueado temporalmente.
- Permitir el back office solo desde las IP de la lista blanca: reserva el acceso de administrador a las IP de la lista blanca. Comprueba antes que tu IP actual está incluida (la página muestra tu IP y te avisa si no lo está).

Mantenimiento y registro
El modo cierre y el registro de peticiones bloqueadas.
- Modo cierre: solo las IP de la lista blanca llegan a la tienda (cierre de emergencia). Pon antes tu IP en la lista blanca.
- Registrar las peticiones bloqueadas: guarda cada petición bloqueada (se consulta y se exporta en la pestaña Registro de bloqueos).
- Conservación del registro (días): cuánto tiempo se guardan las líneas del registro.
- Borrar todos los datos al desinstalar: si está activo, quitar el módulo borra también sus reglas y sus registros.

3. Comprobar que funciona
- En la pestaña Reglas y lista blanca, el aviso muestra tu IP actual y si está en la lista blanca: añádela antes de activar el modo cierre o el back office reservado a la lista blanca.
- Añade un fragmento de user-agent de prueba y pide luego una página con ese User-Agent: la petición debe quedar bloqueada y aparecer en el Registro de bloqueos.
- Abre la pestaña Registro de bloqueos: las peticiones bloqueadas aparecen con su IP, su país, el motivo y la URI; puedes filtrar, exportar a CSV o vaciar el registro.
- La pestaña Protección del acceso lista los intentos fallidos de entrar en el back office y permite levantar un bloqueo con un solo clic.
4. Preguntas frecuentes
¿Puedo bloquearme a mí mismo?
La pestaña Reglas muestra siempre tu IP actual y te avisa si no está en la lista blanca. Añádela antes de activar el modo cierre o el back office reservado a la lista blanca y no correrás ningún riesgo.
¿El bloqueo por país necesita un servicio externo?
No. Lee la cabecera de país de un CDN cuando estás detrás de un proxy o un CDN, o tu propia base MaxMind GeoLite2. El módulo no incluye datos GeoIP y no sale ninguna llamada de tu servidor.
¿Ralentiza la tienda?
No. Los controles son ligeros y se ejecutan pronto dentro de la petición; los visitantes legítimos no notan nada.
¿Tengo que tocar la plantilla?
No. El firewall funciona con los hooks estándar y es compatible con cualquier plantilla.
