サイトが見れない
ちょうど1週間前になるのですが、当サイトを閲覧しようとしてもHTTP 503(Service Unavailable)が表示される状態になっていました。
「サービス利用不可」の状態を意味するらしいです。
超人気サイトを運営していてサーバーの最大データ転送量を超えた場合とか(いっぱいアクセスされるようなサイトですね)、サーバー側のメンテナンスなどで一時的に閲覧が不可になることはあるようですが、当サイトはそれほど人気があるわけでもないのでサーバーの最大データ転送量を超えるなんてことはあり得ないです。
また1週間前の当サイトにアクセスできなくなった時間帯は日中で、サーバー側ではメンテナスも行われてはいませんでした。
サイトを更新するためにログイン
おかしいなと思ったのは、実はサイトを更新しようとログインを試みたときでした。
当サイトはWordpressを使っているのですが、ログイン画面を表示させようとすると
500 Internal Server Error
と表示されてログインすらできません。
これは「サーバー側の内部エラー」を表していて、アクセスが集中し過ぎているとき・存在しないコンテンツへのアクセスしようとしているとき・サイトでCGIを使っているときにそのCGI上でバグが発生しているとき・htaccessファイルに問題が発生しているときなどに表示されるらしいです。
先にも書いた通り、当サイトはそれほど人気はありませんのでアクセスが集中なんて夢のようなことはまずない。
存在しないコンテンツって、ログイン画面を出そうとしてるだけなのでこれも関係ない。
CGIというプログラム(?)はメールフォームなどで使っているだけで、ログイン画面は関係ない。
htaccessファイルに少しは記述していますが、めったに触ることがないですしねぇ。
これってDoS攻撃??
当サイトはさくらインターネットのスタンダードを使用していて、容量は100GB、転送量は1日80GBで月額515円(消費税8%を含む)です。
月に515円で安定していて使いやすいので、2005年の8月に契約してから1度もサーバーを変えることなく利用しています。
でも今回のようなことは初めてで、頭の中をサーバーを移転しようかなという考えがよぎりましたよ。
まずはさくらインターネットのサーバコントロールパネルに入ってみようとログイン。
何の問題もなくログインできました。
どこを見たらいいのかわからなかったので、ググりながら“アクセスログの設定”から“エラーログ”を見ればよいとのことで見てみると
直近の1000件のエラーが見れるのですが、16時14分10.786秒から16時15分33.094秒の間に1000件ものエラーが。
ログに残っていたIPアドレスとAH01797というエラーコード(?)を調べてみることに。
AH01797っていうのはサーバの設定によってアクセスが拒否されたことを表すもので、画像を置いてあるっぽいアドレスに1分間に1000回ものアクセスがあったことがわかります。
そしてIPアドレスを逆引きで調べてみるとキルギスタン!
ちょいと怖くなって.htaccessに
# 荒らしIPを拒否
order allow,deny
allow from all
deny from 拒否するIPアドレスを記入
と設定してサーバコントロールパネルにログインできるようになり、サイトも普通に見ることができるようになりました。
DoS攻撃の意味をもう一つ理解していませんが(笑)、たぶんこういう事をいうのですよね?