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のバージョンが上がっているので、微妙に違いがあります。
Proxy機能のURL書き換えの機能を使って、
https://
にアクセスしたときに
http://
のページをアクセスするようにします。
URLの一致のパターンは「BMC/(.*)」、URLの書き換えを「http://192.168.0.240/{R:1}」にしていますが、この場合たとえば
https://
にアクセスしたとき「BMC/」以降の「AAAA」が正規表現「(.*)」にマッチして、「http://192.168.0.240/AAAA」の内容を持ってきます。
これはページリダイレクトではなく、リバースプロキシなのであくまでクライアントが通信する相手は「
クライアントとLights Outは直接通信しないので、外部からLights OutのWebページが見えなくても大丈夫。