WinRMとWMIについて。
どちらも「W」から始まる、遠隔からWindowsシステムを管理・変更することができる、などの共通点があり個人的に混同しやすいのでメモ。
WinRM (Windows Remote Management )
WinRM (Windows Remote Management )とは遠隔からWindowsシステムを管理するための仕組み。
SOAP形式の通信でシステム同士のやり取りを行う (XML形式のデータをPOSTしたりPUTしたりGETしたりする) 。Windows 7 以降のシステムではデフォルトのポート番号は5985
(WinRM HTTP) と 5986
(WinRM HTTPS)。Windows 7より前のシステムではポート番号80
(WinRM HTTP) と 443
(WinRM HTTPS)が使用される。
PowerShell RemotingはWinRMを使用している。WinRMによってPowerShellのセッションが開始されると、受信側のシステムではsvchost.exe
がwsmprovhost.exe
を生成する。
参考1
参考2
参考3
WMI (Windows Management Instrumentation)
WMI (Windows Management Instrumentation)とはOSやコンピュータの設定・状態を参照したり変更したりするための仕組みのこと (関連ファイル名: WmiPrvSE.exe
)。 WMICという専用のコマンドラインで操作可能 (関連ファイル名: wmic.exe
)。WMICの/NODE
スイッチを使うことで遠隔のシステムを操作できる。ほかにもPowerShell、DCOM、WinRMなどもWMIを操作できる。
こちらの記事も合わせて参照。
参考1
参考2