MovableTypeは大変に賢くなっていて、コメントやトラックバックのスパムはほとんど自動的に地獄へ流されるようになっています。しかし、この「スパムかどうか」の判定は、MovableTypeのCGIが行なうので、たとえ、スパムであっても、いちいちCGIが起動されてしまいます。そして、サーバのレスポンスを恐ろしいくらいに悪化させてくれます(--#)
となれば、CGIが起動される前に、何らかの方法でブロックしなければなりません。まず、当サイトへのアクセスで最も悪質だった、'*.propagation.net' からのアクセスは、無条件に地獄へ流すことにしました。数秒のうちに、システムが裁ききれないほどに大量のトラックバックを送りつけてくるので、悪質度が際立っていました。それを排除したら、後は、何故か、1234番のエントリへのトラックバックが目立って多かったので、これを無条件に、ドコからであろうと蹴ることにしました。何しろ相当に昔のエントリですし、今更トラックバックもないと考えられますので。念のため、エントリのほうもトラックバック禁止にしておきましたが。
それにしても、1234。これって、何かの魔法の番号なんですねー。絶対、記事の内容などと無関係に、キメウチで攻撃してきているんだろうから。
さて、CGIが起動される前に、抹殺する方法ですが、ルータでフィルタリングする方法もありますが、とりあえず、うちでとったのは、mod_rewriteを使う方法です。何しろ、ルールが柔軟に設定できるので、いちいちルータにルールを設定するよりも楽だからです。例えばこんな感じ。
RewriteCond %{REMOTE_ADDR} 66\.221\.225\.230 [OR]
RewriteCond %{REMOTE_ADDR} 64\.182\.248\.59 [OR]
RewriteCond %{REQUEST_URI} mt-tb\.cgi/1234$
RewriteRule ^.*$ - [F,L]
1234への攻撃はまだあります。さすが魔法の数字です。でも、これもCGIは起動されませんので、負荷的にはそれほどのことはありません。それにしても、アホの相手を真剣にしなきゃいけないとは……疲れます oTL
コメント