リバースプロキシ(reverse proxy)とソースナット(SNAT)

nginx

オンプレ環境でWebサーバをリバースプロキシやロードバランサーで運用しているとき,Webサーバやリバースプロキシ・ロードバランサーのネットワーク配置的にワンアーム型になってしまうときがあります.BIG-IPのような高級なロードバランサーなどを利用している場合は,ソースナット(SNAT)とX-Forward-For 設定で解決してきました(その他の方法もあります)が,Linuxのnginxのリバースプロキシを利用していてワンアームになったらどのような設定が必要なのでしょうか?

ちょっとネットを探ってみましたが簡単に見つからなかったので解決策を探してみます.

サーバ構成

リバースプロキシ1台,Webサーバ2台,同一のサブネットワーク上に存在することとします.

基本的なアイデア

基本的なアイデアは以下のとおりです.

  • DSRは利用しない
  • リバースプロキシが動作しているサーバでSNATを行う
  • X-Forward-For ヘッダを付加する
  • HTTPSの終端はリバースプロキシで行う
  • サーバサイドHTTPS通信もできたら行う

(執筆中です)

コメント

タイトルとURLをコピーしました