2005年2月15日火曜日

MT Trackback SPAM対策


texas hold emと言うところからのtrackback SPAMが山のように来た。



あれこれ探して、この対策。



まずは、Comment SPAM 対策でも使わせていただいている

Memo Leaves: 編集メニュー画面からコメントスパムを一括削除

を再び頂いた。

trackbackもまとめて削除できるように拡張されており、

これを使ってすでにトラックバック付けられたものを削除。





これだけでは、鼬ごっこなので、禁止IPリストにURLを登録してそこで弾くのを作ったところ、すでにありました(^^;



Memo Leaves: TrackBackスパム対策



ただ、私の方はちょっと違っていて、lib/App/Trackback.pmの該当部分は


## Check if this user has been banned from sending TrackBack pings.
require MT::IPBanList;
my $iter = MT::IPBanList->load_iter({ blog_id => $tb->blog_id });
my $user_ip = $app->remote_ip;
my $user_url = $ping->source_url;
while (my $ban = $iter->()) {
my $banned_ip = $ban->ip;
if ($user_ip =~ /$banned_ip/ || $user_url =~ /$banned_ip/) {
return $app->_response(Error =>
$app->translate("You are not allowed to send TrackBack pings."));
}
}

てな感じです。
$urlと$ping->source_urlの違いと、ifを一つにしたことぐらいで、本質は同じ。

0 件のコメント:

コメントを投稿