[WinRM] Windows Remoe Management を使って、らくらく管理!- その1

こんにちは。今週末に バリウム を飲みにいくのでぷるぷる震えている ぴろと です。

先日、お父さんと Windows Remote Management ( 以下、WinRM) について話あっていたのですが、どうやら US では、WinRM と WMI のサポートチームは一緒だということが判明しました。そのため、私たちの Blog でも WinRM を取り上げなくては!ということで、第一弾として、さっぱり簡単レシピをご紹介させていただきます。(最近、仕事と ETロボコンに追われて Blog を書けてませんでした。ぴろとファンの皆様申し訳ございません)

- そもそも WinRM ってなんですか?

WinRM は、WS-Management プロトコルのマイクロソフト実装です。WS-Management プロトコルは、さまざまなベンダが提供するハードウェアやオペレーティング システムの相互運用を可能にする標準的なファイアウォールに対応した SOAP ベースのプロトコルです。というのは大袈裟な言い方ですが、WinRM により、HTTP や HTTPS などの標準的なインターネット プロトコルを使用してコンピュータをリモート管理できるようになります。

ここで、標準的なファイアウォールに対応というところがいいですね! 最近の流行は、何でも HTTPS (Windows Server 2008 R2 の Hosted Mode で使用されるのも HTTPS) ですし、WMI を用いたリモート管理の場合、Port 135 (Remote Procidure Call) のポートが開いてなくてはいけませんものね!

構成を行うのも、割と簡単です。以下のサポート技術情報を参考ください。

How to enable Windows Remote Shell
https://support.microsoft.com/kb/555966/en-us

これで、あなたの端末も WinRM で管理できちゃいます。

また、WMI と同じくスクリプトでの管理も容易です。”Hey,Scripting Guy!” にて公開されているスクリプトがあったので、あわせてご紹介させていただきます。

Hey, Scripting Guy! あの世からのデスクトップ管理
https://technet.microsoft.com/ja-jp/magazine/2007.11.heyscriptingguy.aspx

Hey, Scripting Guy! 帰ってきた WinRM
https://technet.microsoft.com/ja-jp/magazine/2007.12.heyscriptingguy.aspx

すごいネーミングセンスですね!”帰ってきた”と聞くと、”帰マン” とか “新マン”とかを連想する人が多いチームメンバーたちに囲まれて、軽いジェネレーションギャップを感じざるを得ないのはここだけの話です。

VB や C# を使って開発されている場合は、WMI みたいに System.Management 名前空間を用いて開発されているかと存じます。WinRM は、WinRM Scripting API と WinRM C++ API が用意されています。オートメーション インタフェースが公開されているので、WinRM Scripting API を使って実装できます。次回は、サンプルを含めて実装を行っていく予定です!

今後は、WMI だけではなく ”WinRM” も Blog で盛り上げて行きたいと思いますので、どうぞよろしくお願いいたします!

~ すぐにコースアウトするミニ四駆しか作れない ぴろと より~