« WindowsXP 販売終息へ | メイン | 寝る前にネットをやると寝不足に? »

【MT4.0】コメントスパム対策しました

ここ最近、「Sandra-**」の投稿者名で、大量にコメントスパムが届いてます。
多いときは、2分に1投稿ぐらいのペースできてます。
あっちこっちのブログサイトで被害が出ているみたいですね。

投稿されても スパムフィルタで表には見えないようにはなるものの、
投稿されるたびに 書き込み&再構築のCGIが走るので、サーバ負荷が高くなる一方。
特定のドメインやIPからではないので、なかなかアクセスブロックができず、
結局 投稿されてサーバ負荷が高くなる。
なんかのウィルスみたいなのかなぁ・・・。

そこでBOT投稿できなくする対策として、
MT4.0から標準実装された「Captcha」投稿認証を
あやろぐ に取り入れることにしました。

さいきん、MSNなどのアカウント発行サイトにも導入されている、これです。

Captcha認証の例

自動判別困難な画像内の文字を目視認識して入力をしてもらうことで、
「ちゃんと人間が投稿したよー」という、認証方式ですね。


みなさんのコメント投稿の際に、ひとつ手順増えちゃってしまいますが、
ご協力いただければ幸いなのです。


また、MT3.xからの移行環境ですと、ネットであちこち調べた結果
いくつか調整が必要でしたので、備忘録代わりに 下記に残します。

<ブログの設定>
1)MT4.0の自分のブログの管理画面(ダッシュボード)で、
  【設定】→【ブログの管理】を開きます。

 ○ 【コメント】設定項目の確認
   ・[CAPTCHAプロバイダ]項目の確認
      →プルダウンメニューから【MovableType既定】を選ぶ
      →もし下記エラーメッセージが表示されている場合は別の調整が必要
         CAPTCHAプロバイダがありません。Image::Magickがインストールされているか、
         また CaptchaSourceImageBaseが正しく設定されていて
         mt-static/images/captcha-sourceに アクセスできるか確認してください。


 {調整1} サーバにImage::Magickがインストールされているか確認
     →"mt-check.cgi" を走らせれば、確認が取れます。
      インストールされていない場合は、サーバ管理者に依頼する必要があります。

 {調整2} CaptchaSourceImageBase 設定を "mt-congig.cgi"に記述します。
   記述例:
    CaptchaSourceImageBase /home/ユーザー名/public_html/images/captcha-source
      利用しているブログサーバについて、「サイトパス/images/captcha-source」の格納先を
      自分の環境にあわせて記述します。(ローカルサーバのパスで)

 {調整3} mt-static/images/captcha-sourceのアクセス権の確認
   mt-static内の上記フォルダに格納されている画像が、ブラウザで表示できるか確認します。

 ○ 【登録/認証】設定項目の確認
   ・[認証方式]項目の設定
      →【認証なしコメント】にチェックを付けることで、
        通常の匿名ユーザー投稿画面に Captcha認証をかけることができます。


2)エントリーアーカイブのテンプレートを編集
  これまでの設定で認証はできるようになりますが、
  MT3.0時代のテンプレートを継続使用している場合は、
  テンプレートをいじらないと肝心の認証画像が表示されません。

   【デザイン】→【テンプレート】→【アーカイブテンプレート】画面を開き、
   「エントリーアーカイブ」の編集画面に入ります。

設定内容抜粋:編集箇所(赤字部分)

<p id="comments-open-text">
<label for="comment-text">コメント: <MTIfAllowCommentHTML>(スタイル用のHTMLタグが使えます)</MTIfAllowCommentHTML></label>
<textarea id="comment-text" name="text" rows="15" cols="50"></textarea>
</p>
<MTIfNonEmpty tag="MTCaptchaFields">
<MTIfCommentsAccepted>
<MTIfRegistrationAllowed><MTElse><$MTCaptchaFields$></MTIfRegistrationAllowed>
</MTIfCommentsAccepted>
<div id="comments-open-captcha">
</div>
</MTIfNonEmpty>

<div id="comments-open-footer" class="comments-open-footer">


3)以上の設定が完了したら、ブログ全体を再構築します。


これでCaptcha認証が使えるようになるはず。ヽ|・∀・|ノ


ご参考まで。

コメント

先ほど確認したところ、本日のスパムコメント0件。ヽ|・∀・|ノ
無事、「Sandra-**」の攻撃回避に成功。
標準添付の機能でも、かなり効果はあるようですネ。


はじめまして。なまら北海道だべさというサイトを運営しているたけと申します。最近MT4を導入し、いろいろと自分の納得のいくように改良しているところです。
http://f.n-hokkaido.com/
この、スパム対策も大変参考になりました。取り入れてみたいとおもいます。しかし、その前にひとつお聞きしたいことがあるのですが、こちらのサイトでは最初からコメント入力欄が開いた状態になっていますね。このようにするにはどうしたらいいのでしょうか。いろいろなサイトも当たってみたし、「あやろぐ」さんの中もみてまわりましたが、なかなか見つかりません。もし、可能でしたらご教示願いたいと思います。よろしくお願いします。

細かいコンテンツに関しては、わたしも勉強中ですが、
コメント欄に関しては、アーカイブテンプレートの
作り方次第かもしれません。
うちのサイトでは、「個別アーカイブテンプレート」に
直接コメントフィールドを設けているだけですね。

オリジナルの作成が困難でしたら、
MT用のテンプレートを公開しているサイト様も多数ありますので、
そういったモノを活用されるのも手かと思います。

多少なりともご参考になれば幸いです。

コメントを投稿


画像の中に見える文字を入力してください。

 
2008年10月
      1 2 3 4
5 6 7 8 9 10 11
12 13 14 15 16 17 18
19 20 21 22 23 24 25
26 27 28 29 30 31  

管理者用

来訪者数
あやろぐ管理

Powered by Movable Type 4.22-ja
(c)2006 CrimsonIris. All Rights Reserved.