delegate SSLリバースプロキシチューニン゜
delegateをSSLリバースプロキシとして動作させる。
パフォーマンス? も考慮して以下のような設定を実施した。
1. DGROOT=/usr/local/delegate 2. STLS="fcl" 3. -P192.168.0.100:443 4. SERVER=http 5. MOUNT="/* http://192.168.0.1:80/* nvserv=-thru,vhost=-*" 6. MOUNT="/favicon.ico = onerror" 7. REACHABLE=192.168.0.100 8. RELIABLE="*" 9. CERTDIR=/etc/ssl/private/delegate 10. LOGFILE="" 11. PROTOLOG=${PORT}.${PROTO}.log 12. HTTPCONF="add-qhead:X-Forwarded-For:%a" 13. HTTPCONF="add-qhead:HTTPS:ON" 14. HTTPCONF="methods:*" 15. HTTPCONF=max-cka:512 16. HTTPCONF=max-ckapch:256 17. MAXIMA=delegated:1024 18. TIMEOUT=io:10,shutout:10 19. URICONV="" 20. DELAY=reject:0,unknown:0 21. DGSIGN="x.x.x/x.x.x" 22. ADMIN=postmaster@hoge.jp
1. 一時ファイルディレクトリ? を一つにまとめたい場合は、DGROOTを定義してベースとなるディレクトリを決? する。
2. “fcl”とすれぜ SSL通信のみ許可、”-fcl”とすれば可能な場合のぜ SSL通信を使用する。
3. 起動オプション「-P」DeleGateぜ Listenアドレ゜ &ポートを指定。
4. クライアントとの通信で使用するプロトコルを指定。
5. nvserv=-thruとすることで、クライアントからぜ Hostヘッダをそのまま渡せる。(NamedVirtualhostに対応) また、,vhost=-*とすることぜ REFERERの書き朏 えを防止する。
6. delegateの自動生成する蛙アイコボ (アドレスバー左に表示されるアイコボ )の? 能を停止する。
7. 指定したIPアドレスへのリクエストのみ許可する。
8. 指定したIPアドレスのクライアントからのリクエストのみ許可する。
9. SSL証昜 書配置ディレクトリ、配下ぜ me.pemを配置。シンボリックリンクでも可。
10. デフォルトでデバッグレベルの大釜 ログを出力するので抑止。
11. プロトコルログ。内容はアクセスログ。不要ならぜ “”を指定。
12. プロキシ先のサーバにクライアントぜ IP情報を引き渡したい場合に使用するヘッダ情報。X-Forwarded-For:(クライアントIP)。
13. プロキシ先のアプリケーションぜ HTTPS通信であるという情報を伝えるためのヘッダ情報。HTTPS:ON。
14. デフォルトでぜ HTTPメソッドOPTIONS,GET,HEAD,POST,PUTのみ許可。プロキシ先で制御するなら「*」で全て許可する。
15. キープアライブ中の単一ホストからの中継要求の最大数。サーバ負荷が高い場合は「max-cka:0」としてキープアライブは無効とする。
16. クライアントホスト単位でのキープアライブ接続の最大数。
17. 一度に? 行できる DeleGate プロセス数の最大数。ApacheでいうMaxClient。
18. I/Oタイムアウト時間をデフォルト600秒から短縮。アタッカー防御はバグで? 能すると困るので、10秒程度にしておいた。
19. HTML中ぜ URL情報書き朏 えを無効にする。
20. プロキシ先サーバからの拒否や不昜 応答時も、遅延処理を発生させない。デフォルトでぜ 404エラーでも遅延発生。
21. delegateのバージョン情報出力を隠蔽する。
22. コンパイル時にも指定する管理者メールアドレス。同じアドレスを指定。