Plugin de WordPress — ReportedIP Hive Light
ReportedIP Hive Light protege los inicios de sesión de WordPress contra ataques de Brute Force y de «password spraying». Su enfoque es deliberadamente específico: un contador de intentos por IP, una escala de bloqueo progresiva y una consulta opcional a la comunidad. Sin elementos superfluos, sin Dashboard, sin ventas adicionales. El plugin funciona de forma inmediata en modo «Local Shield», sin necesidad de configuración.
Instalación
Instalación desde WordPress.org
En tu panel de administración de WordPress, ve a Plugins → Añadir nuevo, busca «ReportedIP Hive Light» y, a continuación, haz clic en Instalar ahora y luego en Activar. También puedes descargar el archivo ZIP desde WordPress.org/plugins/reportedip-hive/ y subirlo a través de Plugins → Añadir nuevo → Subir plugin.
Ejecuta el Setup Wizard
El asistente de cuatro pasos se inicia automáticamente al activarlo por primera vez. También puedes saltártelo por completo: Hive Light es totalmente funcional desde el primer momento en el modo Local Shield.
Mantente al día
Las actualizaciones se distribuyen a través del canal estándar de WordPress.org. Las nuevas versiones aparecen en Dashboard → Actualizaciones a las pocas horas de su lanzamiento: sin necesidad de reinstalación manual ni de herramientas de actualización de terceros.
Setup Wizard (4 pasos)
El asistente se ejecuta al activarlo por primera vez y se puede volver a iniciar desde la configuración del plugin. Cada paso se guarda al instante, por lo que puedes detenerlo y reanudarlo en cualquier momento.
| Paso | Qué configura |
|---|---|
| 1. Bienvenida | Introducción y enlace a los Docs. |
| 2. Modo de funcionamiento | Selecciona «Local Shield» (predeterminado, sin tráfico saliente) o «Community Network» con una Community Access Key gratuita de reportedIP.com. |
| 3. Protección | Umbral de intentos de Login por IP, ventana de tiempo, estrategia de bloqueo fija frente a progresiva, editor de escalera. |
| 4. Listo | Resumen y enlace de un solo clic a la página de configuración. |
Modos de funcionamiento
Dos modos, entre los que se puede cambiar en cualquier momento sin perder los datos de intentos locales.
| Característica | Local Shield (predeterminado) | Community Network |
|---|---|---|
| Contador de ataques de Brute Force por IP | Sí | Sí |
| Progressive Block Escalation | Sí | Sí |
| Whitelist manual | Sí | Sí |
| Consulta de la reputación de la IP de salida antes del Login | No | Sí |
| Informe de salidas sobre direcciones IP bloqueadas (tarea cron en cola, cada 15 minutos) | No | Sí |
| Se requiere una Community Access Key | No | Sí (gratis en reportedIP.com) |
| Los datos salen de tu servidor | Nunca | Solo la IP del atacante, el ID de categoría (número entero) y un nombre de usuario con hash SHA-256 (con sal wp_salt()) |
Lo que obtienes… y lo que no
Hive Light es intencionadamente sencillo. Todo lo que requiera un relé de pago, licencias Multisite o un proceso de venta adicional se encuentra en la Full Edition en GitHub.
| Funcionalidad | Hive Light | Hive (Full Edition) |
|---|---|---|
| Monitor de intentos de Login por Brute-Force | Sí | Sí |
| Escalera de bloqueo progresiva (5 min → 7 días) | Sí | Sí |
| Whitelist manual + desbloqueo por IP | Sí | Sí |
| Búsqueda y notificación opcionales de direcciones IP de la comunidad | Sí (clave Free) | Sí (niveles Free tier y de pago) |
| Página de bloqueo compatible con plugins de caché (WP Rocket, W3TC, Super Cache, LiteSpeed) | Sí | Sí |
| Compatibilidad con encabezados de Cloudflare y proxy inverso | Sí (Trusted Proxy Header) | Sí |
| Sensores de spam en comentarios, XML-RPC y ráfagas REST | — | Sí |
| Detector de errores 404 y escáner con rutas de Honeypots | — | Sí |
| Bloqueo de User Enumeration | — | Sí |
| Monitor de contraseñas de aplicaciones | — | Sí |
| Detección de anomalías geográficas y de ASN | — | Sí |
| Control de la seguridad de las contraseñas | — | Sí |
| Ocultar la URL de Login | — | Sí |
| Autenticación de dos factores (2FA) con cuatro métodos (TOTP / correo electrónico / SMS / WebAuthn) + Recovery Codes + Trusted Devices | — | Sí |
| Frontend 2FA en la interfaz de WooCommerce + auditoría de suscripciones y afiliaciones | — | Sí (PRO+) |
| Multisite (activación en red) | — | Sí |
| Relé gestionado de correo electrónico / SMS con paquetes de prepago | — | Sí (PRO+) |
| Precios por niveles (Free / Contributor / PRO / Business / Enterprise) | — | Sí |
| Herramientas de autenticación de dos factores (2FA) para WP-CLI | — | Sí (Business+) |
| Políticas de 2FA por rol, restricción del número de intentos de Login, informes de seguridad semanales | — | Sí |
Progressive Block Escalation
Hive Light incluye la misma escala predeterminada que la Full Edition: 5 min → 15 min → 30 min → 24 h → 48 h → 7 d. Tras 30 días sin incidentes, el contador se reinicia en el paso 1. Los administradores con «dedos torpes», las direcciones CGNAT y las salidas compartidas de redes móviles se recuperan en cuestión de minutos; los atacantes persistentes se bloquean progresivamente de forma rápida. La escala se puede editar en la pestaña «Protección», y hay disponible un modo de duración fija si prefieres un periodo de bloqueo único.
Resumen de la configuración
Todos los ajustes se encuentran en ReportedIP Hive Light → Ajustes. Los valores predeterminados más importantes:
| Ajuste | Valor por defecto | Descripción |
|---|---|---|
operation_mode | Local Shield | Local Shield o Community Network. El Local Shield no realiza ninguna solicitud saliente. |
access_key | (vacío) | Community Access Key opcional de reportedIP.com. |
login_threshold / login_timeframe_minutes | 5 / 15 | Intentos fallidos de Login por IP antes del bloqueo automático. |
block_duration_minutes | 1 440 (24 h) | Bloqueo de duración fija (se utiliza cuando la escalera está desactivada). |
block_escalation_enabled + block_ladder_minutes | Activado — 5, 15, 30, 1.440, 2.880, 10.080 | Escalera progresiva (minutos por nivel). |
block_escalation_reset_days | 30 | Días de abstinencia antes de que el IP vuelva a empezar por el paso 1. |
trusted_proxy_header | (desactivado) | Configurar CF-Connecting-IP detrás de Cloudflare o X-Forwarded-For detrás de otro proxy inverso de confianza. Actívalo únicamente cuando tu proxy reescriba de forma fiable el encabezado en cada solicitud. |
api_endpoint | https://reportedip.com/wp-json/reportedip/v2/ | Se puede filtrar mediante reportedip_hive_api_endpoint. |
api_timeout | 2 s | Las consultas fallan en modo «fail open»: el Login continúa cuando la API no responde. |
queue_retention_days | 14 | Tiempo durante el que se conservan las filas del informe de envíos fallidos antes de su eliminación. |
uninstall_drops_tables | Desactivado | Cuando está activada, la desinstalación elimina todas las wp_reportedip_hive_* tablas y opciones. |
Tablas de la base de datos
Se crean al activarse, con el prefijo wp_reportedip_hive_ (prefijo de un solo sitio; Hive Light no admite la activación en redes Multisite). Solo cuatro tablas:
attempts— contador por IP / por tipo / por nombre de usuario con hash, con marcas de tiempo de inicio y fin.blocked— bloqueos activos (manuales / automáticos / por reputación), motivo, tipo de bloqueo yblocked_until.whitelist— IP de confianza / rangos CIDR; caducidad opcional.api_queue— informes pendientes y fallidos a reportedip.com; se reintentan mediante cron cada 15 minutos.
Lo que no se almacena:
nombres de usuario sin procesar, contraseñas, cuerpos de las solicitudes, agentes de usuario, contenido de los comentarios ni identificadores de dominio. Los nombres de usuario se almacenan sha256(username + wp_salt()) únicamente.
Servicios externos y el RGPD
En el modo «Local Shield», el plugin no realiza ninguna solicitud de red saliente. En el modo «Community Network», el plugin se comunica con tres Endpoints de reportedip.com (todas las transmisiones se enumeran en WordPress.org readme.txt tal y como exigen las directrices de wp.org):
| Endpoint | Desencadenante | Datos enviados |
|---|---|---|
GET /wp-json/reportedip/v2/check?ip=… | Se produce un intento de Login wp_authenticate_user. | Solo la IP de origen del intento de Login. Encabezado X-Key con la clave de acceso. Tiempo de espera de 2 s, modo «fail-open». |
POST /wp-json/reportedip/v2/report | Se ha superado un umbral de ataques Brute Force; el informe se pone en cola y se envía mediante la tarea cron cada 15 minutos. | IP infractora, ID de categoría (entero), un breve comentario legible para humanos («5 intentos fallidos de Login en 15 minutos»). No se incluyen nombres de usuario en texto sin cifrar, ni contraseñas, ni nombre de dominio, ni cuerpo de la solicitud. |
GET /wp-json/reportedip/v2/verify-key | Un administrador hace clic en «Probar conexión» en la configuración. | Solo la clave de acceso sometida a verificación. |
Base jurídica (art. 6, apartado 1, letra f) del RGPD): seguridad de las redes y de la información — la conservación de registros, la limpieza automática y el hash por IP protegen tanto a tus usuarios como a los visitantes ajenos. El desglose completo del tratamiento de datos se encuentra en la política de privacidad de este sitio web.
Filtros y ganchos de acción
apply_filters('reportedip_hive_is_whitelisted', $is_whitelisted, $ip)— omiten la comprobación de la Whitelist (utilízalos con moderación).apply_filters('reportedip_hive_get_client_ip', $ip)— Anula la lógica de detección de IP (útil detrás de proxies inversos no estándar).apply_filters('reportedip_hive_event_category_map', $map)— Asigna los nombres de tus eventos a los identificadores de Threat Categories.apply_filters('reportedip_hive_api_endpoint', $url)— Dirige el complemento a una instalación diferente del servicio ReportedIP.do_action('reportedip_hive_log', $event, $data)— Se activa con cada evento registrado.do_action('reportedip_hive_ip_blocked', $ip, $reason)— Se activa cuando se bloquea una IP.do_action('reportedip_hive_report_queued', $ip, $category)— Se activa cuando se pone en cola un informe.
Actualización a ReportedIP Hive (Full Edition)
Hive Light está deliberadamente limitado al escenario de Login por Brute Force. Si tu sitio web necesita alguna de las siguientes funciones, cambia a la Full Edition:
- Autenticación de dos factores (2FA) con cuatro métodos: WebAuthn, TOTP, correo electrónico y SMS, además de Recovery Codes y Trusted Devices.
- Sensores más allá del Login: XML-RPC, spam en comentarios, ráfagas REST, detector de errores 404 y escáneres, bloqueo de User Enumeration, monitorización de contraseñas de aplicaciones, Geo / ASN Anomaly.
- Activación en redes Multisite (
Network: true). - Frontend 2FA (2FA) en la interfaz de usuario de WooCommerce (desafío temático integrado en el flujo de «Mi cuenta» / «Finalizar compra»).
- Relé gestionado de correo electrónico y SMS con paquetes de prepago (sin necesidad de mantener tu propia pasarela SMTP o SMS).
- Políticas de 2FA por rol, restricción del número de intentos de Login, Weekly PDF Security Report y GDPR Export Tool.
La migración es unidireccional: desactiva Hive Light, instala Hive (Full Edition) y vuelve a activarlo. Ambos plugins utilizan el mismo wp_reportedip_hive_* prefijo de tabla y una migración de esquema idempotente; la Full Edition amplía el esquema con tres tablas adicionales (logs, stats, trusted_devices) y detecta los datos existentes de Light en el primer arranque. Nunca ejecutes ambos complementos a la vez: el mismo dominio de texto, el mismo prefijo de clase y la redeclaración inmediata de funciones son fatales.
Consulta la página del producto para conocer los precios y la comparación de características.
Preguntas frecuentes
¿Cuál es la diferencia entre Hive Light y Hive (Full Edition)?
Hive Light es un protector de inicio de sesión contra ataques de Brute Force de uso específico disponible en WordPress.org, gratuito para siempre, sin ventas adicionales ni niveles de precios. Hive (Full Edition) es la suite de seguridad completa distribuida a través de GitHub: dieciséis sensores, incluido un Web Application Firewall, 2FA con cuatro métodos, compatibilidad con Multisite, integración con WooCommerce, precios por niveles y servicio gestionado de Mail Relay y SMS Relay. Dos plugins diferentes, dos canales de distribución, el mismo autor y la misma comunidad subyacentes.
¿Puedo ejecutar Hive Light y Hive (Full Edition) en el mismo sitio?
No. Ambos plugins utilizan el mismo dominio de texto (reportedip-hive) y el mismo prefijo de clase (ReportedIP_Hive). Ejecutar ambos provoca errores fatales inmediatos por redeclaración de funciones. Elige uno. Para pasar de Light a Full: desactiva Light, instala Full y vuelve a activarlo. Las tablas de la base de datos se reutilizan.
¿Necesito una cuenta en reportedip.com?
No, Local Shield funciona sin necesidad de ninguna cuenta. Solo necesitas una Community Access Key gratuita si quieres habilitar Community Network, que añade consultas de reputación en el Hive y comparte informes de ataques anonimizados. La clave está disponible en reportedip.com/register/ en cuestión de segundos.
¿Por qué el plugin de wp.org se llama «ReportedIP Hive» y no «ReportedIP Hive Light»?
El slug del plugin de WordPress.org es reportedip-hive (el nombre del paquete), pero el nombre que se muestra en el panel de administración del plugin es «ReportedIP Hive Light». El slug se mantiene estable en todas las versiones; solo cambia el nombre legible para los usuarios. La Full Edition utiliza el mismo dominio de texto, por lo que las futuras migraciones conservarán las claves de opciones y las tablas de la base de datos.
¿El plugin me impedirá acceder a mi propio sitio?
Podría hacerlo, si fallas repetidamente al realizar Logins desde tu propia IP. Para recuperarte, espera a que caduque el bloqueo, añade tu IP a la Whitelist por adelantado o elimina la fila de la wp_reportedip_hive_blocked tabla mediante phpMyAdmin o WP-CLI: wp db query "DELETE FROM wp_reportedip_hive_blocked WHERE ip_address = 'YOUR_IP'".
¿Protege Hive Light las contraseñas de las aplicaciones?
No. La versión actual protege los wp-login.php . Las contraseñas de aplicación utilizan una ruta de autenticación independiente que no se supervisa aquí. La Full Edition incluye un monitor de contraseñas de aplicación que limita application_password_failed_authentication los eventos.
¿Funciona con los formularios de Login de WooCommerce?
Sí; WooCommerce utiliza la wp_login_failed , a la que Hive Light está atento. Los intentos de inicio de sesión de WooCommerce se cuentan junto con los inicios de sesión habituales. La autenticación de dos factores (Frontend 2FA) en la interfaz de usuario de WooCommerce (desafío en la tienda) es una función de la Full Edition.
Mi sitio web está detrás de Cloudflare, ¿se detectan las direcciones IP reales?
Sí: configura el encabezado «Trusted Proxy Header» en Ajustes → Conexión en CF-Connecting-IP. Actívalo solo cuando tu proxy inverso sobrescriba de forma fiable el encabezado en cada solicitud entrante; de lo contrario, el encabezado podría ser falsificado. La misma lógica es compatible X-Forwarded-For a los proxies que no sean de Cloudflare.
¿Dónde está el código fuente?
El plugin se encuentra en el repositorio SVN oficial de WordPress.org bajo el slug reportedip-hive. Se mantiene un espejo en GitHub para el seguimiento de incidencias; el canal de distribución oficial es WordPress.org/plugins/ReportedIP Hive/.
¿Qué ocurre con mis datos si desinstalo el plugin?
Por defecto, las claves de las opciones se conservan, por lo que al reinstalar el plugin se mantendrán tus ajustes. Si activas primero la opción «uninstall_drops_tables», el gancho de desinstalación eliminará todas las wp_reportedip_hive_* tablas y elimina todas las reportedip_hive_* opciones. Los Reports que ya se encuentren en la base de datos de la comunidad se conservan; no permiten identificarte personalmente en tu sitio web.
Última actualización: · Gestionado por el equipo de reportedIP