hoall.nginx-proxy

ロール nginx-proxy

このロールは nginx をプロキシサーバーとしてインストールします。設定は HTTPS のみの使用に適していますので、SSL 証明書の設定を忘れないでください。dhparam は新しく生成されたバージョンに置き換えられます。この生成はインストール中に行われます。また、このロールはプロキシサーバー用の便利なデフォルト設定も提供します。

セキュリティレベルは Mozilla 財団の定義に基づく modern です(詳細については彼らのジェネレーターを参照してください:https://mozilla.github.io/server-side-tls/ssl-config-generator/)。この設定はほとんどのシステムに適合するはずです。生成されたテンプレートは Ubuntu 16.04 のものです。HSTS が有効になっています。この設定は ssllabs.com で A+ の評価を受けています。

デフォルトのウェブサイトは / にマッピングされています。このロールを使用して、Tomcat サーバーへの接続を抽象化し、安全にしています。

改善点があれば、プルリクエストを作成してください。

要件

SSL 証明書と openssl(dhparam 用)。良いロールを探している場合は、geerlingguy.certbot をチェックすることをお勧めします。

ロール変数

注意:上書きする必要がある変数は大文字で記載されています。

名称 デフォルト値 説明
NP_SERVER_NAME NONE 'サーバー(および場所)がリッスンする名前を含む文字列。例:"example.com www.example.com"'
NP_SSL_CERTIFICATE NONE 'SSL 証明書へのパス(fullchain.pem)。例:/etc/letsencrypt/live/example.de/fullchain.pem'
NP_SSL_CERTIFICATE_KEY NONE 'SSL 証明書の秘密鍵へのパス(privkey.pem)。例:/etc/letsencrypt/live/example.de/privkey.pem'
NP_PROXY_PASS NONE '場所へのパス。例:"http://127.0.0.1:8080/example/"'
NP_REWRITE NONE 'ウェブサイト用の書き換えルール。例:"^/example(.*)$ $1 last"'
np_worker_processes {{ ansible_processor_count }} 'nginx が使用すべきワーカープロセスの数。デフォルトはコアごとに1つ、ansible セットアップによって決定されます。'
np_worker_connections 1024 '各ワーカープロセスの接続数(バックエンドサーバーを含む)。ブラウザは速度を上げるために複数の接続を開くことに注意してください。'
np_keep_alive_timeout 15 'アイドルクライアント接続のタイムアウト(秒単位)。'
np_client_max_body_size 10m 'クライアントのリクエストボディの最大許可サイズを指定します。"Content-Length" リクエストヘッダーフィールドで指定。'
np_client_body_buffer_size 10k 'クライアントリクエストボディを読み取るためのバッファサイズ。'
np_proxy_connect_timeout 10 'プロキシサーバーとの接続を確立する際のタイムアウトを定義します。このタイムアウトは通常75秒を超えることはできません。'
np_proxy_send_timeout 10 'プロキシサーバーへのリクエスト転送のタイムアウト(秒単位)。'
np_proxy_read_timeout 10 'プロキシサーバーからの応答を読み取る際のタイムアウト(秒単位)。'
np_proxy_buffers "32 8k" 'プロキシサーバーから受け取った応答の最初の部分を読み取るためのバッファのサイズを設定します。この部分には通常、小さな応答ヘッダーが含まれています。デフォルトでは、バッファサイズは1つのメモリページに等しく、プラットフォームに応じて4K または 8K です。サイズを小さくすることも可能です。'

注意:このドキュメントの一部は公式の nginx ドキュメントからのものです(https://nginx.org/en/docs/)。ソースとドキュメントは2条項BSDライセンスの下に配布されています。

自分のニーズに応じて変数を修正してください。

依存関係

例 プレイブック

- hosts: servers
  roles:
     - { role: hoall.nginx-proxy, NP_SERVER_NAME: "example.com www.example.com", NP_SSL_CERTIFICATE: /etc/letsencrypt/live/fullchain.pem, NP_SSL_CERTIFICATE_KEY: /etc/letsencrypt/live/privkey.pem }

ライセンス

BSD

著者情報

Felix Paetow fhmpaetow@fsfe.org

プロジェクトについて

Installation, configuration and hardening of a nginx proxy with one website.

インストール
ansible-galaxy install hoall.nginx-proxy
ライセンス
bsd-2-clause
ダウンロード
118
所有者