#!/bin/bash DOMAIN="example.com" SQLUSER="sqluser" SQLPASSWORD="password" cat /var/log/qmail/smtpd/current | grep 'CHKUSER rejected' | tai64nlocal | grep '$DOMAIN' > $DOMAIN_only.log perl prep_parse.pl < $DOMAIN_only.log > banip.sql mysql -u$SQLUSER --password="$SQLPASSWORD" bantcp -e "delete from banips" mysql -u$SQLUSER --password="$SQLPASSWORD" bantcp -e "delete from ips" mysql -u$SQLUSER --password="$SQLPASSWORD" bantcp < banip.sql mysql -u$SQLUSER --password="$SQLPASSWORD" bantcp -e "insert into ips(ip,count) SELECT ip,count(ip) as count FROM banips WHERE date BETWEEN (CURDATE() - INTERVAL 12 HOUR) AND CURDATE() group by ip having count > 5 order by count asc;" mysql -u$SQLUSER --password="$SQLPASSWORD" bantcp -e "select ip from ips;" > temp.txt perl bantcp.pl < temp.txt