[解決]DoS攻撃を受けていたのでIP制限した
数日前からこのブログのサーバが重い…
かと言って爆発的なアクセス数があるかというとそうでもない。
まあ普通にアクセスしてきているなら、キャッシュを返しているはずなので、そこまでサーバに負荷がかかる訳ではない。今まで記事がバズった時でもまあ普通にこなせているのに何故なんだよ…って思いつつも忙しかったので放置していたのですが、ちょっと時間が出来たので見てみたらこんな感じになってた。
[code]==> /var/log/nginx/geeorgey.com.access.log <==
aaa.aaa.aaa.aaa - - [30/Jul/2015:21:55:49 +0900] "POST /wp-login.php HTTP/1.0" 403 3377 "-" "-" "-"
bbb.bbb.bbb.bbb - - [30/Jul/2015:21:55:49 +0900] "POST /wp-login.php HTTP/1.0" 403 3376 "-" "-" "-"
bbb.bbb.bbb.bbb - - [30/Jul/2015:21:55:51 +0900] "POST /wp-login.php HTTP/1.0" 403 3376 "-" "-" "-"
aaa.aaa.aaa.aaa - - [30/Jul/2015:21:55:51 +0900] "POST /wp-login.php HTTP/1.0" 403 3377 "-" "-" "-"
bbb.bbb.bbb.bbb - - [30/Jul/2015:21:55:54 +0900] "POST /wp-login.php HTTP/1.0" 403 3376 "-" "-" "-"
aaa.aaa.aaa.aaa - - [30/Jul/2015:21:55:54 +0900] "POST /wp-login.php HTTP/1.0" 403 3377 "-" "-" "-"
bbb.bbb.bbb.bbb - - [30/Jul/2015:21:55:57 +0900] "POST /wp-login.php HTTP/1.0" 403 3376 "-" "-" "-"
bbb.bbb.bbb.bbb - - [30/Jul/2015:21:55:59 +0900] "POST /wp-login.php HTTP/1.0" 403 3376 "-" "-" "-"
aaa.aaa.aaa.aaa - - [30/Jul/2015:21:56:02 +0900] "POST /wp-login.php HTTP/1.0" 403 3377 "-" "-" "-"
bbb.bbb.bbb.bbb - - [30/Jul/2015:21:56:06 +0900] "POST /wp-login.php HTTP/1.0" 403 3376 "-" "-" "-"[/code]
Oh...ロードアベレージも常時10超えという感じなのでmysqlが落ちたりしてた。
wp-login.phpにPOSTでアクセスが来ていてキャッシュは無意味。そりゃ負荷も上がるわ。と言うことでこの2つのIPをBANしたい。
基本ですね。iptableです。
[code]iptables -I INPUT -s aaa.aaa.aaa.aaa -j DROP
iptables -I INPUT -s bbb.bbb.bbb.bbb -j DROP[/code]
とやって2つのIPをアクセス禁止にしたら、ロードアベレージが無事に下りました。めでたしめでたし。