宮川さんのエントリを参考にしつつMovableTypeのプラグインを作る勉強をしています。
で、せっかくなので作るのは実用的なプラグインがいいと思って考えたのがこれ。コメントやトラックバックがあった際に送信元のIPアドレスを調べて、どの国からポストされたか(ccTLD)をチェックする仕組みです。
まだチェック機能しかありません。チェックした結果はMTのログに吐き出されます。
CHEEBOWさんにもちょっと意見をもらったんですが、今後は「中国からのトラックバックははじく」「韓国からのコメントははじく」「ホワイトリストでIPアドレスを管理して特定のIPアドレスからの接続は許可する」などの機能をつけていきたいと思っています。
利用方法
1.IPアドレスとccTLDをひも付けるデータを取得
今回のアイディアやperlスクリプトも利用させていただいていますが、NAKAMURA MinoruさんのページからIPアドレスとccTLDをひも付けるデータをダウンロードしてきます。そのファイル(ipaddr_to_cctld.txt)を/tmp/ディレクトリ以下においてください。
NAKAMURA Minoru's Home Page
不正アクセスの発信地の国別統計をとろう!
ダウンロード ipaddr_to_cctld.txt
2.プラグインファイルの設置
以下のファイルをダウンロードします。
このファイルをmt-country-ip-check.plとリネームした上で、MT3.xのプラグインディレクトリに設置します。
mt-country-ip-check.txt
3.確認
(1)プラグインのロードの確認
MTのメインメニューに以下の記述があればプラグインのロードができています。
CountryIPCheck
Check Country via Remote IP Address (Version 0.01)
(2)動作の確認
コメントやトラックバックを実際にかけてみた後でMTのログを見てください。
以下のような記述があればIPアドレスのチェックに成功しています。
2005.02.24 16:27:08 66.151.149.25 TrackBack IP Address: 66.151.149.25 (US)
4.プラグインのアンインストール(削除)
MTのプラグインフォルダからmt-country-ip-check.plファイルを削除してください。
エラーチェックなど細かく入れていないので、あくまでもクイックハックの領域です。今後少しずつメンテナンスしていきます(^^)
ふにふに、色々やってるねぇ。
3じゃないと動かないのかなぁとちょっと見物中。
んぢゃまたぁ。
たいしたことをやってないので、MT2.6xでも動くようには作れるはずなんですが、手元に2.6xの環境がもう無いものですから(^^;)
プラグインを入れたとたんに、トラックバックもコメントもめっきり来なくなる不思議(笑)
ちゃんとコメントできてるから、動いてない訳ではないようだけど、、、(^^;)
ほほほほ、そんなもんだべー<待ち人(というか待ちスパムか)来たらずや。
まーIPで止められるよーになったら他の友人にも紹介しまくろーっと(笑)