Open Proxy からの Trackback Ping を拒否する MT プラグイン: blog.bulknews.net
ということで、DNS ベースの Blacklist である DSBL を利用して IP アドレスがブラックリストに載っている場合は Trackback Ping を拒否するプラグイン mt-tbping-dsbl をつくってみました。
これを実装するにあたり、どの程度の Trackback が RBL にリストされている IP から来ているのか調べてみました。
まずは、今年に入って送られてきた Trackback の IP を、SPAM もそうでないものも含めて RBL で調べてみると、401 のユニークIPのうち、リストされているのものが 142 個でした (dsbl.org でチェック)。
$ gzcat access_log.2005*.gz | grep "POST /mt/mt-tb.cgi" | cut -d " " -f 1 | sort -u \
> | perl -MNet::DNS -nle '$ip=join".",reverse split/\./;\
> $q=Net::DNS::Resolver->new->search("$ip.list.dsbl.org"); \
> print $ip if $q and $q->answer' | wc -l
142
次に、SPAM でなかった(= 自分が削除していない) Trackback のうち、RBL にリストされているのはどれくらいあるか。2002 年にはじめて以来、666 個の IP アドレスから Trackback Ping (SPAM でないと私が判断したもの)が来ていますが、そのうち RBL に載っているのは 2 つだけでした。
$ echo "select tbping_ip, tbping_blog_name from mt_tbping group by tbping_ip" | mysql -uUSER -pPASS -N mt \
> | perl -MNet::DNS -nle '($ip,$title)=split /\s+/,$_,2;$ip=join".",reverse split /\./,$ip;\
> $q=Net::DNS::Resolver->new->search("$ip.list.dsbl.org");print if $q&&$q->answer' | wc -l
2