リモート接続のためのサービスとプロトコル WinRMとWS-MAN

リモート接続で使われるサービスとプロトコル

Web Services for Management (WS-MAN)

PowerShellのコミュニケーションプロトコル。HTTP/HTTPS上で動作するのでファイヤウォールの設定を変えずとも動作しやすい。他のシェル環境でのTelnetやSSHに相当する。

Windows Remote Management (WinRM)

Windows ServerやWindows(7/8/10のようなクライアントOS)に搭載されているサービスで、WS-MANにリモートマネジメント機能を提供する。Windows Serverではデフォルトでオンだが、Windows(クライアント)ではデフォルトでオフ。

WinRMとWS-MAN

 ---------------
 | クライアントPC 
 --------------- 
 
 ↓ WS-MAN(HTTP)
 
 ---------------
 | リモートPC
 |    ↓
 |   WinRM
 |    ↓  
 |   PowerShell
 ---------------
  • クライアントはWS-MANプロトコルを利用してリモートPCと通信する。
  • WS-MANはHTTPをなので、ファイヤウォールの設定変更する必要がないことが多く、扱いやすい。(デフォルトのポートはHTTP5985、HTTPS5986)
  • WS-MAN(HTTP)の中身はXML。クライアントPCとリモートPCはそれぞれPowerShellオブジェクトをXMLにシリアライスしつつ、通信する。
  • WinRMはPowerShell専用ではない。
  • PowerShellリモーティングでは、WinRMがPowerShellを呼び出すように設定して、使う。
  • 今後、WS-MANに加えて、SSHでも通信できるようになる予定。

PowerShellリモーティングはドメインネットワークで行う

  • PowerShellリモーティングでは、対象のPC群はActive Directoryで管理されていて、同じドメインネットワークに参加している前提になっている。
  • ドメイン環境でなくともPowerShellリモーティングは可能だが、設定が複雑になり、セキュリティに問題が起きるかもしれない。詳しくは、help about_remote_troubleshooting を参考にする。

トップ   編集 凍結 差分 バックアップ 添付 複製 名前変更 リロード   新規 一覧 検索 最終更新   ヘルプ   最終更新のRSS

Last-modified: 2018-07-13 (金) 05:49:11