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&key=<$MTEntryID$>" alt="CAPTCHA" /><br />
トラックバックスパム防止のため、末尾の XXXXXX 部分を上記画像の数字に置き換えてからご利用ください。お手数ですがご協力よろしくお願いいたします。</p>
</MTIfPingsAccepted>
:
ここで注意すべき点は、赤字の"hogehoge"に最初リネームした"sample.cfg"の拡張子を取り除いた名称を記載するということです。例えば"weblog.cfg"という名前にリネームしていた場合、"hogehoge"には"weblog"を入れます。
最後にブログ全体を再構築すれば、設置は完了です。無事に動作するか自分でトラックバックを送信してきちんと受信できるかテストしておきましょう。
以上で私のスパム対策は全て紹介しました。以前Movable Type
で作っていたブログでも嫌というほどスパムを味わいましたので、今回は最初からガチガチに対策したつもりです(このブログにスパムが来るかどうかは知りませんけど)。
今後スパマー達の動向次第では、また新たな対策を施さなければいけないかもしれませんが、当面このまま様子を見てみたいと思います。ここまで読んでくださった方々、長文・駄文にお付き合いくださり、ありがとうございました。
トラックバックスパム防止のため、末尾の XXXXXX 部分を上記画像の数字に置き換えてからご利用ください。お手数ですがご協力よろしくお願いいたします。
トラックバックスパム 【その2】 from Tadaoh Blog
全てのブログのデザインを一新しました。 夜明け頃、heteml側のMTのテンプ... [続きを読む]
Tracked on 2007年09月22日 05:15
TBスパム対策その1 from ひとかげwatch
あいもかわらず爆撃を受けてます。あたりまえか。 フィルタにひっかかったのを削除す... [続きを読む]
Tracked on 2007年10月17日 15:48

