在 linux 中我們可以使用 SSH 執(zhí)行各種遠程操作,同樣的在 windows 平臺上我們可以通過 PowerShell 獲得類似的能力。本文將介紹通過 PowerShell 執(zhí)行遠程操作的基本信息。想了解 SSH 遠程操作的同學,可以參考《SSH 遠程執(zhí)行任務》。
基礎
MS 定義了一個叫做 WS-Management 的協(xié)議,這個協(xié)議為計算機設備遠程交換管理數(shù)據(jù)提供了一個公開的標準。在 Windows 平臺上,MS 通過 Windows 遠程管理服務(Windows Remote Management service,簡稱 WinRM) 實現(xiàn)了 WS-Management 協(xié)議。這就是我們可以通過 PowerShell 執(zhí)行遠程操作的基礎,因為 PowerShell 就是通過 WinRM 服務來進行遠程操作的。
檢查 WinRM 服務
我們可以通過下面的命令查看 WinRM 服務的狀態(tài):
Get-Service WinRM
服務器版的 Windows 系統(tǒng)默認是啟動 WinRM 服務的,而普通版的系統(tǒng)默認則沒有啟動該服務。接下來我們將介紹如何以正確的姿勢啟動這個服務。
配置系統(tǒng)接受遠程命令
類似于 SSH 的客戶端/服務器架構,只需要在接受遠程命令的主機上配置 WinRM 服務就可以了。其實就是讓 WinRM 服務監(jiān)聽一個端口,跟 SSH daemon 是一樣的!