With a perl script, you can continuously follow a log file, so this script runs 24/7/365, and thus can keep running totals over any given time span of attempts by particular IPs, dropping them at the firewall level, then reopening them after a specified "timeout" period. If you're good with perl, its something you can startup at boot and never think about it again. And quite often you'll see the same spammers using multiple domains on the same c block so you can just "timeout" the whole c-block. But I usually only do that for the problem countries, i.e. china, russia, estonia, belarus, ukraine, etc... See the pattern of where all the cockroaches like to hide? In any case, if you like perl, its great. And more than anything, I like to know that it stops those cockroaches from using your system resources.