WinRM cannot complete the operationエラーの解決方法
エラーの概要・症状
「failed: WinRM cannot complete the operation」というエラーメッセージは、Windows Remote Management(WinRM)を使用してリモートのコンピュータに接続しようとした際に発生する一般的なエラーです。このエラーは、リモート管理を行うための設定が正しく行われていない場合に表示されます。特に以下のような状況でこのエラーが発生することがあります。
- WinRMサービスが無効になっている。
- リモートコンピュータのファイアウォールが適切に設定されていない。
- リモート接続に必要なリスナーが作成されていない。
このエラーが発生した場合、リモート管理機能を有効にし、必要な設定を行う必要があります。
このエラーが発生する原因
このエラーの主な原因は、以下の通りです。
- WinRMサービスが無効になっている: WinRMサービスがスタートしていない場合、リモート接続はできません。
- ファイアウォール設定: リモート接続を許可するためのファイアウォールルールが設定されていない場合、接続がブロックされることがあります。
- リスナーの設定不足: WinRMリスナーが正しく設定されていないと、リモート管理の要求を受け付けることができません。
- ネットワーク設定の問題: TrustedHostsの設定が不適切であったり、IPアドレスが正しくない場合にもこのエラーが発生します。
解決方法
以下に、WinRM cannot complete the operationエラーを解決するための具体的な手順を示します。
解決方法 1: WinRMの設定を行う
- コマンドプロンプトを管理者として実行します。
- 以下のコマンドを入力し、WinRMサービスを有効にします。
cmd
winrm quickconfig - 表示されるメッセージに従い、必要な設定を確認し、実行します。
このコマンドは、WinRMサービスが実行中であり、リモート接続を受け付けるためのリスナーを作成するための設定を行います。
解決方法 2: ファイアウォールの設定を確認する
- Windowsファイアウォールを開く:
- スタートメニューから「Windows Defender Firewall」を検索して開きます。
- 「詳細設定」をクリックします。
- 「受信の規則」を選択し、「Windows Remote Management (HTTP-In)」をダブルクリックします。
- 「スコープ」タブをクリックし、リモート接続を許可するIPアドレスを追加します。
- 例えば、全てのIPアドレスを許可する場合は、
*を入力します。
この手順により、リモート接続を許可するためのファイアウォールの設定が行われます。
解決方法 3: PowerShellリモート管理を有効にする
- PowerShellを管理者として実行します。
- 以下のコマンドを入力します。
powershell
Enable-PSRemoting -Force - 次に、リモートホストに接続するための認証情報を設定します。
powershell
$password = ConvertTo-SecureString -AsPlainText -Force -String "MY_PASSWORD"
$credential = New-Object -TypeName System.Management.Automation.PSCredential -ArgumentList "MY_USERNAME", $password - その後、以下のコマンドでリモートセッションを作成します。
powershell
$session = New-PSSession -ComputerName "MY_EC2_PUBLIC_IP" -Credential $credential
Enter-PSSession -Session $session
Write-Host "Hello, World (from $env:COMPUTERNAME)"
この手順により、PowerShellを使用したリモート接続が可能になります。
解決方法 4: リモートマシンの設定を確認する
- WinRMが両方のコンピュータで有効か確認します。
cmd
winrm get winrm/config - このコマンドで、設定情報を確認し、リモート接続が許可されているかを確認します。
解決方法 5: TrustedHostsの設定を行う
- TrustedHostsにターゲットマシンのIPアドレスを追加します。
“`powershell
winrm set winrm/config/client ‘@

コメント