Memo

メモ > サーバ > 各論: トラブル対応例 > サーバが重い・サーバに繋がらない 9

■サーバが重い・サーバに繋がらない 9
Zabbixからサーバについての警告 確認すると、突然ロードアベレージが上がっており、大量のトラフィックも記録されている CPUはuser(アプリケーション)によって大量に使用されている WordPressを使っているサイトだったので、大量アクセスが原因と思われる アクセスログを見ると、以下ようなアクセスが大量に記録されている ツールによるイタズラと思われる
# vi /var/log/httpd/access_log
10.2.0.253 - - [08/Sep/2017:15:27:27 +0900] "GET /course/tennis/blog/detail.php?id=7547 HTTP/1.1" 200 34005 "http://www.example.com/course/tennis/blog/?paged=17" "Wget/1.14 (linux-gnu)" 340873 52.196.209.177 http 10.2.0.253 - - [08/Sep/2017:15:27:27 +0900] "GET /course/tennis/blog/detail.php?id=1402 HTTP/1.1" 200 34112 "http://www.example.com/course/tennis/blog/?paged=17" "Wget/1.14 (linux-gnu)" 342551 52.196.209.177 http 10.2.0.253 - - [08/Sep/2017:15:27:27 +0900] "GET /course/tennis/blog/detail.php?id=7546 HTTP/1.1" 200 33267 "http://www.example.com/course/tennis/blog/?paged=17" "Wget/1.14 (linux-gnu)" 327939 52.196.209.177 http 10.2.0.253 - - [08/Sep/2017:15:27:28 +0900] "GET /course/tennis/blog/detail.php?id=7545 HTTP/1.1" 200 33821 "http://www.example.com/course/tennis/blog/?paged=17" "Wget/1.14 (linux-gnu)" 337142 52.196.209.177 http 10.2.0.253 - - [08/Sep/2017:15:27:28 +0900] "GET /course/tennis/blog/detail.php?id=7544 HTTP/1.1" 200 36823 "http://www.example.com/course/tennis/blog/?paged=17" "Wget/1.14 (linux-gnu)" 381773 52.196.209.177 http 10.2.0.253 - - [08/Sep/2017:15:27:28 +0900] "GET /course/tennis/blog/detail.php?id=7543 HTTP/1.1" 200 33740 "http://www.example.com/course/tennis/blog/?paged=17" "Wget/1.14 (linux-gnu)" 333276 52.196.209.177 http 10.2.0.253 - - [08/Sep/2017:15:27:29 +0900] "GET /course/tennis/blog/detail.php?id=7542 HTTP/1.1" 200 35198 "http://www.example.com/course/tennis/blog/?paged=17" "Wget/1.14 (linux-gnu)" 352983 52.196.209.177 http 10.2.0.253 - - [08/Sep/2017:15:27:29 +0900] "GET /course/tennis/blog/detail.php?id=7541 HTTP/1.1" 200 33783 "http://www.example.com/course/tennis/blog/?paged=17" "Wget/1.14 (linux-gnu)" 320295 52.196.209.177 http 10.2.0.253 - - [08/Sep/2017:15:27:30 +0900] "GET /course/tennis/blog/detail.php?id=7540 HTTP/1.1" 200 33501 "http://www.example.com/course/tennis/blog/?paged=17" "Wget/1.14 (linux-gnu)" 327385 52.196.209.177 http 10.2.0.253 - - [08/Sep/2017:15:27:30 +0900] "GET /course/tennis/blog/detail.php?id=7539 HTTP/1.1" 200 33791 "http://www.example.com/course/tennis/blog/?paged=17" "Wget/1.14 (linux-gnu)" 334674 52.196.209.177 http
http://www.iphiroba.jp/ でIPアドレスを調べると以下の内容だった どこかの人がAWSに立てたEC2サーバと思われる IPアドレス: 52.196.209.177 ホスト名: ec2-52-196-209-177.ap-northeast-1.compute.amazonaws.com 国: 日本 都道府県: 東京 市区町村: 新宿区 ツールを名指しでアクセス制限してみた 即座に負荷が減った
# vi .htaccess
BrowserMatch "Wget/1.14 (linux-gnu)" bad_bot Order Allow,Deny Allow from all Deny from env=bad_bot
ロードバランサー環境でIP制限する方法などは Defense.txt を参考に

Advertisement