とあるプロジェクトで、オープンソースのプロキシサーバ「pound」を使いました。
その中で、気になったことなどをメモしておきます。
設定は簡単
特にSSLの設定は非常に楽です。 設定ファイルの書き方も明快でわかりやすいのでメンテナンス上も良いです。
バックエンドのWebサーバーはクライアントIPアドレスが変わる
バックエンドではクライアントIPアドレスがプロキシサーバーのアドレスとなるため、バックエンドのウェブサーバー(今回はapache)でログのフォーマットを修正する必要がありました。 X-Forwarded-For にクライアントIPアドレスは渡されるため、Webサーバーではこの値をログするように変更しました。
ログの出力方法によってパフォーマンスに影響がある
Poundのログはdefaultでsyslogに出力することができます。ただ、この設定をするとパフォーマンスが目に見えて悪くなりました。 LogFacilityを – に設定するとログは標準出力なります。 1. ログ出力なし 2. 標準出力 3. syslogに出力 上記の3つの設定では3番の方法で極端にパフォーマンスの低下が見られました。
そのため、今回はPoundのログは標準出力にしました。
クライアントIPアドレスでのフィルタはできない
プロキシサーバーを使う前は、特定のIPアドレスに対してapacheでDenyの設定をしていましたが、この方法は使えなくなりました。 – iptables で設定 – アプリケーションで設定
と考えられましたが、今回はアプリケーションに実装する予定です。
設定ファイルのリロードはできない
設定ファイルを書き換えた場合、反映するためにはreload ではなく、 restartが必要となります。(reloadは無い) 今回のシステムでは瞬間的な停止は許容範囲のため、そのまま運用しています。
導入までの手間は非常に少なかったのですが、細かい設定ができないのでした。