Hello! π
I'm thrilled to (re-)introduce WireWall β an advanced security firewall module for ProcessWire that I've been actively developing and refining in production for months. After blocking massive amounts of malicious traffic (99.98%+ on my e-commerce sites) with zero impact on real users, it's time for a refreshed community announcement with all the latest features from v1.3.4.
What is WireWall?
WireWall turns your ProcessWire site into a secure fortress with enterprise-grade tools: city-level geo-blocking, full IPv6/CIDR, multi-layer bot protection, true stealth mode, rate limiting fixes, and file-based caching that easily handles 1M+ IPs.
Key Features (as of 1.3.4)
Geographic Control
City-level blocking (e.g. Philadelphia, Beijing, Sydney)
Subdivision/region blocking (Pennsylvania, New South Wales, Γle-de-France)
Country blocking (blacklist/whitelist 200+ countries)
MaxMind GeoLite2 integration (Country + ASN + City) β 0.5-2ms lookups
HTTP fallback (ip-api.com) when MaxMind not available
Full IPv6 + CIDR support
Bot & Threat Protection
Bad bots, scanners, vulnerability tools
AI training bots (GPTBot, ClaudeBot, GrokBot, Perplexity, etc.)
Fake/headless browser detection (Puppeteer, Selenium, etc.)
VPN/Proxy/Tor detection (multi-API chain)
Datacenter blocking (AWS, GCP, Azure, Hetzner, etc.)
ASN blocking & whitelisting (block/allow entire networks)
Security & Rate Limiting
Configurable rate limiting with burst handling & permanent/temporary bans
JavaScript challenge for suspicious traffic
IP whitelist/blacklist with CIDR
Priority system β now 16 levels (logged-in users at #3, trusted modules at #2)
Stealth & UX
True silent 404 mode β plain "Not Found" text (no HTML/branding)
Beautiful custom block page with location/IP display
Custom redirect or message on block
Option to completely disable AJAX protection (fallback for tricky integrations)
Performance & Management
File-based cache β scales to millions of IPs, no DB overhead
Cache UI with stats & per-type clear buttons
Detailed logging (city/region/ASN included)
Admin area always protected (triple-layer)
Real-World Results On production sites (e-commerce + others), WireWall consistently:
Blocks 99.98%+ of attacks/scrapers/VPN fraud
Zero false positives for logged-in users & legitimate traffic (thanks to priority fixes)
Handles spikes without issues after rate limiting improvements
Eliminates most cloud-based automated probes
Installation (Quick)
cd site/modules/
git clone https://github.com/mxmsmnv/WireWall.git
Then in admin:
Modules β Refresh
Install WireWall
Configure (start with rate limiting + VPN detection + bad/AI bots)
Monitor: Setup β Logs β wirewall
Priority System (how requests are evaluated)
Admin area β always ALLOW
Trusted ProcessWire module AJAX β ALLOW
Logged-in users β ALLOW (new in 1.3.4 β unconditional bypass)
IP whitelist β ALLOW
Allowed bots / IPs / ASNs β ALLOW
Rate limiting β BLOCK if exceeded
IP blacklist β BLOCK
JS challenge β CHALLENGE
VPN/Proxy/Tor β BLOCK
Datacenter β BLOCK
ASN blocking β BLOCK
Global rules (bots/paths/UA/referer) β BLOCK
Country blocking β BLOCK/ALLOW
City blocking β BLOCK/ALLOW
Subdivision blocking β BLOCK/ALLOW
Country-specific rules β BLOCK
First match wins.
MaxMind Setup (strongly recommended) Free GeoLite2 databases β fast & offline.
See README or https://wirewall.org for setup guide.
Requirements
ProcessWire 3.0.200+
PHP 8.1+
Resources
GitHub: https://github.com/mxmsmnv/WireWall
Releases & Changelog: https://github.com/mxmsmnv/WireWall/releases
Landing: https://wirewall.org
License: MIT (free for commercial use)
Why build this? ProcessWire deserved a native, scalable, granular firewall with city-level control, offline capability, and proper exception handling β things missing or hard in other solutions.
Happy to answer questions, hear about your security setups, or debug any issues! Feedback from the community has already shaped big improvements (like the recent logged-in & stealth fixes).
Best regards,
Maxim