Abusive HTTP Watch is a Perl daemon that tails a web access log,
detects malicious HTTP probes via a curated regex token set, and
writes offending source IPs to an append-only blocklist file. That
file is then consumed by the firewall (pf table, Apache Require
list, nginx deny list, etc.).
rc.d, troubleshooting common
issues seen in production.You run a web server (Apache, nginx, OpenLiteSpeed, whatever) and
the access log is full of probes for wp-login.php, .env,
/etc/passwd, PHP exploitation tokens, and SQL-injection attempts.
You want those source IPs blocked at the firewall before they cost
you bandwidth, CPU, or — worse — find an actual vulnerability.
If that is your situation, this is what the daemon is for.
pf with a <abusive> tablenftables set or ipsetmod_authz_host with Require not ip ...deny directive blocksIf you have all of that, the Quickstart is roughly ten minutes of work.