Nginx のレスポンスヘッダの Server のバージョンを非表示にする

Nginx のデフォルトの設定だと、レスポンスヘッダに Nginxのバージョンが含まれているので、セキュリティ的には外した方がベターです。

Server nginx/0.8.53

みたいになっています。

設定で、下記のように server_token off; と書けばバージョンが外れて

Server nginx

という表記になります。デフォルトの4xx, 5xx のページの下部にあるNginxの表記からもバージョンが外れます。古いバージョンだと、エラーページのバージョンは外れないかも。

http {
    server_tokens off;
    ...
}

とすれば全体で有効になり、server ディレクティブの中に記載すれば、その server のみで非表示になります。

Nginx のレスポンスヘッダの Server のバージョンを非表示にする

Nginx で IPアドレスによるアクセス制限

 Nginx がついに version1.0.0 でリリースされましたね!Nginx は速いのと設定ファイルが書きやすいので大好きです。

 Nginx で特定IPアドレスからのアクセスを許可するには、allow, deny を使う。初めにマッチしたところで評価が終了するようなので、deny all; と先頭に書いてしまうと誰も見られなくなってしまうので注意。サブネットでの指定も、単一IPアドレスでの指定もいけます。

server {
    listen       80;
    server_name  ecpplus.net;
 
    allow 192.168.1/24;
    allow 111.111.111.111;
    deny all;
    ...
}

のようにします。location ディレクティブの中に入れても大丈夫です。 /admin 以下のみ制限を掛けたい場合は、下記のようにします。

server {
    listen       80;
    server_name  ecpplus.net;
 
    location ~^/admin {
        allow 192.168.1.10;
        deny all;
    }
    ...
}
Nginx で IPアドレスによるアクセス制限