XP からネットワークレベル認証を有効化した 2008 へリモートデスクトップ接続する
Windows Server 2008 では、システムのプロパティからリモートデスクトップの設定を行う際、「ネットワークレベル認証」を有効にした接続のみ、受け付けることが出来るようになりました。以前はリモートデスクトップ接続が 確立してから 認証が行われていましが、ネットワークレベル認証を有効にすることでリモートデスクトップ接続を 確立する前に 認証を実施出来るようになった為、DoS 攻撃などに対する耐性を上げることが出来ます。
ただし、Windows XP SP3 のターミナルサービスクライアント(バージョン 6.0.6001)ではこの機能をサポートしない為、ネットワークレベル認証を有効にした Windows Server 2008 へアクセスしても以下の通り、「リモートコンピュータには、お使いのコンピュータでサポートされていないネットワークレベルの認証が必要です。サポートが必要な場合は、システム管理者かテクニカルサポートに問い合わせてください」エラーが発生し、リモートデスクトップ接続を確立することが出来ません。
Windows XP SP3 でネットワークレベル認証を有効にするには、レジストリを変更する必要があります。
リモートデスクトップクライアントのバージョンを確認する¶
リモートデスクトップクライアントのバージョンは、以下のようにリモートデスクトップ接続の左上(赤丸の箇所)をクリックし、表示されるメニュー最下部の「バージョン」を選択することで確認することが出来ます。
ネットワークレベル認証が無効な場合、以下のように「ネットワークレベル認証はサポートされていません」と表示されます。
ネットワークレベル認証を有効化する¶
レジストリに以下の変更を加えることで、ネットワークレベル認証を有効化することが出来ます。
- [HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Lsa] の [Security Packages] キーに "tspkg" という値を追加する
- [HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\SecurityProviders] の [SecurityProviders] キーに "credssp.dll" という値を追加する
上記の変更と同様のことを行うレジストリパッチを用意しましたが、ご利用は自己責任でどうぞ。
- ネットワークレベル認証を有効化するレジストリパッチ
- ネットワークレベル認証を無効化するレジストリパッチ
上記のレジストリ変更を加えて OS を再起動させた後、先ほどと同様、ターミナルサービスのバージョン情報を確認すると「ネットワークレベル認証はサポートされています」と表示されます。
これで Windows XP SP3 からでも、ネットワークレベル認証を有効化した Windows Server 2008 へリモートデスクトップ接続が出来るようになりました。