« とうとうやってきました | 麻雀カテゴリについて »

Movable Typeのスパム対策(トラックバック編)

Posted by 琉羅 at 2007年04月24日 08:13

2回に渡ってコメントスパム対策をご紹介した訳ですが、今回は予告どおりトラックバック編をお届けしたいと思います・・・といっても、やっていることはコメント編とほぼ同じことなんですけどね。

それでも一応は備忘録として書いておきます。

mt-tb.cgiのリネーム

コメント編(その1)を参考にして"mt-tb.cgi"を同様にリネームし、"mt/mt-config.cgi"の一番最後辺りに、

TrackbackScript hogehoge.cgi

と記述します。もちろん青字の部分は自分でリネームした名称にしてください。その後ブログ全体の再構築をすれば完了です。

CAPTCHAコードの導入

コメントと同様にトラックバックにもCAPTCHAプラグインを導入します。ただし、コメント編で利用したプラグインとは別ですので新たにプラグインをインストールする必要があります。

まずは上記サイトより、"Tiny Gimpy"と"mt-captcha-tbプラグイン"をダウンロードします。ただし利用するには自分のサーバーに下記のPerlモジュールがインストールされている必要がありますのでご注意ください。

  • CGI
  • GD
  • Digest::MD5

私が利用しているさくらインターネットでは全てインストールされていました。

Tiny Gimpyの導入

それではまず"Tiny Gimpy(TGimpy100.zip)"を解凍し、中にある"tgimpy.cgi"をサーバーの任意の場所にアップロードします。その後パーミッションを755に変更し、動作確認のために一度ブラウザから直接"tgimpy.cgi"を表示させてみてください。9桁のランダムな数字が記載された画像が表示されればとりあえずはOKです。

次に、同じく同梱されていた"sample.cfg"をエディタ等で開き、下記青字部分を設定します。

;########################################################################
;#	CAPTCHA Tiny-Gimpy 設定ファイル
;########################################################################

;### 暗号キー
$szCryptKey = '任意の暗号キー';

;### 画像のサイズ
$nSizeX = 100;   ;# 幅 [pixel]
$nSizeY = 20;    ;# 高さ [pixel]

;### 謎掛けの桁数
$nFigure = 6;

1;### EOF

「暗号キー」は任意の半角英数字(なるべく長く推測され難いものが望ましい)を、「謎掛けの桁数」は画像に表示させたい数字の桁数(1~9)をそれぞれ設定します。「画像のサイズ」も変更したい場合は、それぞれ幅と高さをピクセル単位で設定してください。

設定が完了したら"sample.cfg"を好きな名前にリネームし、このファイルもサーバーの任意の場所にアップロードします。その後、"tgimpy.cgi"をエディタ等で開き、青字部分をアップロードしたディレクトリパスへと修正します。

;### 設定ファイルへのディレクトリパス
sub GetCfgPath { return '/home/hogehoge/www/cfgファイルをアップロードしたフォルダ'; }

できればこのファイルは、さきほどアップロードした"tgimpy.cgi"とは別のフォルダにアップロードすることをお勧めします(ブラウザから見えてしまうため)。それに加えてアップロードしたフォルダに".htaccess"を設置し、内容は下記のようにしておきましょう。

<Files ~ "\.cfg$">
deny from all
</Files>

"tgimpy.cgi"にcfgファイルのパスを記述したら、再度"tgimpy.cgi"をサーバーへアップロードし直しておくのをお忘れなく。

mt-captcha-tbプラグインの導入

同様に"mt-captcha-tbプラグイン(mtcaptchatb010.zip)"を解凍し、"mt-captcha-tb.pl"をエディタ等で開き、下記青字部分をさきほどアップロードした"tgimpy.cgi"へのパスに修正します。

;### Make sure to set below path as your server settings
require '/home/hogehoge/www/Tiny Gimpyをアップロードしたフォルダ/tgimpy.cgi';

修正が完了したら、"mt-captcha-tb.pl"を"mt/plugins"フォルダへアップロードしてください。

次にテンプレート(エントリー・アーカイブ)のCAPTCHAコードを表示したい箇所に、例えば下記青字部分を追加します。

          :
<MTIfPingsAccepted>
<p class="trackback-url"><label for="trackback-url">このエントリーのトラックバックURL:</label><input tabindex="2" accesskey="t" type="text" value="<$MTEntryTrackbackLink$>/hogehoge/XXXXXX" readonly="readonly" id="trackback-url" name="trackback-url" onfocus="this.select()" /></p>
<p><img src="/Tiny Gimpyをアップロードしたフォルダ/tgimpy.cgi?cfg=hogehoge&amp;key=<$MTEntryID$>" alt="CAPTCHA" /><br />
トラックバックスパム防止のため、末尾の XXXXXX 部分を上記画像の数字に置き換えてからご利用ください。お手数ですがご協力よろしくお願いいたします。</p>
</MTIfPingsAccepted>
          :

ここで注意すべき点は、赤字の"hogehoge"に最初リネームした"sample.cfg"の拡張子を取り除いた名称を記載するということです。例えば"weblog.cfg"という名前にリネームしていた場合、"hogehoge"には"weblog"を入れます。

最後にブログ全体を再構築すれば、設置は完了です。無事に動作するか自分でトラックバックを送信してきちんと受信できるかテストしておきましょう。

以上で私のスパム対策は全て紹介しました。以前Movable Typeで作っていたブログでも嫌というほどスパムを味わいましたので、今回は最初からガチガチに対策したつもりです(このブログにスパムが来るかどうかは知りませんけど)。

今後スパマー達の動向次第では、また新たな対策を施さなければいけないかもしれませんが、当面このまま様子を見てみたいと思います。ここまで読んでくださった方々、長文・駄文にお付き合いくださり、ありがとうございました。

トラックバック

CAPTCHA
トラックバックスパム防止のため、末尾の XXXXXX 部分を上記画像の数字に置き換えてからご利用ください。お手数ですがご協力よろしくお願いいたします。

Tadaoh Blog - トラックバックスパム 【その2】Tadaoh Blogトラックバックスパム 【その2】 from Tadaoh Blog

全てのブログのデザインを一新しました。 夜明け頃、heteml側のMTのテンプ... [続きを読む]


ひとかげwatch - TBスパム対策その1ひとかげwatchTBスパム対策その1 from ひとかげwatch

あいもかわらず爆撃を受けてます。あたりまえか。 フィルタにひっかかったのを削除す... [続きを読む]


コメントを投稿

(サラリーマン白書 では不適切なコメントを防止するため、コメントを掲載する前に管理者がコメントの内容を確認しています。コメントを初めて投稿する場合すぐに掲載されませんが、管理者が適切なコメントと判断した場合コメントは直ちに表示されますので、再度コメントを投稿する必要はありません。)

コメントフォーム
*必須

Copyright © 2007 サラリーマン白書, All Right Reserved.