Objetivo
Este artículo explica cómo diagnosticar y corregir un análisis Securantis bloqueado o incompleto. Aprenderá qué recursos del servidor verificar (tiempo de ejecución de PHP, memoria), cómo interviene el mecanismo de procesamiento por lotes / tareas programadas (cron o workers) según la plataforma, y cómo reanudar correctamente un análisis interrumpido sin arriesgarse a perder informes o aislar archivos sin decisión humana.
A quién va dirigido este artículo
- Administradores de sitios WordPress / WooCommerce que usan el agente Securantis.
- Administradores de tiendas PrestaShop 1.7–9 que usan el módulo Securantis.
- Proveedores de hosting y equipos técnicos que quieren entender los límites de ejecución y reanudar un análisis.
Principios generales (aplicables a todas las plataformas)
- El escáner recorre numerosos archivos y verifica integridad y firmas: es una operación costosa en tiempo y en I/O.
- Según el alojamiento, un análisis completo puede superar los límites por defecto de PHP (max_execution_time, memory_limit), del servidor web o del gestor de tareas (cron/worker).
- Cuando un análisis se interrumpe, los resultados parciales se conservan; la cuarentena, la restauración o la eliminación de archivos detectados requieren siempre una acción humana.
Requisitos previos antes de cualquier manipulación
- Copia de seguridad reciente del sitio y de los archivos (copia completa o snapshot).
- Acceso de administrador a la interfaz Securantis y al alojamiento (consola, panel o SSH según disponibilidad).
- Verificar que la licencia Securantis está activa y que el agente / módulo está actualizado.
Pasos de diagnóstico y corrección — WordPress / WooCommerce
- Verificar el historial y el estado del job en la interfaz Securantis
- Consulte los registros y el estado del último análisis (terminado, interrumpido, en espera). Anote la hora de detención y los mensajes de error eventuales.
- Confirmar el modo de ejecución
- Según su instalación, el análisis puede ejecutarse de inmediato (modo directo) o en tareas incrementales (batch/worker). Las tareas incrementales usan pequeños lotes para evitar timeouts.
- Controlar los límites de PHP
- Verifique max_execution_time y memory_limit. Para un hosting compartido, los valores pueden ser bajos (p. ej. 30 s, 128M). Si es posible y seguro, aumente temporalmente (p. ej. 300 s, 512M) para lanzar un análisis completo.
- Si no puede modificar php.ini, prefiera el modo por batches incrementales.
- Verificar cron / workers
- Si el escáner se apoya en tareas programadas, confirme que el cron del sistema o la tarea CRON de WordPress (WP-Cron) funciona y que no hay errores recurrentes.
- Para WooCommerce, evite ejecutar tareas grandes durante las horas punta para no afectar la tienda.
- Iniciar un análisis compatible con segundo plano
- Elija el modo «compatible con segundo plano» (o equivalente) en la interfaz: este modo envía el trabajo en pequeños lotes para respetar límites estrictos.
- Supervisar la carga I/O y CPU
- Durante la ejecución, supervise el uso de CPU y I/O. En caso de picos, opte por un análisis incremental o prográmelo fuera de horas punta.
Pasos de diagnóstico y corrección — PrestaShop 1.7–9
- Verificar la interfaz del módulo
- En el módulo Securantis, observe si el análisis se lanza en modo «análisis & hardening» en segundo plano, en modo rápido o en modo directo. El módulo suele mostrar mensajes de estado.
- Límites de PHP y workers
- Como en WordPress, controle max_execution_time y memory_limit. Los hostings compartidos para PrestaShop suelen imponer límites estrictos; active el modo segundo plano si está disponible.
- Tareas programadas del servidor
- PrestaShop no debe depender de WP-Cron: use el cron del sistema (o el mecanismo de tareas que recomiende el módulo) para ejecutar los lotes.
- Escanear en modo compatible con segundo plano
- Si el módulo ofrece un modo compatible con segundo plano, actívelo para evitar timeouts. Este modo fracciona el análisis y permite una reanudación automática de los lotes.
Resultado esperado tras la corrección
- El análisis se reanuda y progresa hasta 100 % o hasta que todos los lotes programados estén procesados.
- Las alertas y los informes se sincronizan con la plataforma SaaS Securantis.
- No se realiza ninguna acción automática sobre los archivos detectados: los elementos sospechosos deben validarse manualmente antes de ponerlos en cuarentena o eliminarlos.
Ajustes prudentes
- No deje un aumento de memory_limit o de max_execution_time de forma permanente sin validación de seguridad: súbalos temporalmente para el análisis y luego restablezca valores seguros.
- Limite los análisis completos a las horas de menor actividad en tiendas en producción.
- Si activa un modo en segundo plano, verifique la frecuencia de las tareas para no sobrecargar el servidor.
Errores frecuentes y su significado
- Análisis interrumpido con «timeout» o ausencia de progresión: generalmente relacionado con max_execution_time o con un worker que muere.
- Jobs en cola no procesados: tarea cron no ejecutada, WP-Cron desactivado o permisos insuficientes para ejecutar el proceso.
- Memoria insuficiente / proceso terminado: indica que memory_limit es demasiado bajo; el sistema también puede matar el proceso para proteger el servidor.
- Informe parcial sin resultados finales: el job fue interrumpido; las entradas ya analizadas son válidas pero el trabajo no está completo.
Resolución de problemas paso a paso
- Reproduzca el problema abriendo el último job y relanzando un análisis en pequeño lote (modo segundo plano). Si el problema no ocurre, continúe supervisando la progresión.
- Si el job falla rápidamente, active los logs detallados en el agente/módulo y recoja los mensajes de error.
- Verifique los logs del servidor (web y PHP) para detecciones de procesos terminados, errores de permisos o excedencias de recursos.
- Pruebe un análisis en un subconjunto de archivos (p. ej. carpeta de temas o módulos) para aislar archivos problemáticos.
- Si un lote se bloquea en un archivo de red (NFS, almacenamiento remoto), ejecute el análisis localmente o ajuste los timeouts de I/O.
Precauciones importantes
- No aisle ni elimine archivos detectados sin verificación manual: todas las operaciones de cuarentena o eliminación requieren una decisión humana.
- Nunca envíe contraseñas o credenciales por email o chat. Si se necesita acceso para una intervención de pago, se solicitará a través del espacio de cliente seguro tras el pago.
- No suponga que todos los alojamientos son compatibles: algunas plataformas muy restrictivas pueden impedir un análisis completo.
Cuándo contactar al soporte Securantis
Contacte al soporte si:
- Ha seguido los pasos y el análisis sigue bloqueado sin un mensaje claro en los logs.
- El job falla con errores del lado servidor que no puede corregir (procesos terminados, permisos del sistema, almacenamiento en red poco fiable).
- Observa detecciones importantes y necesita ayuda para analizar los archivos (el soporte puede aconsejar, pero cualquier acción de cuarentena/restauración permanecerá bajo su control).
Qué aportar al soporte (sin contraseñas)
- Capturas de pantalla del estado del análisis y de los mensajes de error.
- Extractos de los logs del módulo/agente y de los logs PHP/web (sin información sensible como contraseñas).
- Descripción del alojamiento (compartido, VPS, tipo de almacenamiento) y de los límites PHP actuales.
Conclusión
Un análisis interrumpido suele estar relacionado con límites de ejecución o con un mecanismo de tareas no operativo. Prefiera el modo incremental/compatible con segundo plano en alojamientos restringidos, aumente temporalmente los límites si puede y supervise la carga. Para cualquier bloqueo persistente, el soporte Securantis puede ayudar a analizar los logs; la decisión de poner en cuarentena o eliminar archivos siempre quedará en sus manos.