nginxの初期にやった方がいい設定メモ
nginxを使ってみていざ実践になったときにやっといた方がいい設定などを見つけ次第に追記しておく自分用のページになります。
あったベースで追記していきます。追記したら下部に履歴を残します。
バージョン情報をヘッダやエラーページに出さない
server_tokens off;
エンティティタグ(ETag)
etag off;
そもそもetagの設定とはなんぞやと知らなかったのですがETag(エンティティタグ)と言うもので【iNode ファイル更新日時 ファイルサイズ】デフォルトではこの3つの情報をからタグを作成して変更がなければブラウザキャッシュを使ってねというサーバ・クライアントのやり取りに使われるもの。
作っているのがまだ静的コンテンツの単体サーバ構成なので設定しませんでした。
なにが問題かというと、WEBサーバが1台で動いていればいいのですがロードバランサーを使用して分散している場合に同じファイルを設置していてもiNodeが違うためタグが変わって効果が発揮されません。ですので更新日時とファイルサイズにするかTag自体を出さない設定のほうがいいようです。
iNodeを使わなければいいのですが方法がわからなかったので分かり次第記述。
クリックジャッキング対策
add_header X-Frame-Options SAMEORIGIN;
こちらは自サイトのフレームを他サイトに読み込ませない設定です
ページ内のフレームに自サイトのページを表示する
XSSフィルター機能
add_header X-XSS-Protection "1; mode=block";
1/0 ON/OFF blockが検知したら応答をブロックするということみたいです
Content-typeに一致しない処理を行わせない
add_header X-Content-Type-Options nosniff;
基本的にはContent-Typeにあったものしか実行されないのでXSSなど抑止に効果がある
セキュリティポリシーの指定
add_header Content-Security-Policy 記述
※こちらはサイトに合わせて変更するのでサイト公開などで対応することがあったら追記します
と個別の設定を書いていきましたが拡張モジュールでもできつらしいのでそちらは別途記事を書きたいと思います。
どうやらビルド時にモジュール指定するようで今そこは対応しなくていいと思うのでそうします。
初回記述
今回はどちらかと言うとセキュリティよりになっています。
コメント
コメントを投稿