― Web Technology and Life ―

Nginxでのあるあるアクセス制限方法~IP制限・ベーシック認証~

2013-10-17
みんな大好きウェブサーバーの基本設定のIP制限とベーシック認証の設定をNginx版でお届けします。IP制限とベーシック認証の合わせ技も含めてあります。

/server-status?autoにアクセスしてリソース監視

Apacheだと、mod_statusってやつを有効にするとかすると、

  • /server-status?autoにアクセスすると、リソース状況が分かる
  • 特定IPからのアクセスのみに限定する

とか設定がさくっとできるのです。とあるApacheのサーバーの/server-status?autoにアクセスした結果が以下。

Total Accesses: 45598
Total kBytes: 869752
CPULoad: .494453
Uptime: 495084
ReqPerSec: .0921015
BytesPerSec: 1798.94
BytesPerReq: 19532.1
BusyWorkers: 6
IdleWorkers: 14
Scoreboard: __W_____RRR_____RR__............................................................................................................................................................................................................................................

これを、Nginxでやるにはどうやるのって話。

stub_statusディレクティブをonに

Nginxでも簡単で、以下のように設定すれば大丈夫です。

   location = /server-status {
       stub_status on; #これがポイント
       access_log off;
       allow xxx.xxx.xxx.xxx;
       deny all;
   }

一応、IP制限とか、アクセスログに残さないとか入れてますがなくてもよかったりですね。

アクセス結果は以下の通り。

Active connections: 4 
server accepts handled requests
 9 9 5 
Reading: 0 Writing: 1 Waiting: 3 

表示違うから、監視システムの該当箇所書き換えなきゃだなー。

Nginx update_at : 2013-10-19T16:14:44
hirobanex.netの更新情報の取得
 RSSリーダーで購読する   
blog comments powered by Disqus