nginx の課題

 

■課題リスト

1.nginx.confのディレクティブの記述順序性

2.nginxのパフォーマンスの影響

下記を実行したときのパフォーマンス劣化をapacheの場合と比較する

 rewriteなどで正規表現いっぱい実行、phpやperlモジュール実行、2048bit公開鍵でtls終端、複雑なフィルタ、basic認証、nginxのWAFモジュール、その他

3.nginx.confで変数(環境変数?)、if文を使う

apacheの環境変数

4.込み入ったバーチャルホスト名

5.allowディレクティブ、denyディレクティブ

6.geoディレクティブ

7.nginxのセキュリティ設定

下記のキーワードでgoogle検索

「JVN nginx」

「CWE nginx」

「jpcert nginx」

faviconへのリクエストをよしなに

Nginx導入時やること

Nginxセキュリティ設定

8.リバースプロキシの設定

Nginxによるリバースプロキシの設定方法

9.add_header、proxy-set-header

 - X-forward-for

 - X-Frame-Options(クリックジャッキング対策)

 - X-Content-Type-Options

 - nikto.plを使ったセキュリティテスト

https://qiita.com/bezeklik/items/1c4145652661cf5b2271

10.tomcatとの連携

 - nginxではajp12やajp13プロトコルでtomcatと連携することはできるか?

 - nginxのproxy機能とapacheのmod_proxy_httpモジュールの違い

 - connection pooling

 - キャッシュ

 - 同期/非同期

 - バックエンドへのリクエストに付け替えたり追加したり削除するヘッダ 

 X-Forward-for

 - クライアントからのレスポンスに付け替えたり追加したり削除するヘッダ

 location

 - cookie

 cookieに「secure」を付与

 - トランザクションに対するproxyの関与

 - persistenceに対するproxyの関与

11.キャッシュ

 - ブラウザ側にキャッシュさせる

https://qiita.com/kidach1/items/985efebba639713c562e

 - proxyキャッシュ設定

12.apacheのproxypathreverseの代わりの設定

 proxy-redirect

13.TLSとSNI

リバースプロキシサーバが名前ベースのvirtual hostにリクエストを振り分ける際には、リクエスト内のhostヘッダ内のFQDNを取り出す必要があるが、TLSで暗号化されたリクエストを復号化するのは振り分け先のvirtual host内で行うために、リバースプロキシサーバとブラウザの両者がSNIを有効にしてある必要があるって話。

14.X-Forward-forをつかったアクセスコントロール