IIS 7.5にリバースプロキシを構成する

ML110 G6には"Lights Out 100i"が搭載されていて、専用のLANポートにネットワークケーブルを接続しておけば、OSとはまったく独立に電源のオン/オフや、ハードウェアのセンサの状態を監視することができる。

インターフェースはTelnet/SSL、http/httpsが用意されている。
ただ自宅で使っているauひかりのルータは外部ポートから同じ番号の内部ポートへのポートフォワードしかできないので、http/httpsはすでにWHSのリモートアクセス用に割り当てられていると、外部からLights Outのhttp/httpsにはアクセスできない。

仕方ないのでSSLをポートフォワードして、コマンドで電源オンできるようにはしてある。

でもhttp/httpsを使えば各種センサ(ファン回転数や温度)が分かるので、これをリモートで見れたらいいよね。

Add-inを作るほどのスキルは無いので、システム的に解決してみる。

IIS 7.5でApplication Requst Routing

外部から単一のWebサーバーしか見せないために、リバースプロキシサーバを使います。

IIS7.5ではApplication Requst Routingという外部モジュールを使ってリバースプロキシを実現できます。


以下の記事を参考にしました。

http://blogs.gine.jp/kusa/archives/66

ARRのバージョンが上がっているので、微妙に違いがあります。

f:id:yaboratory:20110615211247j:image

Proxy機能のURL書き換えの機能を使って、

https:///BMC/

にアクセスしたときに

http:///

のページをアクセスするようにします。

URLの一致のパターンは「BMC/(.*)」、URLの書き換えを「http://192.168.0.240/{R:1}」にしていますが、この場合たとえば

https:///BMC/AAAA

にアクセスしたとき「BMC/」以降の「AAAA」が正規表現「(.*)」にマッチして、「http://192.168.0.240/AAAA」の内容を持ってきます。


これはページリダイレクトではなく、リバースプロキシなのであくまでクライアントが通信する相手は「」で表されるホストだけです。
クライアントとLights Outは直接通信しないので、外部からLights OutのWebページが見えなくても大丈夫。