MENU

【PowerShell】Windows環境をPowerShellでリモート操作する初期設定方法

目次

【PowerShell】Windows環境をPowerShellでリモート操作する初期設定方法

こんにちは!インフラ関連のシステムエンジニアをやっているカユラ(@kayura_SE)です。

本記事では、Windows環境をPowerShellを使用してリモート操作するための初期設定手順を解説します。接続元と接続先の両方に設定が必要です。

Windows環境をPowerShellでリモート操作する初期設定

接続先の初期設定

手順1 接続先のWindows環境にログインし、PowerShellを管理者として起動します。「PowerShell」を右クリックし、「スタート」→「その他」→「管理者として実行」をクリックします。

手順2 以下のコマンドを実行してリモート操作を受信するよう設定します。

PS > Enable-PSRemoting -SkipNetworkProfileCheck
WinRM は要求を受信するように更新されました。
WinRM サービスの種類を正しく変更できました。
WinRM サービスが開始されました。

手順3・4 Administrator以外のユーザーを使用する場合は、「Remote Management Users」グループへの追加が必要です。「スタート」を右クリック →「コンピューターの管理」→「ローカルユーザーとグループ」→「ユーザー」で該当ユーザーを右クリックし、「プロパティ」→「所属するグループ」で「Remote Management Users」を追加します。

接続元の初期設定

手順1 接続元のWindows環境にログインし、同様にPowerShellを管理者として起動します。

手順2 リモート操作を受信するよう設定してから、信頼できる接続先を設定します(以下はALL許可の例)。

PS > Enable-PSRemoting -SkipNetworkProfileCheck
WinRM は要求を受信するように更新されました。
WinRM サービスの種類を正しく変更できました。
WinRM サービスが開始されました。

PS > Set-Item WSMan:\localhost\Client\TrustedHosts -Value "*"
[Y] はい(Y) [N] いいえ(N) [S] 中断(S) [?] ヘルプ (既定値は "Y"): Y

特定の接続先のみを許可したい場合は、カンマ区切りでIPアドレスまたはFQDNを指定します。

# 特定ホストのみ許可
PS > Set-Item WSMan:\localhost\Client\TrustedHosts -Value "192.168.0.10, Windows10.intra.local"

# 信頼済み接続先の確認
PS > Get-Item WSMan:\localhost\Client\TrustedHosts

# 信頼済み接続先の全削除
PS > Clear-Item WSMan:\localhost\Client\Trustedhosts

実際にPowerShellを使用してリモート操作する

手順1 接続先とユーザー名を指定してリモート接続します。

PS > Enter-PSSession -ComputerName 192.168.0.10 -Credential admin
[192.168.0.10]: PS C:\Users\admin\Documents>

手順2 hostname コマンドなどで動作確認します。

[192.168.0.10]: PS C:\Users\admin\Documents> hostname
windows10

手順3 exit コマンドで切断します。

[192.168.0.10]: PS C:\Users\admin\Documents> exit
PS >

よくあるエラーと解決方法

エラー:ネットワーク接続の種類を Domain または Private に変更して、やり直してください。

Set-WSManQuickConfig : このコンピューターのネットワーク接続の種類の 1 つが Public に設定されているため、
WinRM ファイアウォール例外は機能しません。
ネットワーク接続の種類を Domain または Private に変更して、やり直してください。

解決方法:引数に -SkipNetworkProfileCheck を指定してネットワークプロファイルのチェックをスキップします。

PS > Enable-PSRemoting -SkipNetworkProfileCheck
WinRM は要求を受信するように更新されました。
WinRM サービスの種類を正しく変更できました。
WinRM サービスが開始されました。

エラー:Enter-PSSession : リモート サーバーへの接続に失敗し、アクセスが拒否されました。

Enter-PSSession : リモート サーバー 192.168.0.10 への接続に失敗し、次のエラー メッセージが返されました:
アクセスが拒否されました。

解決方法:接続先のユーザーを「Remote Management Users」グループに所属させます。Administrators グループへの所属だけでは不十分です。「コンピューターの管理」→「ローカルユーザーとグループ」→「ユーザー」から該当ユーザーのプロパティを開き、「Remote Management Users」を追加してください。

# 成功例
PS > Enter-PSSession -ComputerName 192.168.0.10 -Credential admin
[192.168.0.10]: PS C:\Users\admin\Documents>

まとめ

本記事ではWindows環境をPowerShellでリモート操作するための初期設定として、接続先・接続元それぞれの Enable-PSRemoting 設定、TrustedHosts 設定、Remote Management Users グループへの追加手順と、よくあるエラーの解決方法を解説しました。同様の設定で困っている方はTwitterでご連絡ください。

カユラ(@kayura_SE

よかったらシェアしてね!
  • URLをコピーしました!
  • URLをコピーしました!

この記事を書いた人

コメント

コメントする

目次