前にgreylisting(Rgrey)のDBから、拒否IPへ追加すべきIPをリストアップするためのスクリプトを書いたが、新たに追加するときには、現在拒否リストに載っていないIPを追加したいので、それを抜き出すためのスクリプトを書いた。
ファイルのある場所などはdebian向けになっているので、他のOSの場合は適当に置き換えてください。
makeaddlistで、拒否リスト(/etc/postfix/reject_client)にまだ載っていないIPで、greylistingを抜けてきたIPの数順で並びます。
makeaddlist
./makeblacklist | perl -ane 'BEGIN{open(LIST,"/etc/postfix/reject_client");while(<LIST>){@IP=split;$vlist.="$IP[0]|"};chop($vlist);close(LIST)};print unless($F[1]=~/$vlist/)'
makeblacklist
db4.3_dump -p /var/lib/postgrey/postgrey.db|grep @|grep info@|perl -ane '@ip=split("\\.");print "$ip[0].$ip[1].$ip[2]\n"'|uniq -c|sort -r
(関連)