Blogが一般化するにつれて、コメントやトラックバックを使ったスパムが増えました。
Movable Type 3.2ではスパム対策機能が強化され、プラグインを追加することでさまざまなスパム対策ができるようになっています。
スパムの中では、海外から送信されてくるものが多いです。
そこで、Movable Type 3.2以降用に、日本語を含まないコメントやトラックバックをスパムとみなしてフィルタリングするプラグインを作ってみました。
スパムの判定基準
このプラグインでは、全角/ひらがな/句読点の文字が含まれているかどうかで、日本語のコメント/トラックバックであるかどうかを判断します。
これらの文字が指定した文字数以上含まれていれば、日本語(スパムではない)と判断します。
そうでなければスパムとみなします。
なお、スパムかどうかを判断する際には、以下の部分が検索の対象になります。
- コメント → 投稿者名/メールアドレス/URL/コメントの本文
- トラックバック → Blog名/送信元URL/トラックバックの概要
インストール
まず、以下のアドレスに接続して、プラグインのファイルをダウンロードしてください。
プラグインの継続的な開発やサポートのために、プラグインをご利用された方は、ドネーション(寄付)を行っていただけると幸いです。
ドネーションの方法は、こちらのページをご参照ください。
また、このプラグインの他にも、いくつかのプラグインを配布しています。
配布中のプラグインは、Movable Type Plugin Directoryのページをご参照ください。
Movable Typeのプラグイン開発等のドキュメント「Movable Type Developer's Guide Volume 1」も販売しています。
ご自分でプラグインを作ってみたい方に、ぜひお勧めしたい一冊です。
詳細は特設ページをご覧ください。
ファイルはZip形式で圧縮してあります。
解凍すると、「NotJapaneseLookup.pl」というファイルができますので、それをMovable Typeの「plugins」フォルダにアップロードしてください。
設定
Movable Typeにログインし、個々のBlogのメニューを開いて、「設定」画面の「プラグイン」のタブを表示します。
すると、プラグイン一覧の中に「Not Japanese Lookup」がありますので、「設定を表示」のリンクをクリックして設定を開きます、スパムと判断する条件を設定します。
標準では、以下の画面のような設定になっています。
この場合、「全角文字を1文字以上含めば、日本語(スパムでない)とみなす」という設定になります。
全角文字を含み、かつひらがなや句読点を含むものだけを、日本語とみなすようにすることもできます。
例えば、「全角文字を5文字以上含み、かつひらがなを2文字以上と句読点を1文字以上含む場合は、日本語とみなす」というようにしたい場合、以下のように設定します。
- 「全角文字を」の欄 → 5
- 「ひらがなを」の欄 → 2
- 「句読点を」の欄 → 1
設定が終わったら、「変更を保存」のボタンをクリックします。
他のスパム対策プラグインとの兼ね合い
Movable Type 3.2のスパム対策機能では、複数のスパム対策プラグインを組み合わせて、スパムかどうかを判断することができます。
個々のスパム対策プラグインは、コメントやトラックバックに「スコア」をつけます。
スパムとみなす場合は、通常はマイナスのスコアがつきます。
そうでない場合は、スコアは通常は0になります。
NotJapaneseLookupプラグインでは、日本語でないコメント/トラックバックには、標準では-1のスコアをつけます。
また、プラグインによっては、プラスのスコアをつけるものもあります。
例えば、MT3.2標準の「SpamLookup - Link」のプラグインでは、過去にコメント/トラックバックしたことがある人からのコメント/トラックバックには、標準では+1のスコアをつけるようになっています。
各プラグインのスコアが出たら、それらが平均されます。
そして、その平均値が「判断基準値」より低ければ、スパムとみなすようになっています。
判断基準値は、Blogの設定の「コメント/トラックバック」のタブの「迷惑コメント/トラックバック」の箇所で設定することができます。
標準ではこの値は0に設定されていますので、スコアの平均値が0より小さい場合は、スパムとみなされることになります。
このような仕組みのため、あるプラグインが判断基準値より小さいスコアをつけても、他のプラグインが判断基準値より大きいスコアをつけると、平均が判断基準値を越えて、スパムでないとみなされる場合があります。
例えば、プラグインAが-1のスコアをつけ、プラグインBが+2のスコアをつけると、平均は+0.5になります。
もし、判断基準値を0に設定していると、このコメント/トラックバックは、スパムでないと判断されることになります。
このような状況に備えて、NotJapaneseLookupプラグインでは、スコアのつけ方を設定することができます。
プラグインの設定の画面に、スコアを設定する欄があります。
前述したように、日本語でないコメント/トラックバックには、標準では-1のスコアをつけます。
もっと低いスコアをつけるように設定すれば、スコアの平均値が判断基準値を上回る可能性は低くなります。










