【スパム対策】迷惑なbotへの対策について

2021年8月8日

アクセスログを見ていると、わけのわからないボットやクローラーが大量にアクセスしてきています。

ほとんどがSEO関連の会社のbotですが、海外のものが多く、あまり有用性があるとも思えません。

場合によっては、ハッキングや改ざんを目論む、悪意のあるユーザーによる大量アクセスもあります。

また、過剰なアクセスは、通常のユーザーに対して503エラーを出す原因にもなるので、対策をしたいところです。

今回は、プラグインを使った対処法を紹介します。

プラグインを使わない方法については、目次から「プラグインを使わず、htaccessでアクセス拒否・除外する方法」を参照。

Stop Bad Bots

今回は、stop bad botsというプラグインを使います。

 

このプラグインで、迷惑なボットやクローラー以外にも、迷惑なIPアドレスやリファラースパムにも対応しています。

使い方

まずはインストールし、有効にします。

まずは基本的な設定からします。様々な細かい設定がありますが、今回は私が使っている設定を紹介します。

 

まずは、settingsをクリックします。

 

General Settingsに進みます。

 

そして、上から3つの設定をします。

上から、迷惑と見なされたbot、IPアドレス、リファラーのアクセスを拒否するか設定できます。

 

アクセス拒否されるbot、IPアドレス、リファラーのリストの一覧はそれぞれ下記のように並んでいるadminバーの中のBad Bots Table、
Bad IPs Table、Bad Referer Table

で確認できます。

また、特定のIP、bot、リファラーのアクセスを許可することができます。

activateにするとアクセス拒否が有効になり(statusはEnabled)、deactivateにするとアクセス拒否が解除(statusはDisabled)されます。

 

Add Bad Bot to Table
Add Bad IP to Table
Add Bad Referer to Tableでは、拒否するbot、IPアドレス、リファラーを手動で追加することができます。

注意点

google botやMSN botなどの検索エンジンのbotがブロックされることはありませんが、一部の検索エンジンではブロックされる場合があるので、手動での設定が必要です。例として、DuckDuckGoやyandex、baidu(百度)などが挙げられます。

 

また、seo関係のサービスを利用している場合、自動バックアップサービスを利用している場合などもそのサービスのbotやクローラーがアクセスできなくならないように注意しましょう。 

 

尚、何らかの原因で、正常に作動しない場合があります。その場合は、別のプラグインも紹介していますので、試してみて下さい。

まとめ

これまでも、迷惑なアクセスへのブロックの方法について紹介してきましたが、今回のプラグインはかなり広範囲にブロックすることができます。大抵の迷惑なアクセスはこのプラグインで拒否できると思います。

これまでの類似の記事

 

ただ、今回のプラグインは必要なものまでブロックされる可能性があるため、設定は慎重にすべきです。

 

htaccessで、特定のIPアドレス、bot、リファラー、ホスト名などのアクセスを拒否することもできるので、心配は方はこちらの方法をお勧めします。

プラグインを使わず、htaccessでアクセス拒否・除外する方法

SetEnvIf User-Agent “任意のbot名" jogai

order Allow,Deny Allow from all Deny from env=jogai

こちらを.htaccessに記載します。

参照サイトhttps://parudou3.com/nginx/818/

 

迷惑なbotの例

MJ12bot、SiteExplorer、Robot、GrapeshotCrawler、OppO、SemrushBot、proximic、spider、TurnitinBot、MegaIndex、bidswitchbot、SMTBot、ltx71、integralads、jet-bot、trendictionbot、Mappyなど

 

その他、参考になりそうなサイトを紹介しておきます。

IP又はホスト名でアクセス拒否する方法

リファラーでアクセス拒否する方法