以前はモンティパイソン並に Spam spam とやられていたわけですけど,御陰で,というか何というか,スパム対策の記事やテクニック,プラグインを読んだり試したりして対スパムの微々たる知識やテクニックを身に付け今まで来ました。ただ身に付けただけでは面白くないし,どうせ忘れてしまうので記事にまとめてみようかと思います。
この記事を読んで
烏除けのCD−Rぶら下げだとか,猫除けのペットボトル(水満タン)だとかそんなチャチなもんじゃあ断じてねぇ。
もっと恐ろしい Apache+mod_rewrite+PHP+JavaScript の片鱗を味わったぜ
とポルナレフなら言うかもしれません。
確証はありませんが…。
さて,では長い前置きはこれくらいにして。今使っているスパム対策用の設定/プラグインをご紹介しましょう。
- mod_rewrite を使ったリファラスパム対策
- .htaccess に記述した referer spam 対策用のリファラ拒否リスト
- .htaccess に記述した refere spam 対策用の UA 拒否リスト
- Comments Post Rewriter
- Simple Trackback Validation
- wp-trackback.php ハック版
Akismet も使ってはいますけれど,ほとんど予備です 😛
Autmattic!もっとばんがって。
ふと思いついたリファラスパム対策
以前書いた記事を参照のこと。特にコメント欄も。
.htaccess に記述した referer spam 対策用のリファラ拒否リスト
リストが厖大なので別途 bot 除けを施した上で紹介します。
dot_htaccess.zip
bot 除けにパスワードかけました
.htaccess に記述した referer spam 対策用の UA 拒否リスト
これもリストが厖大なので別途 bot 除けを施した上で紹介します。
上のzipファイルに同梱してます。
Comments Post Rewriter
JavaScript と mod_rewrite を使用したコメントスパム対策プラグイン。多分,Akismet や SpamKarma2 よりも判定が厳しいです。コメントスパム対策専門のプラグインなのでトラックバックスパムに対しては無力。そのため,対トラックバックスパム用のプラグインとの併用は必須。
Simple Trackback Validation
受け取った trackback ping に自サイトの URI を含まない場合,
- モデレートにかける;
- スパムとして処理する;
- 削除する の3段階で処理できる;
対トラックバックスパムプラグイン。
自サイトの URI に関しても,
- 記事のURIがきちんと入っているかどうか(デフォルト)
例えば http://example.com/archives/2006/12/49/test/ - ドメイン+特定のURIだけ入っているかどうか
例えば http://example.com/archives/ - ドメインだけ入っていればいいかどうか
例えば http://example.com
の3段階の設定ができます。
wp-trackback.php ハック版
これだけプラグインではなく,トラックバックに関してのオリジナルのファイル(wp-trackback.php)を置き換えて使います。
CPR の作者がどこからか拾ってきたものをさらにカスタムしたといっていたハック版の wp-trackbac.php: Yet another trackback-spam solution…。
gethostbyname6() の関数の部分を直したので,以前ダウンロードした方はダウンロードし直して下さいとの事(コメント欄参照)。Thanx Quix0r.
hiromasaさんにソースコードを読んでもらったときに “これは面白い“といっていて,
トラックバックを送ってきたサーバの IP とトラックバックしてきてきた URL の IP がいっしょじゃないと、SPAM か。
この if がキモですね。
gethostbyname6($host, true) == getenv('REMOTE_ADDR')
例えば,proxy 越しで trackback を打ってきた場合, trackback 元のIPアドレスと trackback 元のドメインが一致しないため,スパムと判断され trackback ping は破棄されるということらしい。
このような選人たちの知恵とスキルでコメントスパム,トラックバックスパム,リファラスパムからも完全に自由の身です。
なんらかの役に立てればこれ幸い。
はじめまして。これ、こうやって訊いてしまっていいのかわからないんですが、dot_htaccess.zipのパスワードがどうにも正解できません。えーと、素直に読むと「エヌ(小)イコールゼット(大)イチニイニイアール(大)アンダーバージー(小)エックス(小)」なんですが、ちがうんですね?
いやあ、こうやって疑問を文章にすると冷静になるものですな。自己解決です。失礼しました。
お手数かけましてすみません。
やっぱり分かり辛いなと思って画像差し替えました。
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. 🙂
Quix0r
Hi, thanks for notifying me your work!
It kicks trackback spam out my blog 😉 woohoo!
[…] Spam Karma の簡単(で曖昧)な解説 Spam Karma 仕様書 最強の対コメントスパム及び対トラックバックスパムの設定/プラグインの… WordPress Plugin DB […]