Nginxのセキュリティ対策をする (ディレクティブ編)

随時更新します。

X-Content-Type-Options

add_header X-Content-Type-Options nosniff;

ブラウザはダウンロードしたコンテンツの種類を判定するのにContent-Typeヘッダを使います。
Internet Explorerは、さらにコンテンツの内容もチェックして、コンテンツの種類を判定します。
この動作は Content Sniffing と呼ばれます。
text/plain であっても、HTML と JavaScript が書かれているとブラウザがそれを実行してしまうことがあり、キュリティホールになってしまう可能性があります。
このため、Content Sniffing を 使わないように設定します。

server_tokens

server_tokens off;

攻撃者が侵入を試みる際、サーバーのOSや使用しているソフトウェアの情報を収集し、セキュリティホールになるような脆弱性を見つけようとします。
Nginxのバージョンを非表示に変更し、攻撃されるリスクを減らします。