最強の対コメントスパム及び対トラックバックスパムの設定/プラグインの布陣を敷いてみる

以前はモンティパイソン並に Spam spam とやられていたわけですけど,御陰で,というか何というか,スパム対策の記事やテクニック,プラグインを読んだり試したりして対スパムの微々たる知識やテクニックを身に付け今まで来ました。ただ身に付けただけでは面白くないし,どうせ忘れてしまうので記事にまとめてみようかと思います。

この記事を読んで

烏除けのCD−Rぶら下げだとか,猫除けのペットボトル(水満タン)だとかそんなチャチなもんじゃあ断じてねぇ。
もっと恐ろしい Apache+mod_rewrite+PHP+JavaScript の片鱗を味わったぜ

とポルナレフなら言うかもしれません。
確証はありませんが…。

さて,では長い前置きはこれくらいにして。今使っているスパム対策用の設定/プラグインをご紹介しましょう。

  1. mod_rewrite を使ったリファラスパム対策
  2. .htaccess に記述した referer spam 対策用のリファラ拒否リスト
  3. .htaccess に記述した refere spam 対策用の UA 拒否リスト
  4. Comments Post Rewriter
  5. Simple Trackback Validation
  6. wp-trackback.php ハック版

Akismet も使ってはいますけれど,ほとんど予備です 😛
Autmattic!もっとばんがって。

ふと思いついたリファラスパム対策

以前書いた記事を参照のこと。特にコメント欄も。

.htaccess に記述した referer spam 対策用のリファラ拒否リスト

リストが厖大なので別途 bot 除けを施した上で紹介します。
dot_htaccess.zip
bot 除けにパスワードかけました
tegaki

.htaccess に記述した referer spam 対策用の UA 拒否リスト

これもリストが厖大なので別途 bot 除けを施した上で紹介します。
上のzipファイルに同梱してます。

Comments Post Rewriter

JavaScript と mod_rewrite を使用したコメントスパム対策プラグイン。多分,Akismet や SpamKarma2 よりも判定が厳しいです。コメントスパム対策専門のプラグインなのでトラックバックスパムに対しては無力。そのため,対トラックバックスパム用のプラグインとの併用は必須。

Simple Trackback Validation

受け取った trackback ping に自サイトの URI を含まない場合,

  1. モデレートにかける;
  2. スパムとして処理する;
  3. 削除する の3段階で処理できる;

対トラックバックスパムプラグイン。

自サイトの URI に関しても,

  1. 記事のURIがきちんと入っているかどうか(デフォルト)
    例えば http://example.com/archives/2006/12/49/test/
  2. ドメイン+特定のURIだけ入っているかどうか
    例えば http://example.com/archives/
  3. ドメインだけ入っていればいいかどうか
    例えば http://example.com

の3段階の設定ができます。

wp-trackback.php ハック版

これだけプラグインではなく,トラックバックに関してのオリジナルのファイル(wp-trackback.php)を置き換えて使います。

CPR の作者がどこからか拾ってきたものをさらにカスタムしたといっていたハック版の wp-trackbac.php: Yet another trackback-spam solution…
gethostbyname6() の関数の部分を直したので,以前ダウンロードした方はダウンロードし直して下さいとの事(コメント欄参照)。Thanx Quix0r.

hiromasaさんにソースコードを読んでもらったときに “これは面白い“といっていて,

トラックバックを送ってきたサーバの IP とトラックバックしてきてきた URLIP がいっしょじゃないと、SPAM か。
この if がキモですね。
gethostbyname6($host, true) == getenv('REMOTE_ADDR')

例えば,proxy 越しで trackback を打ってきた場合, trackback 元のIPアドレスと trackback 元のドメインが一致しないため,スパムと判断され trackback ping は破棄されるということらしい。

このような選人たちの知恵とスキルでコメントスパム,トラックバックスパム,リファラスパムからも完全に自由の身です。
なんらかの役に立てればこれ幸い。

aka Written by:

6 Comments

  1. 16. 5月 2007

    はじめまして。これ、こうやって訊いてしまっていいのかわからないんですが、dot_htaccess.zipのパスワードがどうにも正解できません。えーと、素直に読むと「エヌ(小)イコールゼット(大)イチニイニイアール(大)アンダーバージー(小)エックス(小)」なんですが、ちがうんですね?

  2. 16. 5月 2007

    いやあ、こうやって疑問を文章にすると冷静になるものですな。自己解決です。失礼しました。

  3. 16. 5月 2007

    お手数かけましてすみません。
    やっぱり分かり辛いなと思って画像差し替えました。

  4. 18. 6月 2007

    Hello! Please redownload the little hack which I have modified. The required function gethostbyname6() which I took from the PHP documentation comments are missing in that hack. I have just copied it in my-hacks.php but not in the hack. :$

    Thanks for announcing my hack. 🙂

  5. 18. 6月 2007

    Quix0r
    Hi, thanks for notifying me your work!
    It kicks trackback spam out my blog 😉 woohoo!

Comments are closed.