Skip to main contentSkip to footer

WordPress Plugin — ReportedIP Hive Light

Two editions exist — make sure you are reading the right one. This page documents ReportedIP Hive Light — the lightweight WordPress.org-distributed edition: brute-force login protection plus an optional community IP-reputation lookup. No 2FA, no tiers, no managed mail / SMS relay. Need the full plugin with twelve attack sensors, four-method 2FA, multisite and WooCommerce integration? Read the Hive (Full Edition) docs instead. The two plugins share the same text domain — install only one of them per site.

ReportedIP Hive Light protects WordPress logins against brute-force and password-spray attacks. It is intentionally focused: a per-IP attempt counter, a progressive block ladder, and an optional community lookup. No bloat, no dashboards, no upsell. The plugin works out of the box in Local Shield mode — no configuration required.

Current version: 1.3.4. Requirements: WordPress 6.0+ (tested up to 6.9), PHP 8.1+. License: GPL-2.0-or-later. Free, no account required for Local Shield. Optional free Community Access Key unlocks the Community Network mode.
Source code & distribution: wordpress.org/plugins/reportedip-hive/. The plugin is delivered through the official WordPress.org plugin directory; updates appear in Dashboard → Updates like any other wp.org plugin — no GitHub-only update checker, no upsell.

Installation

1

Install from WordPress.org

In your WordPress admin, go to Plugins → Add New, search for "ReportedIP Hive Light", then click Install Now followed by Activate. Alternatively download the ZIP from wordpress.org/plugins/reportedip-hive/ and upload it via Plugins → Add New → Upload Plugin.

2

Run the Setup Wizard

The four-step wizard launches automatically on first activation. You can also skip it entirely — Hive Light is fully functional out of the box in Local Shield mode.

3

Stay Updated

Updates ship through the standard WordPress.org channel. New versions appear in Dashboard → Updates within hours of release — no manual reinstall, no third-party update checker.

Setup Wizard (4 steps)

The wizard runs on first activation and can be re-launched from the plugin settings. Every step persists immediately, so you can stop and resume at any point.

StepWhat it configures
1. WelcomeIntro and link to the docs.
2. Operation ModePick Local Shield (default, zero outbound traffic) or Community Network with a free Community Access Key from reportedip.de.
3. ProtectionPer-IP login-attempt threshold, time window, fixed vs. progressive block strategy, ladder editor.
4. DoneSummary and a one-click link to the settings page.

Operating Modes

Two modes, switchable at any time without losing the local attempts data.

Feature Local Shield (default) Community Network
Per-IP brute-force counterYesYes
Progressive block escalationYesYes
Manual whitelistYesYes
Outbound IP-reputation lookup before loginNoYes
Outbound report on blocked IPs (queued cron, every 15 min)NoYes
Community Access Key requiredNoYes (free at reportedip.de)
Data leaves your serverNeverOnly the attacker IP, integer category ID and a SHA-256-hashed username (salted with wp_salt())

What you get — and what you don't

Hive Light is intentionally lean. Anything that would require a paid relay, multisite licensing or an upsell flow lives in the Full Edition on GitHub.

CapabilityHive LightHive (Full Edition)
Brute-force login monitorYesYes
Progressive block ladder (5 min → 7 days)YesYes
Manual whitelist + per-IP unblockYesYes
Optional community IP lookup & reportingYes (free key)Yes (free + paid tiers)
Cache-plugin-aware block page (WP Rocket, W3TC, Super Cache, LiteSpeed)YesYes
Cloudflare / reverse-proxy header supportYes (Trusted Proxy Header)Yes
Comment-spam, XML-RPC, REST-burst sensorsYes
404 / scanner detector with honeypot pathsYes
User-enumeration blockYes
App-password monitorYes
Geo / ASN anomaly detectionYes
Password strength enforcementYes
Hide-login URLYes
Four-method 2FA (TOTP / Email / SMS / WebAuthn) + Recovery Codes + Trusted DevicesYes
WooCommerce frontend 2FA + Subscriptions / Memberships auditYes (PRO+)
Multisite (network activation)Yes
Managed mail / SMS relay with prepaid bundlesYes (PRO+)
Tier-based pricing (Free / Contributor / PRO / Business / Enterprise)Yes
WP-CLI 2FA toolingYes (Business+)
Per-role 2FA policies, restrict-login-times, weekly security reportsYes

