11月に入って早々、大規模な503エラーが発生してしまいました。期間中にご訪問いただいた方々にとっては、相当なストレスだったかと思います。申し訳ありません。
ついこの間も全く同じテーマの記事を投稿した矢先の出来事だったので、本っ当にウンザリしています。
とは言え、前回の503エラー発生時点で、それなりに対策は施しているわけです。
画像も普段から圧縮して使っているし、キャッシュプラグインも導入済。動画埋め込みについては、過去記事はともかく現在は多用を控えています。
「じゃあ、一体何が原因なんだ?」ということで、調査を続けることに。
503エラー発生時に役立つ "リソース情報" と "エラーログ"
当ブログの場合は『さくらインターネット』になるのですが、サーバコントロールパネル上から "リソース情報" と "エラーログ" を確認できます。
- リソース情報の確認方法:左サイドバー [運用に便利なツール] → [リソース情報] → [リソース使用状況 (HTTP503エラー発生状況)]
- エラーログの確認方法:左サイドバー [アプリケーションの設定] → [アクセスログの設定] → [エラーログの表示]
ご利用のレンタルサーバーによって場所や名前が異なるかとは思いますが、同じような機能は搭載されているはずです。
"リソース使用状況" で503エラー発生回数を確認しよう
まず、リソース使用状況で503エラー発生回数を確認してみたところ、11月6日に "34394回" という恐ろしい数値を記録しています。
- 10/30:27回
- 10/31:0回
- 11/01:1回
- 11/02:0回
- 11/03:7447回
- 11/04:3159回
- 11/05:6601回
- 11/06:34394回
11月3日で既にヤバめの数値に膨らんでいますが、その時点では運が良ければブログや管理画面にアクセス可能でした。本格的にアクセスできなくなったのは6日に入ってからですね。
この時点では「もしかして・・・バズった?」と淡い期待を持っていたのですが、その後エラーログを確認することでその想いは打ち砕かれることになります(詳しくは次項で)。
いずれにしても、バズっていようがバズってなかろうが、こんな簡単に落ちてしまうようでは安心してブログをお預けすることができません。そろそろレンタルサーバーのお引っ越しを検討する段階に来たのかもしれません。
"エラーログ" で503エラーの原因を特定しよう
前項でシャレにならないレベルの503エラーが発生したことは分かったのですが、これだけでは原因が全く見えてきません。
そこで、エラーログも確認してみることに。
すると、明らかに "同じIPアドレスからのアクセスが多い" ということに気付きました。個人情報になってしまいますので晒す訳にはいきませんが、ひたすら同じIPアドレスがエラーログに残っているのです。
ここで、ピンときました。「このIPアドレスだけ遮断すれば良いんじゃね?」と。
先日の記事では、海外からのアクセスを遮断できる ".htaccessファイルを編集する" という対処法をご紹介しました。
関連記事
要は、これを "国内向けのIPアドレス" に置き換えて考えるだけです。
IPアドレスを "逆引き" してみよう
とりあえず、"逆引き" をやってみることにしました。
逆引きとは、IPアドレスからホスト名を割り出す方法です。ちなみに、ホスト名から IPアドレスを割り出すことを "正引き" と呼びます。
- 逆引き:192.168.x.x → xxxxx.ne.jp
- 正引き:xxxxx.ne.jp → 192.168.x.x
参考リンクIPひろば 無料版IPアドレスからホスト名を取得(逆引き)|SEO、セキュリティ、調査ツールドメイン/IPアドレス サーチ 【whois情報検索】
※左サイドバーの [ドメイン/IP検索] をクリック
上記リンク先どれでも良いので、試しに IPアドレスを打ち込んでみてください(出てくる結果は全て同じです)。
すると、xxxxx.ne.jp や xxxxx.com などといった英数字が表示されます。これが、あなたが入力した IPアドレスの正体です。
ぶっちゃけ、IPアドレスをそのまま .htaccessファイルに記述しても構いません。
ただ、8~12桁の数字の羅列を正体を知らずにそのままブチ込むのも気が引けるというか・・・何となく気持ち悪いですよね。ですので私は、ホスト名を特定して記述することにしました。
.htaccessファイルに遮断したいIP(orホスト名)を記述してみよう
では、503エラーを起こした犯人をブログから追い出しましょう。
まず『FFFTP』などを使って、あなたが利用されているレンタルサーバーのディレクトリから .htaccessファイルをダウンロードしてください。index.php などと一緒のディレクトリに格納されているはずです。
次に『メモ帳』などのテキストエディタを開いて以下のコードを追記し、先ほどのディレクトリに上書きアップロードしてください。192.168.x.x や xxxxx.ne.jp の部分は、あなたが遮断したい IPアドレス/ホスト名になります。
※ #以降の日本語部分は、ご自身で分かりやすいように変更しても構いません
1 2 3 4 5 |
# アクセスを遮断する order allow,deny allow from all deny from 192.168.x.x # 192.168.x.x を遮断 deny from xxxxx.ne.jp # xxxxx.ne.jp を遮断 |
どこに追記しても良いとは思いますが、私は # END WordPress の下にしておきました。
参考記事
ホスト/IP 制限|ミケネコの htaccess リファレンス
大規模503エラーその後
さて、結果はどうなったかと言うと・・・
見ての通り、503エラーの発生回数が4回まで落ちています。0回だと気持ち良かったのですが、さすがにこれは誤差の範囲なので OK でしょう。
エラーログを見てみると、該当の IPアドレスの横に client denied by server(サーバーによって拒否されたクライアント)と書かれています。
厳密に言えば現在進行形で攻撃は続いていますが、こちら側から迎撃することで打ち消している状況だということですね。
レンタルサーバーに "アクセス数制限の解除" をお願いしよう
これ、忘れないでくださいね。
503エラーの原因を解消したら、ご利用中のレンタルサーバーにアクセス数制限の解除を依頼しましょう。
じゃないと、リソース情報ページのコメント欄に以下のようなログが表示され続け、いつまで経っても解除されません。
さくらサーバーの場合は、会員メニュー内の [サポート] タブ → [メールでのお問い合わせ] から申し出を行うことができます。
[サーバ名/ドメイン名/IPアドレス] の欄には、初期ドメイン(サーバコントロールパネル左上を参照)を入力しましょう。
[お問い合わせの種類] プルダウンメニューは "障害・メンテナンスについて" を選択し、その下にある [お問い合わせ内容] にて事情を説明してください。
以下、実際に私が問い合わせた文章を例文として載せておきます。ただし、同じような文章が増え過ぎて先方に「コピペじゃねーか!」と気分を害されるのもアレなので、きちんと言い回しは変えてください。
お世話になります。
さくらのレンタルサーバ △△プラン会員の◯◯です。現在、さくらインターネット様にて運用させていただいているウェブサイトが、503エラーにより閲覧できない状況となっております。
CGIについては、負荷の原因と思われるプログラムで現在使用していないものを削除しました。
また、急激なアクセス増については、エラーログから明らかに不審なIPを発見したため、個別にアクセス制限を設けております。
とは言え、他のさくらインターネットユーザー様のご迷惑になっているかと思いますので、他社レンタルサーバーへの引っ越しも視野に入れています。
ただ、当ウェブサイトへの訪問者様も閲覧できず困っていらっしゃるかと思いますので、もし可能であれば、ひとまず制限の解除をお願いしたいところです。
よろしくお願い致します。
こちら側の対処がきちんと出来ていれば、先方から以下のようなメールが返ってくるはずです。
ご対応いただき、誠にありがとうございます。
現時点ではご利用サーバへの影響も見受けられませんため、制限を解除いたしました。
しかしながら、今後同様にサーバに許容範囲を超える過負荷等が発生しました場合、再度制限が設けられる可能性がございます。
あらかじめ、ご了承くださいますようお願いいたします。
ご不明な点やご質問等ございましたら、本メール返信にてお問い合わせください。
今後ともさくらインターネットをよろしくお願いいたします。
やっぱり503エラーの正体晒します
今回は、該当の IPアドレスだけで1分間に約24回・1時間に約1400回の 503エラーが発生していたことになります。そりゃブログも落ちるわけだ。
その後も「ホスト名を見る限りだと、ボットの仕業では無さそうだし・・・」と調査を続けていたら、思わぬオチが待っていました。
上のほうで "個人情報なので晒すわけにはいかない" と書きましたが「今回のケースの場合、逆に晒したほうが被害拡大を防げるんじゃないか?」と思ったので、やっぱり晒します。
今回の 503エラーの正体は "丸の内OCN" です。末尾が "marunouchi.tokyo.ocn.ne.jp" となっているホスト名のことですね。
参考リンク
「2ちゃんねる」等掲示板サイトの書き込み規制に対するOCNの見解および対応について|OCN
このホスト自体が元々、荒らしや悪徳業者の温床だったようですね。
それにしても、騒動の発端が2005年だとは思いもしませんでした。こんなに歴史が長かったとは・・・
最後に
これ、一番の被害者は "罪の無い東京都内のOCNユーザー" なんですよね。
もっとも、この件を知っている東京在住の方は最初っから OCN を避けて別のプロバイダを契約するみたいですが・・・普通のユーザーはこんなもん知らないわけで。
アクセス規制した側がこんなことを言うのも矛盾していますが、あまりにも可哀想過ぎる。
かと言って、たった1つのIPのせいで、せっかく当ブログを読みに来て下さる方々をトラブルに巻き込み続けるわけにはいきませんからね。これはもう、犠牲になってもらうしかありません。
ともあれ、503エラー被害に遭われたブログ運営者の方は "荒らし" も疑ってみてください。ご自身に落ち度が無い 503エラーもあるということです。
そして、今後ご自宅にインターネットを引こうとお考えの東京在住の方は、OCN だけは避けておいたほうが良いかもしれません・・・という、地方の OCNユーザーの意見でした。
最新情報をお届けします