Security Revolution: configuración y ayuda
Inicio rápido
- Sube e instala el ZIP de Security Revolution en Módulos > "Module Manager".
- Abre Security Revolution > Configuración > Configuración y revisa Módulo activo y los ajustes de Filtro antispam.
- Añade tu dirección administrativa en IPs en lista blanca y usa una sesión separada sin incluir en la lista blanca para las pruebas.
- Revisa Límites de velocidad por acción y pon Protección de capacidad en Solo supervisión mientras evalúas las decisiones de carga.
- Envía un registro y un mensaje de contacto controlados e inspecciona Protección > Bloqueado para conocer el resultado real.
- Crea una referencia limpia en Protección > Monitor de archivos e inspecciona un análisis.
- Configura el ejecutor cron con token y verifica los resultados de sus tareas; configura y prueba las copias privadas por separado si las necesitas.
Requiere PrestaShop 1.6.1 o posterior y PHP 7.1 o posterior.
Manual de configuración
Instalar y revisar la primera configuración
Sube e instala el ZIP de Security Revolution en Módulos > "Module Manager". Haz clic en "Configure". El menú es Security Revolution, con Panel de control, Conjunto de tiendas, Monitoreo, Protección, Copia de seguridad y Configuración.
Selecciona la tienda prevista. Abre Configuración > Configuración, revisa los valores predeterminados siguientes y guarda. Añade tu IP administrativa de confianza a IPs en lista blanca antes de realizar pruebas deliberadas de bloqueo. Usa otro navegador/IP no incluido en la lista blanca para esas pruebas. Mantén disponible el acceso al servidor antes de cambiar la protección de inicio de sesión.
Las protecciones de seguridad tienen ámbitos separados. Los controles de formularios/acciones, la protección de capacidad, las cabeceras de seguridad, la autenticación administrativa y una política del servidor de origen aplicada por un operador no se controlan mediante un único interruptor universal.
Configurar los controles de registro, contacto y comentarios
En Configuración > Configuración, usa las pestañas Configuración, Filtro antispam, Contacto y comentarios y Defensa antibots.
| Ajuste | Valor predeterminado | Efecto |
|---|---|---|
| Módulo activo | Activado | Activa las rutas principales de filtrado/seguimiento del módulo. La CSP gestionada y una política del servidor de origen aplicada por separado tienen su propio ciclo de vida. |
| Dominios de correo bloqueados | Diez dominios | Un dominio por línea, comprobado durante el registro. |
| "Block Non-Latin Characters" | Activado | Comprueba los nombres frente a los sistemas de escritura bloqueados seleccionados. Cámbialo antes de aceptar clientes cuyos nombres los utilicen. |
| "Blocked Character Scripts" | Cirílico, chino, japonés, coreano, árabe, hebreo, tailandés, devanagari | Sistemas de escritura rechazados por el control de nombres. |
| "Block Gibberish Names" | Activado | Comprueba si los nombres parecen contenido aleatorio. Revisa los falsos positivos en los intentos bloqueados. |
| "Enable Honeypot Fields" | Activado | Añade el campo oculto de registro y rechaza los valores rellenados. La protección de contacto también comprueba este campo enviado si está presente. |
| "Enable Contact Form Protection" | Activado | Ejecuta controles de spam de contacto mediante la integración de formularios compatible. |
| "Contact Form Spam Keywords" | Lista de frases incorporada | Una frase por línea. Los valores predeterminados incluyen guest post, link building, backlink, SEO services, digital marketing, cryptocurrency y online casino. Quita las frases que sean temas legítimos para tu tienda. |
| "Block Links in Contact Form" | Activado | Rechaza los mensajes que superan "Max Links Allowed". |
| "Max Links Allowed" | 3 |
Límite de enlaces del mensaje de contacto. |
| "Enable Comment Protection" | Activado | Comprueba los envíos de comentarios de productos compatibles. |
| "Enable Bot Fight Mode" | Desactivado | Activa la ruta opcional de desafío JavaScript, sujeta al modo de aplicación en ejecución y a las exenciones de direcciones verificadas. |
| "Challenge Suspicious User-Agents" | Activado | Comprueba señales sospechosas de automatización cuando Bot Fight está activado. No verifica la identidad del rastreador. |
La lista inicial de dominios es:
qq.com
163.com
126.com
sina.com
sina.cn
sohu.com
21cn.com
tom.com
139.com
yeah.net
Los controles de registro incluyen bloqueos, límites de frecuencia, dominios, sistemas de escritura, patrones de nombres y honeypot. Los controles de contacto incluyen bloqueos, el honeypot enviado, límites, frases, nombres y enlaces. Los controles de comentarios incluyen bloqueos, límites, nombres, contenido spam y más de dos enlaces. Un módulo de formularios/comentarios de terceros debe invocar la ruta de integración de PrestaShop correspondiente.
El nombre del honeypot de registro se genera a partir del nombre del módulo. No añadas un CAPTCHA visible ni fijes en el tema un nombre antiguo de honeypot como parte de la configuración normal.
Definir el comportamiento de bloqueo y las IP de confianza
Abre Comportamiento de bloqueo.
| Ajuste | Valor predeterminado | Efecto |
|---|---|---|
| "Block Site Access" | Desactivado | Respuesta a nivel del sitio ante amenazas detectadas. |
| "Block Registration" | Activado | Aplica el bloqueo de registros. |
| "Block Contact Form" | Activado | Aplica el bloqueo de contacto. |
| "Block Email Sending" | Activado | Aplica la ruta de bloqueo de correo del módulo. Es independiente de activar la monitorización del correo saliente. |
En Gestión de IP, IPs en lista blanca está vacío inicialmente. Introduce IP de confianza, una por línea, por ejemplo:
203.0.113.10
198.51.100.25
La lista blanca global omite los controles de solicitudes/acciones del módulo y la admisión de capacidad en PHP. No elimina cabeceras de seguridad ni reescribe una política externa del servidor de origen.
También hay excepciones de lista blanca específicas para carrito, registro, contacto y comentarios. Omiten los límites de frecuencia correspondientes, sin conceder la misma exención amplia que la lista global. Gestiona las acciones de IP desde las herramientas de sesiones/IP donde estén disponibles; no son cuatro campos separados del formulario actual de Configuración.
Los bloqueos pueden ser globales o específicos de una acción, incluidos carrito, inicio de sesión, registro, contacto y comentarios. Comprueba el ámbito antes de quitar un bloqueo o añadir una excepción global.
Definir límites de frecuencia por acción y globales
Usa Configuración > Límites de velocidad por acción. Activar limitación de velocidad está activado por defecto.
| Ajuste | Valor predeterminado por IP |
|---|---|
| "New Cart Hourly Limit" | 20 |
| "New Cart Daily Limit" | 100 |
| "Registration Hourly Limit" | 3 |
| "Registration Daily Limit" | 5 |
| "Contact Hourly Limit" | 5 |
| "Contact Daily Limit" | 15 |
| "Comment Hourly Limit" | 5 |
| "Comment Daily Limit" | 20 |
Aumenta el límite de una acción solo después de comprobar los intentos bloqueados correspondientes y si varios usuarios reales comparten una dirección.
En Límites globales, "Enable Global Rate Limiting" está activado por defecto, "Requests Per Minute" tiene el valor 60 y "Requests Per Hour" usa 1200.
"Trusted reverse-proxy CIDRs" está vacío inicialmente. Añade un rango de proxy o equilibrador de carga solo cuando PHP vea ese proxy como REMOTE_ADDR. Los rangos de Cloudflare y loopback ya son de confianza. Las cabeceras reenviadas de IP de cliente solo se aceptan de pares de confianza. Una configuración de proxy incorrecta puede hacer que muchos clientes parezcan tener la misma dirección.
La clave interna firewall_runtime_mode tiene el valor predeterminado monitor. El módulo registra las intervenciones propuestas de firewall, bloqueos, límite global y Bot Fight en modo monitor; enforce las aplica y off desactiva esa capa de ejecución. Esta clave no se expone como el antiguo interruptor visible de Configuración. Usa la configuración del soporte/operador para cambiar deliberadamente el modo de ejecución. Los controles de envío específicos por acción siguen activos en modo monitor y pueden rechazar envíos de formularios.
Configurar la capacidad y la gestión de rastreadores
Abre Configuración > Capacidad.
| Ajuste | Valor predeterminado | Efecto |
|---|---|---|
| Protección de capacidad | Activado / enforce |
Limita los renderizados simultáneos. Solo supervisión solo registra decisiones; Desactivada desactiva esta protección en PHP. |
| Páginas generadas a la vez | 0 |
Capacidad automática basada en CPU, limitada entre 2 y 32. Un valor explícito define la capacidad de páginas públicas; la capacidad de pago/cuenta y la de segundo plano tienen sus propias cuotas reservadas. |
Las páginas servidas desde la caché no consumen una plaza de renderizado. Cuando un carril está lleno, la protección en PHP devuelve HTTP 503 con Retry-After, X-MPR-Capacity: busy y un ticket de reintento. Las solicitudes normales de página reciben una pequeña página de reintento. Los envíos de formularios piden al visitante que vuelva a enviarlos; el cuerpo no se repite automáticamente.
Abre Monitoreo > Rastreadores para inspeccionar el tráfico identificado por nombre. Los nombres de rastreadores del agente de usuario son etiquetas de informes. El módulo no permite autorizar o bloquear una familia de rastreadores solo por ese nombre.
La identidad de los rastreadores de búsqueda e IA se verifica por dirección mediante rangos publicados por el operador o DNS inverso comprobado. Las direcciones verificadas están exentas de limitaciones por dirección y desafíos. Declarar un agente de usuario Googlebot no basta. Los rastreadores verificados siguen generando carga de servidor gestionada por los controles de capacidad.
El módulo no ofrece el antiguo presupuesto de rastreo configurable por rastreador ni el depósito de tokens ponderado por facetas en Redis. Actualmente no hay configuración de "Bucket Capacity", "Single Filter Cost" ni de la antigua respuesta X-MPR-Facet-Limiter. Usa los controles de capacidad reales y la integración de listados compatible.
Revisar sesiones y puntuaciones de comportamiento
Abre Monitoreo > Sesiones y su panel de ajustes. Actividad y Tráfico proporcionan informes relacionados de solicitudes y acciones.
| Ajuste | Valor predeterminado | Efecto |
|---|---|---|
| "Enable Session Tracking" | Activado | Registra las sesiones de visitantes. |
| "Session Timeout (minutes)" | 60 |
Tiempo de espera por inactividad. |
| "Admin / Internal IPs" | Vacío | Excluye las IP internas indicadas del seguimiento, las estadísticas de visitantes y las notificaciones relacionadas. No es la lista blanca de protección. |
| "Real Session Retention (hours)" | 2160 |
Conservación de sesiones humanas, 90 días. |
| "Bot Session Retention (hours)" | 24 |
Conservación de sesiones de bots. |
| "Cart Action Retention (hours)" | 720 |
Conservación de acciones del carrito, 30 días. |
| "Enable Cart Action Tracking" | Activado | Registra acciones de añadir, quitar y actualizar. |
| "Enable Behavior Analysis" | Activado | Puntúa patrones de navegación compatibles. La aplicación en ejecución sigue dependiendo de su modo. |
| "Max Pages Per Session" | 200 |
Umbral de páginas por sesión. |
| "Max Pages Per Minute" | 30 |
Umbral de navegación rápida. |
| "Max Sessions Per IP (24h)" | 50 |
Umbral de sesiones por IP. |
| "Max Pages Per IP (24h)" | 500 |
Umbral de páginas por IP. |
| "Warning Score Threshold" | 50 |
Puntuación de advertencia. |
| "Block Score Threshold" | 80 |
Umbral propuesto de bloqueo. |
| "Exempt Verified Crawlers" | Activado | Omite los controles de comportamiento de direcciones verificadas de rastreadores. |
Usa los ajustes de "Scoring Points" solo después de inspeccionar los desgloses reales de puntuación.
| Ajuste | Puntos predeterminados |
|---|---|
| "High Pages - Base Points" | 20 |
| "High Pages - Per 50 Extra" | 5 |
| "High Pages - Max Points" | 60 |
| "Rapid Crawl - Base Points" | 25 |
| "Rapid Crawl - Per 10 Over" | 5 |
| "Rapid Crawl - Max Points" | 60 |
| "Many Sessions - Base Points" | 10 |
| "Many Sessions - Per 10 Over" | 5 |
| "High IP Pages - Base Points" | 15 |
| "High IP Pages - Per 100 Over" | 5 |
Otros valores internos predeterminados: contadores de páginas activados, historial detallado de páginas desactivado, 10 puntos para un visitante aún no reconocido como humano, análisis tras 5 páginas vistas y conservación de registros de solicitudes durante 24 horas. La depuración general y la de registro están desactivadas por defecto. No todos estos valores tienen su propio campo en el formulario actual; para cambios temporales de registro, contacta con el soporte.
Configurar las cabeceras de seguridad
Abre Protección > Encabezados. Revisa el análisis actual antes de aplicar un preajuste, ya que los preajustes cambian varios valores.
| Campo | Valor predeterminado | Configuración |
|---|---|---|
| X-Frame-Options | SAMEORIGIN |
Comprueba cualquier necesidad legítima de mostrar páginas en marcos antes de cambiarlo. |
| X-XSS-Protection | Desactivado | Cabecera de navegador heredada. |
| X-Content-Type-Options (nosniff) | Activado | Envía protección frente a la detección del tipo MIME. |
| Referrer-Policy | strict-origin-when-cross-origin |
Política de información del referente. |
| HSTS (Strict-Transport-Security) | Desactivado | Se envía para HTTPS cuando está activado. |
| HSTS Max-Age (segundos) | 31536000 |
Duración de HSTS. |
| HSTS Incluir subdominios | Desactivado | Amplía HSTS a los subdominios. |
| Precarga HSTS | Desactivado | Añade la directiva preload. |
| Activar CSP | Desactivado | Activa la Content Security Policy guardada. |
| Modo Report-Only (recomendado para pruebas) | Activado | Informa de las infracciones antes de aplicar CSP. |
Edita los controles de políticas y fuentes CSP para los dominios que carga realmente tu tienda. La base incluye self y fuentes comunes de PrestaShop, Google y multimedia, pero tus servicios de pago, analítica o integrados pueden necesitar más. Prueba el pago, las fuentes, los medios y los widgets e inspecciona después las infracciones antes de aplicar la política.
Los valores de Permissions-Policy y de las políticas entre orígenes están vacíos por defecto. No todos están disponibles como controles etiquetados en Encabezados.
La gestión de cabeceras de seguridad está activada por defecto. La CSP gestionada también puede reconciliarse en .htaccess. Desactivar Módulo activo no elimina por sí solo esa CSP gestionada por separado. Desactivar o desinstalar el módulo elimina su bloque CSP gestionado de .htaccess y puede fallar si no se completa la limpieza.
Configurar la monitorización del correo saliente
Abre Protección > Correo electrónico y su área de configuración.
| Campo | Valor predeterminado | Efecto |
|---|---|---|
| Activar seguridad de correo | Desactivado | Activa el registro y los controles de correo saliente. |
| Activar limitación de velocidad | Desactivado | Activa límites de frecuencia para correos no transaccionales. |
| Máx. correos por destinatario (por hora) | 10 |
Límite horario por destinatario. |
| Máx. correos por destinatario (diario) | 30 |
Límite diario por destinatario. |
| Máx. correos por IP (por hora) | 20 |
Límite horario por IP. |
| Máx. correos de restablecimiento (por hora) | 3 |
Límite de restablecimientos de contraseña. |
| Bloquear correos desechables | Desactivado | Comprueba dominios conocidos de destinatarios de correo desechable. |
| Alertas de picos de volumen | Desactivado | Alerta sobre volúmenes horarios de envío inusuales. |
| Umbral de alerta de volumen | 2.0 |
Multiplicador sobre la media. |
| Alertas de envío masivo | Desactivado | Alerta sobre muchos destinatarios únicos desde una IP en poco tiempo. |
| Umbral de envío masivo | 50 |
Umbral de destinatarios únicos en la ventana de detección de cinco minutos. |
Guarda e inspecciona después el estado, tipo y datos de destinatario registrados. Las confirmaciones de pedidos, estados de pedido, facturas, abonos y mensajes de creación de cuenta están excluidos del limitador de frecuencia del correo. Esa exención no significa que se eviten todos los fallos de entrega ajenos a ella.
Ejecutar controles de archivos y vulnerabilidades
Abre Protección > Monitor de archivos. Crea una referencia solo después de una instalación que sepas que está limpia o de una actualización de confianza. Ejecuta un análisis y revisa los archivos modificados, ausentes, nuevos o sospechosos. Recrea la referencia solo después de verificar los cambios legítimos.
El analizador supervisa classes, controllers, src, override, config y modules para archivos PHP, Smarty, JavaScript y .htaccess. Excluye caché, registros, subidas, imágenes, descargas, bibliotecas de proveedores y node_modules. Una referencia no es un análisis forense completo de todos los archivos.
Abre Protección > Vulnerabilidades para ejecutar las comprobaciones disponibles de versiones y ajustes del servidor.
Configurar copias privadas y programaciones
Abre Copia de seguridad > Configuración antes de crear un archivo.
| Campo | Valor predeterminado | Configuración |
|---|---|---|
| Directorio privado de copias de seguridad | Vacío, ubicación automática validada junto a la tienda | Usa una ruta absoluta fuera de todas las raíces web servidas. Tanto PHP como cron deben poder escribir en ella. |
| Directorio privado efectivo | Calculado | Confirma que la ruta resuelta mostrada está disponible. |
| "Enable backups" | Desactivado | Activa las operaciones de copia de seguridad. |
| Retención (días) | 30 |
Conservación por antigüedad. |
| Retención (cantidad) | 10 |
Conservación por número de archivos. |
| "Notification email" | Vacío | Dirección para avisos de copias de seguridad. |
| "Notify on success" | Desactivado | Avisos de copias completadas correctamente. |
| "Notify on failure" | Desactivado | Avisos de fallos. |
| Almacenamiento predeterminado | local |
Almacenamiento predeterminado. |
Si MPR_SECURITY_BACKUP_DIR está definido en el arranque de la tienda, sustituye al directorio editable. Guarda los cambios de directorio antes de trasladar archivos existentes. El proceso de traslado verifica los archivos antes de eliminar los originales.
Usa Copia de seguridad > Copias de seguridad para una copia manual e inspecciona el resultado completado. Usa Almacenamiento para configurar el almacenamiento local. Las copias de seguridad usan almacenamiento local; los destinos FTP, SFTP, S3 y WebDAV no están disponibles. Conserva una copia independiente fuera del servidor mediante tus procedimientos de alojamiento/operaciones.
Abre Copia de seguridad > Programaciones y añade una programación con nombre.
| Campo | Valor predeterminado | Configuración |
|---|---|---|
| Nombre de la programación | Vacío | Identificador obligatorio. |
| Tipo de copia | full |
Selecciona el tipo disponible. |
| Alcance de la copia | full |
Selecciona el ámbito disponible. |
| Frecuencia | daily |
Intervalo. |
| Hora de ejecución | 03:00:00 |
Hora de programación de tienda/servidor. |
| Día de ejecución | 0 como respaldo semanal, 1 como respaldo mensual |
Los días mensuales deben estar entre 1 y 31. |
| Almacenamiento | local |
Destino de almacenamiento. |
| Retención (cantidad) | 7 |
Conservación del número de archivos de la programación. |
| Retención (días) | 30 |
Conservación por antigüedad de la programación. |
| Correo de notificación | Vacío | Destinatario de avisos de la programación. |
| Activo | Activado | Activa esta programación. |
En las nuevas programaciones, las notificaciones de éxito están desactivadas por defecto y las de fallo están activadas. Comprueba los controles de notificación disponibles en el formulario de programación instalado. Una programación activa guardada sigue necesitando el ejecutor descrito a continuación.
Configurar cron y comprobar su resultado
Usa Configuración > Tareas programadas para las tareas compartidas y Copia de seguridad > Sistema cron para la configuración/estado del ejecutor de copias. Copia el token real del módulo.
* * * * * php /var/www/html/modules/mprsecurityrevolution/cron.php --token=YOUR_TOKEN --max-tasks=20 --max-seconds=55 --context=cron
Cambia las rutas según tu alojamiento. También se admite la ejecución HTTP:
curl 'https://yourshop.example/modules/mprsecurityrevolution/cron.php?token=YOUR_TOKEN'
Los valores CLI predeterminados son 20 tareas, 55 segundos y contexto cron. Los contextos admitidos son cron, front y admin. El ejecutor por minuto despacha las tareas activas pendientes; cada tarea conserva su propia programación. Estas incluyen copias programadas, limpieza de seguridad/límites de frecuencia/solicitudes/sesiones, trabajo GeoIP, clasificación de visitantes, informes con búfer y mantenimiento de direcciones de rastreadores.
Comprueba la salida del ejecutor y el estado de las tareas. Para las copias, comprueba también que haya un archivo terminado en el directorio privado, porque una copia puede fallar después de que el planificador la inicie.
Configurar la seguridad del acceso administrativo
Abre Configuración > Seguridad de administración. Comprueba el acceso de recuperación antes de activar la aplicación de la autenticación.
| Campo | Valor predeterminado | Efecto |
|---|---|---|
| Protección del inicio de sesión | Desactivado | Activa la limitación de intentos fallidos de inicio de sesión. |
| Modo de bloqueo | "Soft" | "Soft" usa un bloqueo temporal; los bloqueos permanentes necesitan recuperación administrativa. |
| Intentos / intervalo / bloqueo | 5 / 15 / 30 |
Intentos, minutos de observación y minutos del bloqueo temporal. |
| Verificar la 2FA de los empleados que la hayan activado | Activado | Exige desafíos a los empleados inscritos. |
| Exigir 2FA a todos los empleados | Desactivado | Exige la inscripción de todos los empleados. |
| Permitir el acceso en caso de errores de 2FA | Activado | Permite el comportamiento de recuperación configurado ante los fallos 2FA compatibles. Una política ilegible todavía puede rechazar el acceso. |
| Vincular la sesión a la IP | Desactivado | Comprueba la coherencia de la IP de la sesión administrativa. |
| Base para verificación 2FA reforzada | Desactivado | Activa la autenticación adicional para las operaciones administrativas compatibles. |
| Validez de la verificación reforzada en minutos | 15 |
Intervalo de autenticación reforzada. |
| Registro de auditoría | Desactivado | Registra la actividad de auditoría de seguridad administrativa. |
| Días de conservación | Auditoría 90, inicio de sesión 30 |
Conservación de los dos tipos de registros administrativos. |
| IP/CIDR de confianza para administración | Vacío | Lista administrativa de confianza, independiente de la lista blanca de la tienda. |
Registra tu propio autenticador, verifica un desafío y conserva los códigos de respaldo antes de exigir que todos los empleados se inscriban. Revisa Monitoreo > Registros de seguridad de administración.
Para un operador con acceso al servidor, la utilidad de recuperación instalada admite:
php modules/mprsecurityrevolution/bin/admin-security-escape.php --clear-lockouts
php modules/mprsecurityrevolution/bin/admin-security-escape.php --disable-enforcement
--all combina ambas opciones. Usa la utilidad instalada e inspecciona su resultado; la recuperación cambia la aplicación de la autenticación y debe ir seguida de una reconfiguración.
Revisar la política independiente de protección del servidor de origen
El formulario adicional Protección del origen guarda una política de servidor deseada. No la despliega. Admite una tienda con URL en la raíz, un mismo host HTTP/HTTPS compartido y este módulo como responsable activo del firewall. Esta política de origen no admite multitienda, URL fuera de la raíz ni varias URL activas de tienda.
Ningún umbral de política se activa automáticamente. Elige Modo de protección del origen y Modo de tasa compartida del pool como Observar o Imponer. Rellena Total de workers de 3 a 64, igual a la suma de los trabajadores de todos los grupos.
Configura los tres grupos: Pool público, Pool interactivo de proceso de compra, cuenta y pago y Pool de administración, descargas y operaciones largas. Cada uno tiene:
| Campo | Rango obligatorio |
|---|---|
| Workers (1 a 64) | De 1 a 64 |
| Solicitudes simultáneas en todo el pool (de 1 al número de workers del pool) | Hasta el número de trabajadores del grupo |
| Solicitudes simultáneas por IP (de 1 a la concurrencia del pool) | Hasta la concurrencia del grupo |
| Solicitudes por segundo por IP (1 a 100) | De 1 a 100 |
| Ráfaga por IP (1 a 100 solicitudes) | De 1 a 100 |
| Solicitudes compartidas por minuto (1 a 6000) | De 1 a 6000 |
| Ráfaga compartida (1 a 100 solicitudes) | De 1 a 100 |
| Plazo máximo de solicitud (2 a 600 segundos; requiere revisión de la topología por parte del operador) | De 2 a 600 segundos |
Un operador debe aplicar por separado la política y cualquier despliegue de trabajadores/plazos. Un comprobante de aplicación coincidente registra la última aplicación, no el estado continuo del servicio. Exporta o importa la política deseada completa con:
php modules/mprsecurityrevolution/bin/origin-protection.php export
php modules/mprsecurityrevolution/bin/origin-protection.php import < complete-policy.json
Ninguno de los comandos despliega el servidor. Los límites compartidos de frecuencia del grupo cubren todas sus direcciones y URL sin exenciones por cookies o agente de usuario.
Verificar y resolver problemas
Prueba primero un envío controlado de registro y contacto. Inspecciona Protección > Bloqueado para conocer tipo, motivo, IP, correo disponible, datos y fecha/hora. Los motivos pueden incluir límites de frecuencia, dominios bloqueados, honeypot, nombres no latinos, nombres sin sentido, IP bloqueadas, palabras clave de spam y exceso de enlaces.
Prueba la capacidad en Solo supervisión antes de ajustar límites en una tienda con mucho tráfico. Distingue la respuesta 503 en PHP de los errores de límite por IP o de formularios. Comprueba la configuración de IP reenviada si muchos visitantes comparten una misma IP aparente. Comprueba los datos de direcciones verificadas antes de considerar fiable la etiqueta de un rastreador.
Si faltan datos, revisa el seguimiento de sesiones, las exclusiones de IP internas, la conservación y los resultados de cron. Si se bloquea a clientes reales, inspecciona la regla exacta y su ámbito antes de añadir excepciones. Para problemas de cabeceras, inspecciona las cabeceras de respuesta, las infracciones CSP y el estado de .htaccess gestionado. Para fallos de copias, comprueba la ruta privada efectiva, los permisos tanto de PHP como de CLI, el espacio disponible y el error de la tarea.
Usa Configuración > Integridad para comprobar la instalación. Mantén PrestaShop y los módulos actualizados y conserva copias probadas fuera de la tienda; los análisis y los archivos locales del módulo no sustituyen esas operaciones.
Desinstalar
Exporta los registros y copia las copias de seguridad que necesites antes de desinstalar. Revisa por separado cualquier política del servidor de origen desplegada por un operador, porque guardar o quitar el módulo no equivale a cambiar la topología del servidor.
Desactiva/desinstala mediante "Module Manager" solo después de comprobar la limpieza de la CSP gestionada. La desinstalación elimina las tablas propias del módulo y las tareas programadas; el paquete compartido gestiona la limpieza compartida de sesiones/páginas vistas. No supongas que sobrevivan los registros y la configuración del módulo. Conserva los archivos privados de copia de seguridad de forma independiente antes de quitar los archivos del módulo.
Compatibilidad
Requiere PrestaShop 1.6.1 o posterior y PHP 7.1 o posterior.
Preguntas
Aún no hay preguntas sobre este módulo
Pregunta lo que quieras sobre instalación, compatibilidad o configuración. Las respuestas aparecen aquí.
Problemas conocidos
25
La restauración de copias falla si se eliminaron las carpetas de destino
Los textos para visitantes bloqueados contienen traducciones dañadas
La referencia de integridad de archivos indica éxito con trabajo incompleto
Los mensajes de contacto corregidos siguen bloqueados
El estado de mantenimiento indica éxito pese a fallos de limpieza
No se informa claramente de los datos locales de países ausentes
Las sesiones y filtros del panel fallan
Las solicitudes de visitantes ejecutan mantenimiento de seguridad
Una programación puede eliminar las copias de otra
El almacenamiento de copias no disponible impide guardar ajustes
Las sesiones de visitantes fallan en PHP 7.1
Una integración de filtros antigua causa un error
Fallan las pantallas de administración de actividad y copias
Las copias programadas no se ejecutan manualmente
Las pestañas de notificaciones desaparecen
Las acciones en segundo plano fallan en PrestaShop 9
Las pantallas de seguridad de administradores no se abren
El modo de supervisión cambia las respuestas a visitantes
Refuerzo de la seguridad
Los filtros de administración devuelven resultados incorrectos
La lista de notificaciones muestra visitas automatizadas no deseadas
Faltan en las sesiones los visitantes de páginas en caché
El recuento de páginas de visitantes está inflado
La lista blanca de IP bloquea las IP del proxy de Cloudflare en lugar de las IP reales de los visitantes
Cuando la tienda está detrás de Cloudflare, el firewall ve las direcciones IP de Cloudflare en lugar de las IP reales de los visitantes. Todo el tráfico legítimo queda bloqueado.
Nota de resolución
Se añadió la detección de rangos de IP de Cloudflare y el análisis de la cabecera CF-Connecting-IP.
El registro de actividad de administradores crece sin límite — la tabla de la base de datos supera los 500MB
El registro de actividad de administradores no tiene mecanismo de rotación ni de limpieza. En tiendas activas con varios administradores, la tabla de registros supera los 500MB en un año.
Nota de resolución
Se implementó una limpieza diaria automática de registros mediante el sistema cron compartido. Los registros de más de 90 días se purgan automáticamente a las 04:00. Tareas de limpieza adicionales se ejecutan cada hora para los límites de peticiones y los registros de solicitudes, y diariamente para los intentos bloqueados y las sesiones. No requiere intervención manual — funciona automáticamente en tiendas con cron activado.
Solicitudes de funcionalidades
18
Implementado
Autenticación de dos factores TOTP para el panel de administración
Autenticación de dos factores TOTP para empleados del panel
Modo de supervisión del cortafuegos
Análisis de sesiones de visitantes
Exclusiones de notificaciones de sesión
Conservación separada de sesiones
Actualizaciones desde el back office
Administración multilingüe
Cortafuegos en ejecución y cabeceras de seguridad
Centro de seguridad centralizado
Protección del acceso de administradores
Gestión de Content Security Policy
Protección de la capacidad de la tienda
Informes de capacidad de rastreadores verificados
Ajustes de almacenamiento privado de copias de seguridad
Gestión de la base local de países
Presupuestos de solicitudes de rastreadores
Límites de solicitudes en páginas filtradas
Registro de cambios
v3.8.72026-05-27
- AddedTiered session retention — 90d humans, 24h bots, configurable
- Addedcomplete FR/DE/ES/IT/PL translations
- FixedPreserve dashboard notification tabs
- FixedMigrate module state to MPR config
- FixedHarden security notifications and crawler policy
- FixedHarden public security front endpoints
Versiones anteriores
v3.4.02026-04-20
- AddedConfigurable excluded IPs for session notifications
- AddedPass country code to visitor labels for country-prefixed IDs
- AddedUnique visitor IDs — pass IP to primaryLabel for #XX suffix
- AddedAdd visitor nicknames and behavior tags to session tracking
- AddedLicense management tab with key management and renewal options
- Addedself-healing integrity checks for automatic diagnostics and repair
- Addedcomplete FR/DE/ES/IT/PL translations
- ImprovedSessions controller extends shared BaseSessionsController
- ImprovedUse behavior-based labels instead of random nicknames
- Improvedadmin list columns with visual badge indicators and multiselect filters
- Improvedsettings form organization with tabbed layout
- ImprovedSEO handling with proper canonical URLs and meta tags on all front pages
- FixedHeadless browser detection via WebGL renderer in JS verification beacon
- FixedNotification panel time-ago and switch to date_last_activity
- FixedVerifyJS creates session when none exists (CF cache visitors)
- Fixedvarious stability and compatibility improvements (8 fixes total)
- Fixedadmin list filters — sorting, searching, and filtering now work correctly on all columns
v3.3.12026-01-05
- AddedPS 9 / Hummingbird theme compatibility
- Fixedfalse-positive file-integrity alert on PS 9 Symfony cache manifest files
- Improvedaudit-log export — CSV now includes IP, user-agent, and session ID columns
v3.3.02025-12-08
- AddedTOTP-based 2FA for all admin employees with per-user enrolment QR codes
- Addedsecurity-headers auto-configuration (CSP, HSTS, X-Frame-Options, Referrer-Policy)
- Improvedmalware scanner — pattern database updated to 2025-Q4 signature set
v3.2.02025-09-22
- Addedscheduled malware scan with email alert on detection
- Addedbrute-force lockout with exponential back-off and admin override
- Improvedaudit log — now captures admin controller access and bulk-action events
v3.1.02025-07-01
- Addedfile-integrity monitoring with configurable exclusion list
- AddedIP reputation check against public abuse-IP database
- Improvedbrute-force protection: distributed tracking via Redis for multi-server shops
v3.0.12025-04-17
- Fixedlogin-attempt counter not resetting after successful authentication
- Fixedaudit log table not created on fresh installs of some PS 1.7.7.x builds
v3.0.02025-02-05
- Major release: complete security suite for PrestaShop
- File integrity monitoring, brute-force protection, 2FA, malware scanning
- Comprehensive audit log for all admin actions
- Security-headers manager and HTTP response hardening
- Compatible with PS 1.7.x and PS 8.x
Demo
Prueba el módulo completo antes de comprar
Compra la licencia más tarde y conserva tus ajustes.
- Tu demo de 30 días Pruébalo en tu propia tienda durante 30 días desde la primera instalación.
- Tienda demo lista Explora una tienda demo lista en tu navegador.
- Sin registro Sin cuenta, correo ni dominio de tienda.
Al descargar, aceptas las condiciones de la demo y la política de privacidad.
Al abrir esta demo, acepta los términos de la demo y la política de privacidad.