こんなブログのコメント欄にも、それなりにスパムコメントがきます。
Akismetプラグインの統計情報によると、10月は1万2812件のスパム投稿がきていました。
無駄なスパムがひと月に1万以上もコメント欄に書き込まれ、ブロックされていては、多少なりともサーバーに負担がかかります。
そこで先月1日、「さすがにこれは何とかしないと」と考え、ある一つのスパム対策を行いました。
その対策が効果てきめんで、先月11月のスパムコメント数は以下のようにゼロになりました。
今回は、その方法を紹介したいと思います。
目次
スパムコメントをゼロにした方法
以前は、1万以上もあったスパムコメントを、ゼロにした方法は…。
ともったいぶってもしょうがないので方法を書くと、単にThrows SPAM Awayというプラグインをインストールしただけです。
このプラグインを作った、株式会社ジーティーアイによると、機能はシンプルで、「投稿文に日本語が含まれないものは投稿すらされずスルーするプラグイン」となっています。
通常Akismetのようなスパムブロックプラグインだと、「スパム投稿→ポストされる→表示ブロック」だったものが、Throws SPAM Awayを利用すると、「スパム投稿→ポストされない」となるようです。
コメント欄の表示
このプラグインをインストールすると、Wordpressのコメント欄には以下のように表示されます。
日本語が含まれない投稿は無視されますのでご注意ください。(スパム対策)
言葉の通り、外国語だけのコメントだと完全に無視されます。
スパム判定フィルタ
その他に、デフォルトで設定されているスパム判定フィルターは以下のようなものがあります。
- 日本語を含まないコメントははじく
- リンク含有数によってはじく(デフォルトで3つ)
- 空のダミーフィールドを生成しJavaScriptでの制御を行うことでスパム判定
- スパムちゃんぷるーDNSBLに登録されているIPからのコメントをはじく
- NGキーワード判定(要設定)
- IPアドレスによる判定(要設定)
- ブラックリストにIPが登録されているものははじく(要設定)
- ホワイトリストにIPが登録されているものは通す(要設定)
デフォルトでは、1~4のフィルタが機能します。
僕は先月、プラグインをインストールしただけなので、デフォルトの状態でスパムコメント投稿数をゼロにすることができました。
スパム数の推移
これで、このブログを始めてからのスパム数の推移は以下のようになりました。
これだけガッチリ遮断しても、日本語でのコメント投稿はしっかりと通ります。(中には誤判定もあるかもしれないけど)
9月にIE6からのアクセスを.htaccessで遮断することで、中国産スパムツールからの投稿を防ぐという対策を行って一旦効果は現れたのですが、その効果は1ヶ月も持ちませんでした。
他にもこれまで、いろいろな対策を行ってみたのですが、単にプラグインをインストールしただけで、コメントスパムが突然ゼロになったのは驚かされました。
ブログ開始以来初の0です。
まとめ
というか、スパムコメントのほとんどは、やっぱり外国からなんですね。これまで、外国(主に中国)から来るスパムが多い多いとは思っていましたが、このサイトに来るスパムのほとんどが外国からだったようです。
正直自分でも、ここまで効果があるとは思っていなかったので「外国からのスパムに悩んでいる」なんてサイトのウェブマスターは、インストールしてみることをお勧めします。
ただ、スパムコメントがスルーされたとしても、ツールなどからWordpressのcomments.phpにアクセスが来て、投稿動作が行われているのは変わりがありません。今後、スパムからのアクセスがより増えると、また別の対策が必要になってくるかもしれません。