Windows Server 2008 - Server Core をリモートから管理するには、
リモートデスクトップでつなぐ、WinRM を使う、MMC等でサービスをリモート管理などになりますが、
もうちょっとお手軽にローカルで操作しているかのようにリモートから接続する方法があります
まずはリモートデスクトップを有効化するところから始まります
Server Core のコンソールで ScRegEdit.wsf スクリプトを /AR オプションで実行し
リモートデスクトップを有効にします
> cd \Windows\System32
> cscript SCregEdit.wsf /ar 0
さらにそのままだと、コンピュータ名の接続ができず、ping にも応答しないため
ファイアウォールのルールでポートを開き、少しセキュリティレベルを落としてしまいます
> netsh advfi fi set rule name="ファイルとプリンタの共有 (NB 名受信)" new enable=yes
> netsh advfi fi set rule name="ファイルとプリンタの共有 (エコー要求 - ICMPv4 受信)" new enable=yes
> netsh advfi fi set rule name="ファイルとプリンタの共有 (エコー要求 - ICMPv6 受信)" new enable=yes
これでほかのマシンからコンピュータ名で ping にも応答するようになったと思います
あとは RemoteApp を許可するレジストリエントリを Server Core マシンに追加します
コンソールで Notepad RemoteApp.reg などと入力してレジストリ登録ファイルを作成します
メモ帳が立ちあがったら下記のように登録するレジストリエントリを入力します
Windows Registry Editor Version 5.00
[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Terminal Server\TsAppAllowList\Applications\cmd]
"CommandLineSetting"=dword:00000000
"RequiredCommandLine"=""
"IconIndex"=dword:00000000
"IconPath"="c:\\Windows\\System32\\cmd.exe"
"Path"="c:\\Windows\\System32\\cmd.exe"
"VPath"=""
"ShowInTSWA"=dword:00000001
"Name"="cmd.exe"
入力が終わり保存したら、コンソールで RemoteApp.reg を実行して、レジストリを登録します。
RegEdit を起動して確かめると、ちゃんとエントリが登録されています。
以上でサーバ側の設定は終了です。
残るは RemoteApp を使ってリモートから管理をしたいクライアントに接続用の設定ファイルを作るだけです。
クライアント上でメモ帳をなどを使って .rdp ファイルを作成します。
full address:s:[SERVERNAME]
server port:i:3389
alternate shell:s:||cmd
remoteapplicationmode:i:1
remoteapplicationprogram:s:||cmd
remoteapplicationname:s:cmd.exe
remoteapplicationcmdline:s:
これをテキストで .rdp ファイルとして保存をして実行すれば、
RemoteApp が起動して認証情報を入力が完了すると、
Server Core のコンソールがクライアント側に表示されます。
いかがでしょうか。Server Core を管理するときに、リモートデスクトップをベースにリモートから構成ができるようになります。
MMC や WinRM も便利ではありますが、サーバの手元でコンソールを動かしている状態がそのまま使えるというのも、なかなか便利じゃないかと思います。
ちなみにこの記事は、安納さんの記事をかなり参考にしました。ありがとうございます。
http://blogs.technet.com/junichia/archive/2008/04/14/windows-server-2008-server-core-remoteapp.aspx