Windows 7
 Computer >> コンピューター >  >> システム >> Windows 7

【解決】RDP接続で「認証エラーが発生しました。要求された機能はサポートされていません」と表示される原因と対処法

エラーの内容

Windows 10デスクトップに最新のセキュリティ更新プログラムをインストールした後、リモートデスクトップでWindows Server 2012 R2が稼働するVDSサーバーに接続できなくなりました。mstsc.exeクライアントでRDPサーバー名を指定して「接続」をクリックすると、次のエラーが表示されます。

リモートデスクトップ接続
認証エラーが発生しました。
要求された機能はサポートされていません。
リモートコンピューター:computer_name

最新の更新プログラムをアンインストールしてパソコンを再起動すると、RDP経由でリモートサーバーに接続できるようになりました。しかし、これは一時的な回避策にすぎません。翌月には新しいWindows累積更新プログラムが配信・インストールされ、再び同じRDP認証エラーが発生してしまいます。恒久的な解決策はないでしょうか?

回答

おっしゃる通りです。インストール済みのWindows更新プログラムを削除して問題を解決するのは得策ではありません。その更新プログラムが修正している各種脆弱性にコンピューターがさらされるリスクがあるためです。なお、「認証エラーが発生しました」というRDPエラーは、RemoteAppアプリケーションの起動時にも表示されることがあります。

エラーが発生する理由

この問題の原因は、Windows 10デスクトップ側に2018年5月以降にリリースされた最新のセキュリティ更新プログラムがインストールされていることにあります。これらの更新プログラムは、RDPサーバーの認証に使用されるCredSSP(Credential Security Support Provider)プロトコルの深刻な脆弱性(CVE-2018-0886)を修正するものです。一方、接続先のRDP/RDSサーバー側にはこれらの更新プログラムが未適用であり、リモートデスクトップアクセスに対してNLA(ネットワークレベル認証)が有効になっています。NLAはCredSSPのメカニズムを利用し、TLS/SSLまたはKerberos経由でRDPユーザーを事前認証します。つまり、脆弱なバージョンのCredSSPを使用するサーバーへのリモートデスクトップ接続を、更新済みのクライアント側がブロックしているのです。

3つの解決策

  1. 最も正しい解決方法:RDPで接続しようとしているリモートコンピューターまたはRDSサーバー側に、最新のWindows累積セキュリティ更新プログラムをインストールすることです。
  2. 回避策1:RDPサーバー側でNLA(ネットワークレベル認証)を無効にする(手順は後述)。
  3. 回避策2:安全ではないバージョンのCredSSPによるリモートデスクトップ接続を許可するようクライアントを再設定する。具体的には、レジストリ値AllowEncryptionOracleを変更するか(コマンド例:REG ADD HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\System\CredSSP\Parameters /v AllowEncryptionOracle /t REG_DWORD /d 2)、ローカルポリシーの「暗号化オラクルの修復」を「脆弱」に設定します。ILO、仮想マシンコンソール、クラウドプロバイダーのWebコンソールなどを使ってサーバーにローカルログオンできない場合、この方法がRDP経由でリモートサーバーへアクセスする唯一の手段となります。このモードでサーバーに接続し、最新のセキュリティ更新プログラムを適用してください。更新完了後は、ポリシーを無効化するか、レジストリ値AllowEncryptionOracleを0に戻すことを忘れないでください(REG ADD HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\System\CredSSP\Parameters /v AllowEncryptionOracle /t REG_DWORD /d 0)。

WindowsでリモートデスクトップのNLAを無効にする方法

RDPサーバーでNLAが有効になっている場合、CredSSPがRDPユーザーの事前認証に使用されています。ネットワークレベル認証は、システムのプロパティ「リモート」タブにある「ネットワークレベル認証が行われたリモートデスクトップを実行しているコンピューターからのみ接続を許可する(推奨)」のチェックを外すことで無効化できます(Windows 10/8.1およびWindows Server 2012 R2/2016の場合)。

Windows 7(Windows Server 2008 R2)では、このオプションの名称が異なります。「リモート」タブで「任意のバージョンのリモートデスクトップを実行しているコンピューターから接続を許可する(安全性は低い)」を選択してください。

また、ローカルグループポリシーエディター(gpedit.msc)やドメイングループポリシー管理コンソール(GPMC.msc)を使用してNLAを無効にすることもできます。ポリシーエディターで「コンピューターの構成 → 管理用テンプレート → Windowsコンポーネント → リモートデスクトップサービス → リモートデスクトップセッションホスト → セキュリティ」に移動し、「ネットワークレベル認証を使用したリモート接続に対するユーザー認証を求める」ポリシーを探して「無効」に設定します。

さらに、「リモート(RDP)接続に特定のセキュリティレイヤーの使用を必須とする」ポリシーの設定で、セキュリティレイヤーとしてRDPを選択する必要があります。

新しいRDP設定を反映するには、ローカルコンピューターでグループポリシーを更新する(gpupdate /force)か、デスクトップを再起動します。その後、リモートデスクトップに正常に接続できるようになるはずです。

  1. 【Windows 10】「DNSサーバーが応答しません」エラーの原因と12の解決方法を徹底解説

    現代において、ほとんどのビジネスパーソンや専門家はインターネットなしには仕事が成り立ちません。そのため、貴重な情報を収集しようとしている最中にインターネットへアクセスできなくなると、深刻な支障をきたします。特に、締め切りが迫った作業に追われているときはなおさらです。インターネット接続を妨げる厄介な原因のひとつが、「DNSサーバーが応答しません(DNS Server Not Responding)」というエラーです。まるで昔話に出てくるように、橋の下に座るトロールが「ここは通さぬぞ!」と言って行く手を阻むようなものです。しかし安心してください。この記事で紹介するシンプルなトラブルシューティングの

  2. 【解決済み】リモートデスクトップ接続の「認証エラーが発生しました。要求された機能はサポートされていません」を直す方法

    Windows 7搭載のパソコンから、リモートデスクトップ接続アプリでWindows Server 2012に接続しようとした際に、「認証エラーが発生しました。要求された機能はサポートされていません」というエラーが表示されることがあります。同じサーバーに対して、Windows 10搭載のPCからは問題なく接続できるのが特徴的な症状です。 この記事では、Windows 10/8/7のリモートデスクトップ接続で発生するこの認証エラーを解決するための手順を詳しく解説します。 リモートデスクトップ接続の「要求された機能はサポートされていません」エラーの修正方法 方法1:RDPサーバー側でネットワーク