コメントはスレッド表示になっています。
また、スレッドの先頭のコメントに対する返信には、先頭に矢印を表示しています。
MT3.2-jaにインストールしたのですが、Not Japanese Lookupとプラグイン一覧には表示されますが、「設定を表示」のリンクが表示されす、設定が行えません。MT側で何か設定が必要なのでしょうか?
>pegaさん
こんにちは。
ご質問の件ですが、システムメニューの「プラグイン」の画面で設定をしようとされているのではないでしょうか。
そこではなくて、個々のBlogのメニューから設定を行う必要があります。
Blogのメニューの「環境設定」で「設定」クリックし、Blogの設定を開いて、その中の「プラグイン」のタブをクリックしてください。
壱さん、こんにちは。
早速のご回答ありがとうございます。Blogのメニューの「環境設定」>設定>プラグインで設定できました。どうもありがとうございました。説明文を書いてあるのに、それをよく読まず、質問して申し訳ありませんでした。プラグインの設定はシステムメニューの「プラグイン」の画面しかないものと思っていたものですから.....(汗)。
有益なプラグインを作成し、かつこれを公開して下さり、感謝しています。
も~~~~やだ!すごすぎます、スパムコメント。
MT-Notifier も気になるけど、こっちが先かな、ということで
プラグイン、使わせていただきました。
これで、迷惑コメントに振り分けることができます。
早速試させていただきました。サーバーにアップロードすると、設定画面が文字化けしてしまいます。サイトをEUC-Jで運営しているためでしょうか?
nkfでNotJapaneseLookup.pl自体をeucに変換してみましたが状況が変わりません。
ご伝授いただければ幸いです。
>Chabuさん
こんにちは。
NotJapaneseLookup.plはutf-8で保存してあります。
utf-8のままでアップロードすると文字化けします。
utf-8からeucに変換してアップロードをやり直してみてください。
早々のコメントありがとうございます。 nkfの変換を標準出力でやって、変換した気になっていました・・。お恥ずかしい。
無事に設置できました。
ありがとうございます。今後もよろしくお願い申し上げます。
早々のコメントありがとうございます。 nkfの変換を標準出力でやって、変換した気になっていました・・。お恥ずかしい。
無事に設置できました。
ありがとうございます。今後もよろしくお願い申し上げます。
こんばんわー。
ご無沙汰ですー。
このプラグインを使用してるわけでは無いので恐縮なのですが、ちとご質問。
3.2がデフォでコメントスパムをはじくのはオッケーなんですがね、DB内で保留状態になるじゃないですか。最近、それもうざったくなってきたので、有無を言わさず弾きたいんですけど、そういう設定が追加できたりしないのでしょうかー。
有名どころの半角コメントスパム対策がどうも3.2では動いてない感じなので、質問してみましたぁ。
>Border.さん
こんにちは。
MT3.2のスパム対策機能では、コメントやトラックバックを保存する前に、スパムとみなして保留/迷惑にするかどうかを指定することしかできないようです。
ただ、Blogの設定で「迷惑コメント/トラックバックは、指定した日数が過ぎると自動的に削除する」というようにすることができます。
そこで、削除までの日数を1日にするなどの方法が考えられます。
また、拙作の「コメントスパム送信者にコメントをさせないようにするプラグイン」を使って、コメントスパムを投稿させないようにするという方法も考えられます。
http://www.h-fj.com/blog/archives/2005/11/19-111441.php
うわーい。ありがとうございます。
こいつは気づいてませんでした。
もっと良く調べろっていう感じですねぇ。
すみません。m(__)m
お手間かけました。
お初です。
こちらのプラグインありがたく使わせて頂きます。
多謝~ m(_ _)m
>健太さん
こんにちは。
プラグインご利用ありがとうございました。
こんばんは、壱さん
お世話になっています。
プラグインをDL&導入させて頂きました
素晴らしいプラグインをありがとうございます。
これからも宜しくお願いします。
>mituruさん
こんにちは。
プラグインをご利用いただきありがとうございました。
こちらのプラグインをご紹介いただいて、入れてみました。サイコーです! ありがとうございました!
しばらく このプラグインの お世話になっていましたが、「迷惑トラックバック」 に無数に溜まるスパムを目にするのもウンザリしますし、その中に きちんとしたトラックバックが混じっていないか探すのも大変です。
そこで、このプラグインを もう一歩進めた 「日本語でないトラックバックを拒否するプラグイン」 というのを是非作って頂きたいのです。
つまり、「迷惑トラックバック」 にも入れないような強い態度のものを お願いしたいのです。
その際、他のプラグインのように 3.2/3.3 両対応にして頂ければ大変有難いです。
差し出がましい要望とは思いますが、是非ご検討頂ければと思います。
こんにちは♪
MT3.33 で使わせてもらってます。かな~りいいです^^
MTのスパム機能に対応したプラグイン、ってのが素晴らしいです。ちゃんと迷惑フォルダに振り分けられるのが素晴らしいですね。
ちょっとだけ気になる点を一つ↓
「Not Japanese Lookup」っていう名称はどーなのかなー、と。明らかに、「日本語じゃないとダメだよ!」って「英語」で書いてあるんで。スパマーさんにしたら既知のこのなのかもしれないけど、、、なるべく隠密で、、、ってのも考えた方が良いのかなと、ちょい思いました。もっと別の、全然違う名前にしちゃうとか。「秀丸」みたいに、「フジモト!」みたいな(^^;
ではでは。
>nohaさん
こんにちは。プラグインご利用ありがとうございます。
いただいたご意見ですが、スパマーはスパム対策の裏をかこうとしてくると思われます。
したがって、プラグインの名前を変えてみたところで、さして効果はないと思われます。
なるほろ。確かにそりゃそーですね。
でもまだ英語対策だけで結構いけてるってのが気になる。日本語を混ぜるのが主流になっちゃったらどーしましょね。ではでは。
いつもお世話になっております。スパムフィルターで対応しきれないスパムコメントが多くなったので、こちらのプラグインを使わせていただきました。ありがとうございます。
はじめまして。Raptorと申します。m(__)m
このプラグインをインストールさせていただきました。ありがとうございます。
また、トラバを打たせていただきました。今後ともよろしくお願いします。