Progressive Block Escalation

Hive Light ships with the same default ladder as the Full Edition: 5 min → 15 min → 30 min → 24 h → 48 h → 7 d. After 30 days clean, the counter resets to step 1. Fat-fingered admins, CGNAT addresses and shared mobile-network egresses recover in minutes; persistent attackers escalate quickly. The ladder is editable on the Protection tab, and a fixed-duration mode is available if you prefer a single block length.

Configuration Overview

All settings live under ReportedIP Hive Light → Settings. The most important defaults:

SettingDefaultDescription
operation_modeLocal ShieldLocal Shield or Community Network. Local Shield makes zero outbound requests.
access_key(empty)Optional Community Access Key from reportedip.de.
login_threshold / login_timeframe_minutes5 / 15Failed login attempts per IP before auto-block.
block_duration_minutes1,440 (24 h)Fixed-length block (used when the ladder is off).
block_escalation_enabled + block_ladder_minutesOn — 5, 15, 30, 1,440, 2,880, 10,080Progressive ladder (minutes per step).
block_escalation_reset_days30Days clean before the IP starts back at step 1.
trusted_proxy_header(off)Set to CF-Connecting-IP behind Cloudflare or to X-Forwarded-For behind another trusted reverse proxy. Only enable when your proxy reliably rewrites the header on every request.
api_endpointhttps://reportedip.de/wp-json/reportedip/v2/Filterable via reportedip_hive_api_endpoint.
api_timeout2 sLookups fail open — login proceeds when the API does not respond.
queue_retention_days14How long failed-to-dispatch report rows are kept before pruning.
uninstall_drops_tablesOffWhen on, uninstall removes all wp_reportedip_hive_* tables and options.

Database Tables

Created on activation, prefixed wp_reportedip_hive_ (single-site prefix — Hive Light does not support multisite network activation). Four tables only:

  • attempts — per-IP / per-type / per-hashed-username counter with first/last timestamps.
  • blocked — active blocks (manual / automatic / reputation), reason, block-type and blocked_until.
  • whitelist — trusted IPs / CIDR ranges; optional expiry.
  • api_queue — pending and failed reports to reportedip.de; retried by cron every 15 minutes.

What is not stored: raw usernames, passwords, request bodies, user-agents, comment content or domain identifiers. Usernames are stored as sha256(username + wp_salt()) only.

External Services & GDPR

In Local Shield mode the plugin makes zero outbound network requests. In Community Network mode the plugin talks to three reportedip.de endpoints (all transmissions are listed in the WordPress.org readme.txt as required by wp.org guidelines):

EndpointTriggerData sent
GET /wp-json/reportedip/v2/check?ip=…A login attempt reaches wp_authenticate_user.Only the source IP of the login attempt. Header X-Key with the access key. Timeout 2 s, fail-open.
POST /wp-json/reportedip/v2/reportA brute-force threshold was exceeded; the report is queued and dispatched by the 15-minute cron.Offending IP, integer category ID, a short human-readable comment ("5 failed logins in 15 minutes"). No usernames in plain text, no passwords, no domain name, no request body.
GET /wp-json/reportedip/v2/verify-keyAn administrator clicks "Test connection" in the settings.Only the access key under verification.

Lawful basis (GDPR Art. 6 (1)(f)): network and information security — log retention, automatic cleanup and per-IP hashing protect both your users and unrelated visitors. The full data-processing breakdown is in the privacy policy on this site.

Filters and Action Hooks

  • apply_filters('reportedip_hive_is_whitelisted', $is_whitelisted, $ip) — short-circuit the whitelist check (use sparingly).
  • apply_filters('reportedip_hive_get_client_ip', $ip) — override the IP detection logic (useful behind non-standard reverse proxies).
  • apply_filters('reportedip_hive_event_category_map', $map) — map your event names to threat-category IDs.
  • apply_filters('reportedip_hive_api_endpoint', $url) — point the plugin at a different ReportedIP service installation.
  • do_action('reportedip_hive_log', $event, $data) — fired on every recorded event.
  • do_action('reportedip_hive_ip_blocked', $ip, $reason) — fired when an IP is blocked.
  • do_action('reportedip_hive_report_queued', $ip, $category) — fired when a report is enqueued.

