Ask CORE

Microsoft Japan Windows Technology Support

WMF 5.1 をインストールしたサーバー OSで Enable-PSRemoting が動作しない

皆さん、こんにちは。
Windows プラットフォーム サポート チームです。

本日は、Enable-PSRemoting コマンドレットで報告されている問題をご紹介いたします。

Enable-PSRemoting コマンドレットは、Windows Remote Management (WinRM) サービスを構成するためのコマンドレットです。

クライアント OS や、Windows Server 2008 R2 までのサーバー OS は既定で WinRM サービスが無効になっているため、
WinRM サービスを介してリモート管理を行う場合は、Enable-PSRemoting コマンドレットや、WinRM コマンドを使って設定変更を行う必要がありました。

Windows Server 2012 以降のサーバー OS でも、ワークグループ環境で Enable-PSRemoting コマンドレットを実行すると、
LocalAccountTokenFilterPolicy レジストリの値を “1” に変更し、自動で リモート UAC を無効にしてくれるため、サーバーの初期設定で
Enable-PSRemoting コマンドレットを実行されている方はいらっしゃるのではないでしょうか。

しかし、ワークグループ環境の Windows Server 2016 や、Windows Management Framework 5.0、または 5.1 を
インストールした Windows Server 2012 R2 等で Enable-PSRemoting コマンドレットを実行すると、コンソール上に何も文字が表示されず、リモート UAC が無効になりません。

 Enable-PSRemoting doesn’t enable LocalAccountTokenFilterPolicy if WinRM Firewall rule is enabled
 https://github.com/PowerShell/PowerShell/issues/4033

対象 OS:
Windows Server 2016
Windows Server 2012 R2
Windows Server 2012
Windows Server 2008 R2

これは、既に以下の設定が行われている場合は、WinRM サービスの構成をスキップするよう、Enable-PSRemoting コマンドレット
の動作が変更されたためです。

 1. WinRM サービスの状態が “実行中” になっている。
 2. WinRM サービスのスタートアップの種類が “自動” になっている。
 3. WinRM サービス内の設定情報に値が設定されている。
 4. WinRM サービスに関するファイアウォールの規則が有効になっている。

実際の動作は以下のようになります。
Enable-PSRemoting コマンドレット実行時にコンソール上に何も表示されていないことが分かります。

インストール直後の Windows Server 2016 で Enable-PSRemoting コマンドレットを実行した場合:

インストール直後の Windows Server 2012 R2 で Enable-PSRemoting コマンドレットを実行した場合:

WinRM サービスの構成にあたってリモート UAC を無効化したい場合は、Enable-PSRemoting コマンドレットではなく、
以下、いずれかを実行ください。

実行内容:
Winrm Quickconfig
Set-WSManQuickConfig