【Management】Msgコマンドを使用すると「セッション名の取得エラー5」
前回の投稿で Msgコマンドを紹介しました。
非常に便利なコマンドなのですが、規定ではリモートの Windows 7 や Windows Vistaに対してメッセージを送付することができません。例えば、以下のようなエラーが帰ってきます。
C:\>msg console /server:client01 “ログオフしてください~” セッション名の取得エラー5
これは、ターミナルサービスセッションに対するリモートからのRPC接続が無効に設定されているせいです。
リモートからのRPC接続を有効にするには、クライアントごとに以下のレジストリエントリを編集します。
キー HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Terminal Server
値の名前 AllowRemoteRPC
タイプ REG_DWORD
値 1
この設定はグループポリシーでは提供されておらず、残念ながら手動で設定する必要があります。
でも、この設定を1000台のクライアントに適用すると思うと、胃が痛くなりますね…。もしくはポリシーテンプレートを自分で作成しなければなりません。
でも大丈夫です。PowerShell 2.0 がインストールされていれば、必殺技を使うことができます。
以前以下の投稿をしました。
同様の手法を使用すれば、PowerShell のコマンドレット一発で、レジストリ設定をグループポリシーに組み込んでしまうことができます。手順を以下に示します。
- Active Directory がインストールされたサーバーで PowerShell を起動してください
- PowerShell コンソールで「Import-Module GroupPolicy」と入力してください。これはグループポリシー関連のコマンドレットを読み込むための操作です。
- グループポリシー管理コンソールで、ドメインの直下に新しいポリシーオブジェクトを作成してください。名前はなんでもけっこうです。ここでは「DemoPolicy」という名前で作成したとしましょう。
- PowerShell コンソールから、以下のように Set-GPRegistryValue コマンドレットを入力します。
※Set-GPRegistryValue 以降は1行で記述してください
PS C:\> Import-Module GroupPolicy PS C:\> Set-GPRegistryValue -Name DemoPolicy –Key "HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Terminal Server" -ValueName "AllowRemoteRPC" -Value 1 –Type DWORD
DisplayName : DemoPolicy DomainName : techfielders.com Owner : TECHFIELDERS\Domain Admins Id : 2113794b-04df-4186-8d30-122b872b5e24 GpoStatus : AllSettingsEnabled Description : CreationTime : 2010/02/06 16:43:43 ModificationTime : 2010/04/06 19:11:54 UserVersion : AD Version: 0, SysVol Version: 0 ComputerVersion : AD Version: 5, SysVol Version: 5 WmiFilter :
PS C:\>
これでグループポリシーオブジェクト「DemoPolicy」には AllowRemoteRPC の設定が埋め込まれました。
もちろんグループポリシーですから、クライアントが再起動されれば、自動的に設定されます。
なんて便利!PowerShell 大好き!と叫ばずにはいられません。
以下も参考にしてください。
- グループポリシー関連まとめサイト https://blogs.technet.com/junichia/pages/3234088.aspx
- SlideShare 開発者のためのグループポリシー活用講座 https://www.slideshare.net/junichia/ss-1763890
Comments
Anonymous
April 11, 2012
レジストリ変えてもセッションエラー5が出続けるんですが、、対策はないですかAnonymous
November 18, 2014
グループポリシーでレジストリ配布するなら、基本設定・Windowsの設定・レジストリから配布した方が楽じゃないですか?