Hurricane Electric からのアクセス集中。BadBotとして処理したの巻

スポンサーリンク

なんだか昨日24日のアクセスが多いので気になってログを調べた。

MRTGが示すところによると、どうやら24日の19:00台にアクセスが集中した模様。

加えてWebプロセスもガツ上がり。

なので、Webアクセスログの内「19時台」のアクセスを対象として接続元IPアドレスをカウントしてみた。おかげで夜ふかししちゃったけど、どうせこのままじゃぁ気になって寝れないし、明日休みだから許してね、自分。

[root@vps1 ~]# zgrep '2011:19:' /var/log/httpd/blog/access_log.1.gz | awk '{print $1}' | sort | uniq -c | sort -nr | head
    352 184.105.140.157
    158 ***.***.***.***
     92 ***.***.**.**
     59 **.***.***.**
     26 ***.***.***.***
     25 ***.***.**.***
     24 ***.***.**.***
     23 **.**.***.***
     23 ***.***.***.**
     21 **.***.***.**
[root@vps1 ~]#

上位にある「184.105.140.157」を含むログを見てみた。

[root@vps1 ~]# zgrep 184.105.140.157 /var/log/httpd/blog/access_log.1.gz  | head -n1
184.105.140.157 127.0.0.1 - - [25/Nov/2011:19:30:33 +0900] "GET /this_page_should_not_exist.fake HTTP/1.0" 404 11305 "-" "Mozilla/5.0 (X11; U; Linux; en-US) AppleWebKit/532.4 (KHTML, like Gecko) Qt/4.6.3 Safari/532.4" "-" "15576"
[root@vps1 ~]#
[root@vps1 ~]# zgrep 184.105.140.157 /var/log/httpd/blog/access_log.1.gz  | tail -n1
184.105.140.157 127.0.0.1 - - [25/Nov/2011:19:34:19 +0900] "GET /category/%25e3%2582%25bb%25e3%2582%25ad%25e3%2583%25a5%25e3%2583%25aa%25e3%2583%2586%25e3%2582%25a3/ HTTP/1.0" 404 11406 "-" "Mozilla/5.0 (X11; U; Linux; en-US) AppleWebKit/532.4 (KHTML, like Gecko) Qt/4.6.3 Safari/532.4" "-" "13314"
[root@vps1 ~]#

226秒間352回のアクセスがあった。
それに加えて「this_page_should_not_exist.fake」 というファイルへアクセスをしていると思われ、これはGoogleのBotが404ページを確認するために行うのと同様のアクセスだが、これだけでは不正であることは判断できないので、くれぐれも「this_page_should_not_exist.fakeへアクセスしている接続元は不正だ」とは判断しないようにして頂きたい。

WhoisでこのIPアドレスを調べてみた。加えてインターネット上で少し検索したところ「Hurricane Electric」という会社が発しているボットのようだ。こんなに短時間にアクセスされちゃサーバーも負荷が上がっちゃうよ!ってことで、「Hurricane Electric」君のIP帯をガッツリ拒否してあげることにしました。

IP帯は以下のURLを参考にしました。
http://www.webmasterworld.com/printerfriendlyv5.cgi?forum=11&discussion=4348490&serial=4348722

上記URLで確認できるIPアドレスをwhoisで確認し、「Hurricane Electric」 が利用するIPアドレスであることを確認してから、whoisで確認できたIP帯を一覧にしました。

64.62.128.0/17
64.71.128.0/29
65.19.128.0/25
65.49.0.0/24
66.220.0.0/19
72.52.64.0/24
74.82.0.0/24
184.104.0.0/17
209.51.160.0/24
216.66.0.0/30
216.218.128.0/24

上記IPアドレス帯を拒否しました。

Apacheでの制限方法は.htaccessを設置し以下のように記述してください。

Order deny,allow
# deny from Hurricane Electric bot
Deny from 64.62.128.0/17
Deny from 64.71.128.0/29
Deny from 65.19.128.0/25
Deny from 65.49.0.0/24
Deny from 66.220.0.0/19
Deny from 72.52.64.0/24
Deny from 74.82.0.0/24
Deny from 184.104.0.0/17
Deny from 209.51.160.0/24
Deny from 216.66.0.0/30
Deny from 216.218.128.0/24

なお私の場合、80番ポートでListenしているReverseProxyのSquid君にてアクセス拒否の設定を行いました。以下の様に「acl」を指定してやり、それから該当acl「Hurricane_Electric」に関しては利用しているcache_peerにアクセスできないようにしました。

acl Hurricane_Electric src 64.62.128.0/17 64.71.128.0/29 65.19.128.0/25 65.49.0.0/24 66.220.0.0/19 72.52.64.0/24 74.82.0.0/24 184.104.0.0/17 209.51.160.0/24 216.66.0.0/30 216.218.128.0/24
cache_peer_access myAccel1 deny Hurricane_Electric
cache_peer_access myAccel2 deny Hurricane_Electric

原因が分かったので、Counterize IIのテーブルから該当アクセスを削除し、
正常にアクセス数が表示されるようになりましたとさ。

おしまい。

コメント

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