IIS X-Forward-For ISAPI Filter

リバースプロキシから受けたhttpリクエストの X-Forward-For を IIS のログの c-ip として記録するためのISAPI。


使い方がいまいち不親切だったので日本語訳。


1.ファイルダウンロード
IIS X-Forward-For ISAPI Filter
http://devcentral.f5.com/weblogs/joe/archive/2005/09/23/1492.aspx

CodeShare というリンクから

ttp://devcentral.f5.com/downloads/codeshare/F5XForwardedFor.zip

をダウンロードする。


2.IISの鯖にコピー
F5XForwardedFor.zip を解凍して、ReleaseF5XForwardedFor.dll を取り出す。
これをIISの鯖のどこかにコピーする。


3.ISAPI割り当て
IISのプロパティを開いて、ISAPIフィルタを追加する。
今回の場合は

フィルタ名:IIS X-Forward-For ISAPI Filter
実行ファイル:c:hogeF5XForwardedFor.dll

で作成した。
追加した時点では有効にならない。次。


4.IIS再起動
iisreset でIISを再起動。
成功すると、こうなるはず。




5.動作確認
delgated で

HTTPCONF="add-qhead:X-Forwarded-For:250.250.250.250″

等のありえない設定を追加し、
delgated のリバースプロキシ経由で、IISにアクセス。
通常であれば、delgated のマシンのIPのログが残すはずだが、
今回の設定でこれが 250.250.250.250 のログになるはず。


6.あとは煮るなり、焼くなりお好きにどうぞ。



apache だと httpd.conf をちょちょっと書き換えるだけで可能な事も、
IISだとえらいシンドイ!

実務で使うそうなので予習 & 生禿鯖でも使う予定です。

本当は IIS で mod_proxy 相当の動作ができればいいのだが。
delgated +これで逃げます。


(* ^ー゚)ノ

Posted by namahage