Upgrading to ReportedIP Hive (Full Edition)

Hive Light is deliberately limited to the brute-force login scenario. If your site needs any of the following, switch to the Full Edition:

  • Four-method 2FA with WebAuthn / TOTP / Email / SMS, plus recovery codes and trusted devices.
  • Sensors beyond login — XML-RPC, comment spam, REST-burst, 404 / scanner detector, user-enumeration block, app-password monitor, geo / ASN anomaly.
  • Multisite network activation (Network: true).
  • WooCommerce frontend 2FA (themed challenge inside the My-Account / Checkout flow).
  • Managed mail / SMS relay with prepaid bundles (no SMTP / SMS gateway of your own to maintain).
  • Per-role 2FA policies, restrict-login-times, weekly PDF security reports, GDPR data-export tool.

Migration is one-way: deactivate Hive Light, install Hive (Full Edition), reactivate. Both plugins use the same wp_reportedip_hive_* table prefix and an idempotent schema migration; the Full Edition extends the schema with three additional tables (logs, stats, trusted_devices) and detects existing Light data on first boot. Never run both plugins side-by-side — same text domain, same class prefix, immediate function-redeclaration fatal.

See the product page for pricing and the feature comparison.

Frequently Asked Questions

What is the difference between Hive Light and Hive (Full Edition)?

Hive Light is a single-purpose brute-force login protector on WordPress.org, free forever, no upsell, no tiers. Hive (Full Edition) is the complete security suite distributed via GitHub: twelve sensors, four-method 2FA, multisite, WooCommerce integration, tier-based pricing with managed mail / SMS relay. Two different plugins, two distribution channels, same underlying author and community.

Can I run Hive Light and Hive (Full Edition) on the same site?

No. Both plugins use the same text domain (reportedip-hive) and class prefix (ReportedIP_Hive). Running both leads to immediate function-redeclaration fatal errors. Pick one. To move from Light to Full: deactivate Light, install Full, reactivate. The database tables are reused.

Do I need an account on reportedip.de?

No — Local Shield works without any account. You only need a free Community Access Key if you want to enable Community Network, which adds reputation lookups against the hive and shares anonymised attack reports back. The key is available at reportedip.de/register/ in seconds.

Why is the wp.org plugin called "ReportedIP Hive" — not "Hive Light"?

The WordPress.org plugin slug is reportedip-hive (the package name), but the display name shown in the plugin admin is "ReportedIP Hive Light". The slug stays stable across releases — only the human-readable name changes. The Full Edition uses the same text domain so future migrations preserve the option keys and database tables.

Will the plugin lock me out of my own site?

It might, if you fail logins repeatedly from your own IP. To recover, either wait until the block expires, add your IP to the whitelist in advance, or delete the row from the wp_reportedip_hive_blocked table via phpMyAdmin or WP-CLI: wp db query "DELETE FROM wp_reportedip_hive_blocked WHERE ip_address = 'YOUR_IP'".

Does Hive Light protect Application Passwords?

No. The current release protects standard wp-login.php logins. Application Passwords use a separate authentication path that is not monitored here. The Full Edition includes an app-password monitor that throttles application_password_failed_authentication events.

Does it work with WooCommerce login forms?

Yes — WooCommerce uses the standard wp_login_failed action, which Hive Light listens to. WooCommerce login attempts are counted alongside regular logins. WooCommerce frontend 2FA (in-storefront challenge) is a Full Edition feature.

My site is behind Cloudflare — are real IPs detected?

Yes — set Trusted Proxy Header in Settings → Connection to CF-Connecting-IP. Only enable this when your reverse proxy reliably overrides the header on every incoming request, otherwise the header can be spoofed. The same logic supports X-Forwarded-For for non-Cloudflare proxies.

Where is the source code?

The plugin lives in the official WordPress.org SVN repository under the slug reportedip-hive. A GitHub mirror is maintained for issue tracking; the canonical distribution channel is wordpress.org/plugins/reportedip-hive/.

What happens to my data if I uninstall?

By default the option keys remain so re-installing keeps your settings. If you enable uninstall_drops_tables first, the uninstall hook drops all wp_reportedip_hive_* tables and removes all reportedip_hive_* options. Reports already in the community database remain — they are not personally identifiable to your site.

Security Focused
GDPR Compliant
Made in Germany
Back to Docs