[WordPress]スパムコメント撃退に挑戦

Web技術

こんにちは。とみーです。ブログ立ち上げから早9ヶ月ほど。更新頻度はかなり減ってしまっているのですが、その間も継続して悩まされていたことがあります。それはスパムコメント。しばらく放置していたのですが、増えてきたので時々一括削除するようになりました。が、それでも止まないために今回撃退するために何か手は無いものかと調べてみました。

スパムコメントとは?

そもそも「スパムコメント」とは何を指しているのか?ブログの各投稿に対して、悪意のあるユーザが機械的に送信する、迷惑なコメントのことです。

実際の例

例えば実際に来たコメントはこんな感じです。

・I think this web site holds some rattling wonderful information for everyone : D. Rebeka Chevalier Huba
Klement
・I have been checking out some of your posts and i must say clever stuff. I will surely bookmark your site. Bernete Eugenio Schach
・Yessssssssssss. Undeniable Awesome food. Definitely worth trying. Andreana Vincent
・Hi there, I do think your web site could be having browser compatibility issues. Catina Ulysses Chryste

これらを直訳すると「このウェブサイトは皆のために、素晴らしい情報がたくさんあると思います」など、一見オーナーとしてはくすぐったくなるようなおだてのメッセージもあれば、「わぁお!否定できない素晴らしい食べ物。 絶対に試す価値があります」や「どうもー。あなたのウェブサイトでブラウザの互換性の問題が発生している可能性があると思いますよ」など意味不明だったり不安を煽ったりするものもあります。

なぜこれらがスパムと言えるかというと、以下の共通点があるからです。

  • 日本語ブログなのにコメントが全て英語
  • コメント内容が記事の内容と合っていない
  • コメント主のウェブサイトURLがほぼ同一
  • コメント主のemailアドレスが全てフリーアドレス(@gmail.comや@yahoo.comや@msn.com)

こんな感じのコメントが多い日で10件も来ていました。。僕のブログサイトはまだSEOとか宣伝できてないからほとんど読まれていないはずなのに。。

想像ですが、コメント主たちの目的としては、

1)自分たちのWebサイトにアクセスを流入させるため(ページにコメントが掲載されたら、コメント主の名前部分がサイトURLへのリンクになる)

2)コメントに返信したユーザのメールアドレスを収集してリストを作るため、というのがあるのでしょう。

確かに送る側としては、コメント機能のあるWordPressの投稿ページだということがわかれば、フォームの送信の方法は同じなので、ロボットプログラムを組んで用意したコメントのパターンを自動に大量送信することは可能ですね。

本来のコメントの使い方

WordPressでブログを開設すると、「コメント」という機能がデフォルトでON(利用可)になっています。その場合、このページの下部のように、各投稿ページに「コメントを書き込む」ボタンが出て、閲覧したユーザはそこをクリックすることで、サイトのオーナーや記事の作成者向けのコメントを書くことができます。

目的としては、サイトのオーナーへの励ましや質問を皆に見える形で投稿して、コミュニケーションを活性化したり、同じような疑問のあるユーザにも役立てるようにあえて公開質問にしたりするためのものです。

管理者はWordPressのダッシュボードで、コメントを「そのままリアルタイムにページに掲載する」か、「管理者により承認されてから初めて公開する」のかを選ぶことができます。僕のサイトの場合は、承認制だったので、これらのスパムで実際の記事ページが荒らされることはなかったのですが、まぁ「本当に好意的なユーザからコメント来たのかな?」と期待して確認したらスパムだったガッカリ感と、掲載を否認してゴミ箱に写した後、一括削除するような作業の手間に苛立つものがありましたね。。

スパムコメント対策

では、いよいよ対策を考えていきます。今回以下のサイトを見つけ、大変わかりやすかったので参考にさせていただきました。

WordPressのスパムコメントを阻止する方法(ビルトイン機能、スパム対策プラグイン、キャプチャ、WAF)

WordPressのスパムコメントを阻止する方法(ビルトイン機能、スパム対策プラグイン、キャプチャ、WAF)
スパムコメントは非常に煩わしく、時間の浪費につながります。さらに、あなたのサイトの評判に悪影響を及ぼす可能性もあります。今回は、WordPressのスパムコメントを阻止する方法をご紹介します。

その結果、方針としては以下のようです。コメント機能を外すという選択肢は外してあります。

  1. スパム対策のプラグインを導入してブロックする
  2. コメント送信時に訪問者がロボットではなく人間であることを証明するためのCAPTCHA機能を導入する
  3. コメントフォーム自体をWordPress標準のもの以外のに変更する

この内、3について、まだ本格的にブログ運営しているわけでもフォーム機能を多用しているわけでもないので、有料の別プラグインを導入するまではないと選択から外しました。また、2については、近年多く見かけるフォーム送信前にユーザに画像認識させたり、チェックボックスに入れさせたりするやつ(ボットにチェックは入れられない)で無料で実現できるのですが、こちらはブログサイト全体として、今後メルマガ申込や問い合わせフォームを本格運用する際に考えたいと思い、今回は1の方法で実現することにしました。

設定方法

今回「スパム対策のプラグインを導入してブロックする」方針に決めて、検索した結果、「Akismet Anti-Spam (アンチスパム)」というプラグインが一番有名で実績がありそうでしたので、こちらを利用させていただくことにしました。コメント発生時に、蓄積したスパム情報データベースに問い合わせて、スパムと認識した場合は自動で別フォルダに除外してくれるようです。

導入時の説明にもあるのですが、個人ブログでは無料になっています。企業および商用サイトは有料サブスクリプションを利用する必要があるとのこと。ここは個人ブログなのでありがたく無料で利用させていただくことにして、「プラグイン」>「新規追加」でインストールしました。

手順としては、プラグイン一覧で、有効化されたAkismet Anti-Spamの「設定」をクリックすると、まずは、APIキーを発行する先のメールアドレスの入力になります。正しいメールアドレスを設定すると、図のようにメールで確認番号が送付されます。

その番号を同設定の中で入力すると、今度は12桁ほどのAPIキーがメールで送られてきます。

さらにそのAPIキーを、同設定画面の「API キー」欄に入力する事で、毎回コメントがあった際に、一旦Akismet Anti-Spamのサーバ側に問い合わせるようになるので、スパム判定をしてくれるわけです。

効果

数日後、まだ設定をしてそんなに経っていないのですが、確かにダッシュボードの「コメント」メニューを見ると怪しいコメントは一切なく、「スパム」フォルダにブロックされたコメントが入っていました。内容を見ても、海外からの、スパムコメントで間違いありません。

これで当面はスパムコメントに悩まされないですみそうです。

まとめ

ブログ開設というと、いろいろSEOとかアクセス解析とか問い合わせフォームとか、集客率やユーザ利便性をあげる「攻め」の機能を充実させるイメージがありましたが、今回のような悪意のあるユーザをブロックしたり、セキュリティを向上させたりといった「守り」の仕組みも重要だなと感じました。

今後も攻めと守り、どちらも重視しながら、健全なブログ運営を続けていこうと思います。

読んでいただきありがとうございました。

コメント

タイトルとURLをコピーしました