最近スパム対策を色々と施した効果があらわれ、不快な思いにさせられるアクセスは99%遮断できる様になった。残ったアクセス元はyournet.ne.jp(フリービット)のみ。
ここから発信されるスパムがもの凄くやっかい
- .jpドメインなので、現在設定している.htaccessで弾けない
- ここのサービスを利用している国内プロバイダも多いので、全面規制は難しい
- 手動スパム(笑)をしている業者が多いのか、CGIリネーム翌日からアクセスがある
- どういう仕組みを利用しているのか解らないが、MTのスパムキーワードをすり抜けて来る
IPひろば:検索ランキング
▲ここを見ると最近検索されたIPアドレスが良く解る。
大抵はスパム発信元が検索され、大抵の時期でyournet.ne.jpはダントツ一位。
ウチは来た事ないけど、Infowebもスパム温床になっているっぽいねぇ。
今回試した策1(失敗)
MovablrTypeのディレクトリのhtaccessを以下の様に記述
こんな風に書いてもダメ。comment.cgi側はyournet.ne.jpを許可してしまう。order allow,deny
allow from all
deny from .yournet.ne.jp
<Files "comment.cgi">
deny from all
allow from .bbtec.net
allow from .jp
</Files>
今回試した策2(失敗)
MobavleTypeのcomment.cgiで、Host指定で拒否ってみる
#!/usr/bin/perl -w
$ag=$ENV{'REMOTE_HOST'};
if(($ag=~ /xxxx\.xx\.jp/)||($ag=~ /yournet\.ne\.jp/))
{
print "Content-type:text/html;charset=Shift_JIS\n\n";
print "禁止されたHostです<br/>\n\n";
exit;
} else {
use strict;
use lib $ENV{MT_HOME} ? "$ENV{MT_HOME}/lib" : 'lib';
use MT::Bootstrap App => 'MT::App::Comments';
}
▲上手く作動しない。。。
規制HostもELSE側を実行し、普通にコメント出来てしまう。
#!/usr/bin/perl -w
$ag=$ENV{'REMOTE_HOST'};
if(($ag=~ /xxxx\.xx\.jp/)||($ag=~ /yournet\.ne\.jp/))
{
print "Content-type:text/html;charset=Shift_JIS\n\n";
print "禁止されたHostです<br/>\n\n";
exit;
} else {
print "Content-type: text/html;charset=Shift_JIS\n\n";
print "許可されたHostです<br/>\n";
}
▲テスト用に上記の様なCGI作ってみる。
これだと、キチンとHost別にIF、ELSEを分けて実行してくれる。
POSTとGETで何か仕組みが違うっぽい。。。。
この辺勉強不足でなぜPOSTとGETで挙動が違うのか解らないです(^_^;
MobavleType自体のIP禁止設定を使う(様子見中)
▲今日初めて知った、IP禁止リスト。MovableTypeの隠しコマンド?
「IP禁止リスト」を表示するには、mt-config.cgi に下記の1行を追加。
ShowIPInformation 1
これでMobavleTypeの「各ブログの管理画面」の「設定」タブに「IP禁止リスト」が表示される。
ここで禁止IPを追加したり、削除したりが可能。
(個別のブログ毎の設定で、システム全体で禁止する方法は無いみたい。)
(MT内部でひっそりと作動しているようで、連続スパムがやって来た時などに作動している模様)
(MT4にしてから1日のスパムが300件→30件に減ったのはコレのおかげかな?)
さらにプラグイン追加
で、この状態で AutoIPBanなるプラグインを導入するとかなり便利。
スパムが来るたびにワンクリックでこの「IP禁止リスト」へスパムIPを追加可能。
プラグインのインストールも「plugins」ディレクトリにファイル1個アップロードだけ。超簡単。
(ちなみにこのプラグインの解説サイトは、MTの隠しコマンド「IP禁止リスト」の存在を知らない人には???な内容です(^_^;)
今回見送ったプラグイン
スパム対策の決定版?IPスパムフィルターできました(^^)/ MT & SB 共通!
▲こんなのも見つけた。でもざっと読んで理解できなかった(^_^;
ちょっと今日はお疲れモード。この24時間で(MT改造・スパム対策ばかり)6本もブログ更新してるじゃないかwww
流石にこの辺で頭パンクしてきました。
スパム対策、ひとまず終了
自分の中で「やるだけやった」感が出てきたので、ひとまずスパム対策終了。
従来行っていた
- mt-ban-ascii.pl
- spamlookup/spamlookup.pl
- spamlookup/spamlookup_urls.pl
- spamlookup/spamlookup_words.pl
▲を全部解除。
- mt-prevent-trackback-spam-no-link-ja.pl は有効なままにした。
- CGIリネーム
- htaccessによりコメント出来るホストは.jp、bbtec.netのみを許可
- 残りのスパムは「MTのIP禁止リスト」で弾く
上記の運用で、どれくらい効果が出るか、しばらく様子見。