DirectAccess クライアントがエラー 0x80092013で接続できない場合があります

この記事では、セキュリティで保護されたハイパーテキスト転送プロトコル (IP-HTTPS) 接続経由でインターネット プロトコルを使用して DirectAccess クライアントが DirectAccess サーバーに接続できない問題を解決するためのヘルプを提供します。

適用対象: Windows 10 - すべてのエディション、Windows Server 2012 R2
元の KB 番号: 2980672

現象

失効チェックが失敗するため、IP 経由の IP-HTTPS 接続を使用して DirectAccess クライアントが DirectAccess サーバーに接続できない場合があります。

コマンド netsh インターフェイス http show インターフェイスの出力には、次のエラーが表示されます。

エラー: 0x80092013

変換元: CRYPT_E_REVOCATION_OFFLINE
# 失効サーバーがオフラインであったため、失効関数で失効をチェックできませんでした。

原因

このエラーは、次のいずれかの理由で発生する可能性があります。

  1. CRL の場所 (CDP) に到達できません。
  2. CRL の場所 (CDP) は発行されていません。
  3. CRL の有効期限が切れており、新しい CRL が発行されませんでした。
  4. CRL に到達できますが、クライアントは古いキャッシュから選択しています。

解決方法

CRL の場所 (CDP) に到達できない場合は、次の手順に従って、CRL がシステム コンテキストからダウンロード可能であることを確認します。

  1. 接続の問題がプロキシ設定によって発生しているかどうかを確認します。 これを判断するには、次のレジストリ値を使用してクエリを実行できます。

    • /c reg クエリを cmd.exe する
      HKEY_USERS\.DEFAULT\Software\Microsoft\Windows\CurrentVersion\Internet Settings /v ProxyEnable
    • /c reg クエリを cmd.exe する
      HKEY_USERS\.DEFAULT\Software\Microsoft\Windows\CurrentVersion\Internet Settings /v ProxyServer
    • /c reg クエリを cmd.exe する
      HKEY_USERS\.DEFAULT\Software\Microsoft\Windows\CurrentVersion\Internet Settings /v ProxyOverride
    • /c reg クエリを cmd.exe する
      HKEY_USERS\.DEFAULT\Software\Microsoft\Windows\CurrentVersion\Internet Settings /v AutoConfigURL
    • /c reg クエリを cmd.exe する
      HKEY_USERS\S-1-5-18\Software\Microsoft\Windows\CurrentVersion\Internet Settings /v ProxyEnable
    • /c reg クエリを cmd.exe する
      HKEY_USERS\S-1-5-18\Software\Microsoft\Windows\CurrentVersion\Internet Settings /v ProxyServer
    • /c reg クエリを cmd.exe する
      HKEY_USERS\S-1-5-18\Software\Microsoft\Windows\CurrentVersion\Internet Settings /v ProxyOverride
    • /c reg クエリを cmd.exe する
      HKEY_USERS\S-1-5-18\Software\Microsoft\Windows\CurrentVersion\Internet Settings /v AutoConfigURL
    1. ProxyEnable 値がいずれかの値で 1 に等しい場合。 既定値または S-1-5-18 は、 設定を自動的に検出しないことを意味します。 つまり、接続は ProxyServer または AutoConfigURL で定義されているプロキシを使用してのみ行われます。
    2. ProxyEnable 値が 0 の場合は、[ 設定の自動検出] を意味します。 そのため、HKU\<UserSID> Hive が HKCU ハイブのダンプであるため、レジストリ内の値を変更して DA を機能させることはできません。 HKU に加えた変更は、 システム サービス がアクティブになるたびに上書きされます。 この設定を変更するには、システム アカウント (NT AUTHORITY\System) でインターネット エクスプローラーまたは CMD.exe を開始する必要があります。 これを行うには、管理者特権の コマンド プロンプト から次を実行します。
    • psexec.exe -s -i cmd.exe /c reg add HKCU\Software\Microsoft\Windows\CurrentVersion\Internet Settings /v ProxyEnable /t REG_DWORD /d 0 /f
      • CRL の場所には、次のいずれかの理由で到達できない可能性があります。
      1. システム コンテキスト プロキシは適用されますが、到達できないので、ユーザー認証が必要です。
      2. ホットスポットのログオンが保留中です。
      3. CRL の場所はインターネット上では使用できません。
      4. CRL の場所では、アクセスが許可される前に認証が必要です。
      5. CRL の場所に到達可能です。 ただし、CRL ファイルは提供できません。
      • この場合は、CRL ファイルと Delta CRL ファイルに対するファイル システムのアクセス許可をチェックします。
      • CDP の場所 に対して DoubleEscaping が有効になっていることを確認します。
        • Set-WebConfiguration -Filter system.webServer/security/requestFiltering -PSPath 'IIS:\Sites<SiteName> -Value @{allowDoubleEscaping=$true}
  2. CRL の場所 (CDP) が発行されていない場合は、次の手順に従います。

    1. [ スタート] をクリックし、[ 管理ツール] をポイントし、[ 証明機関] をクリックします。
    2. コンソール ツリーで、 corp-DC1-CA を右クリックし、[ プロパティ] をクリックします。
    3. [ 拡張機能] タブをクリックし、[ 追加] をクリックします。
    4. [ 場所] に「(WAN URL 必須インターネット アクセス)」と入力します http://\<Public-IIS-URL>/crld/
    5. [変数] で [CAName>] をクリック<し、[挿入] をクリックします。
    6. [変数] で 、[CRLNameSuffix>] をクリック<し、[挿入] をクリックします。
    7. [変数] で [DeltaCRLAllowed>] をクリック<し、[挿入] をクリックします。
    8. [ 場所] で、Location 文字列の末尾に「.crl」と入力し、[OK] をクリック します
    9. [CRL に 含める ] を選択します。 クライアントはこれを使用して Delta CRL の場所を検索します。 [発行された証明書の CDP 拡張機能に 含める ] を選択し、[OK] をクリック します[追加] をクリックします。
    10. [ 場所] に「\<IIS-ServerName>\crldist$\ (クライアントにサービスを提供するために IIS によって発行するために証明機関によって使用される内部の場所)」と入力します。
    11. [変数] で [CAName>] をクリック<し、[挿入] をクリックします。
    12. [変数] で 、[CRLNameSuffix>] をクリック<し、[挿入] をクリックします。
    13. [変数] で [DeltaCRLAllowed>] をクリック<し、[挿入] をクリックします。
    14. [場所] で、文字列の末尾に「.crl」と入力し、[OK] をクリック します
    15. [この場所に CRL を発行する] と [ Delta CRL をこの場所に発行する] を 選択し、[OK] をクリック します
    16. [はい] をクリックして Active Directory 証明書サービスを再起動します。
    17. 証明機関コンソールを閉じます。
  3. CRL の有効期限が切れている場合は、次の手順に従います。

    • CRL を再発行する
      • Certutil -crl
  4. CRL に到達可能だが、クライアントが古いキャッシュから選択している場合は、次の手順に従います。

    クライアント キャッシュをクリアする

    1. TVO (Time Validated オブジェクト)
      • Certutil -setreg chain\ChainCacheResyncFiletime @now
    2. URL キャッシュ
      • Certutil -urlcache * delete

詳細

DirectAccess 接続方法

DirectAccess クライアントは、複数のメソッドを使用して DirectAccess サーバーに接続します。 これにより、内部リソースへのアクセスが可能になります。 クライアントには、Teredo、6to4、または IP-HTTPS を使用して DirectAccess に接続するオプションがあります。 これは、DirectAccess サーバーの構成方法にも依存します。

DirectAccess クライアントにパブリック IPv4 アドレスがある場合、6to4 インターフェイスを使用して接続しようとします。 ただし、一部の ISP はパブリック IP アドレスの錯覚を与えます。 エンド ユーザーに提供されるのは、擬似パブリック IP アドレスです。 つまり、DirectAccess クライアント (データ カードまたは SIM 接続) によって受信された IP アドレスがパブリック アドレス空間からの IP である可能性がありますが、実際には 1 つ以上の NAT の背後にあります。

クライアントが NAT デバイスの背後にある場合は、Teredoを使用しようとします。 ホテル、空港、コーヒーショップなどの多くの企業では、Teredoトラフィックがファイアウォールを通過することを許可していません。 このようなシナリオでは、クライアントは IP-HTTPS にフェールオーバーします。 IP-HTTPS は、SSL (TLS) TCP 443 ベースの接続経由で構築されます。 SSL 送信トラフィックは、ほとんどの場合、すべてのネットワークで許可されます。

これを念頭に置いて、IP-HTTPS は、信頼性が高く、常に到達可能なバックアップ接続を提供するために構築されました。 DirectAccess クライアントは、他のメソッド (Teredoや 6to4 など) が失敗した場合にこれを使用します。

移行テクノロジの詳細については、 IPv6 遷移テクノロジに関するページを参照してください。

証明書失効Lists

証明書失効リスト (CRL) は、失効した証明書に関する情報を、証明書の有効性を検証しようとする個人、コンピューター、アプリケーションに配布するために使用されます。 CRL は、失効した期限切れ証明書の完全なデジタル署名済みリストです。 CRL は、(CRL の構成された有効期間に基づいて) CRL をキャッシュし、それを使用して使用するために提示された証明書を確認できるクライアントによって取得されます。 既定では、CRL は Microsoft Enterprise CA によって次の 2 つの場所で発行されます。

  • http://CAName/certenroll/CRLName
  • LDAP:///CN=CAName,CN=CAComputerName,CN=CDP,CN=PublicKeyServices,CN=Services,CN=Configuration,DC=ForestRootDomain,DC=TLD

基本的な証明書チェーンの検証

CryptoAPI が証明書チェーンを構築して検証すると、次の 3 つの異なるフェーズが発生します。

  1. 使用可能なすべての証明書チェーンは、ローカルにキャッシュされた証明書を使用して構築されます。 証明書チェーンのいずれも自己署名証明書で終わっていない場合、CryptoAPI は可能な限り最適なチェーンを選択し、機関情報アクセス拡張機能で指定された発行者証明書を取得してチェーンを完了しようとします。 このプロセスは、自己署名証明書へのチェーンが構築されるまで繰り返されます。
  2. 信頼されたルート ストア内の自己署名証明書で終わるチェーンごとに、失効チェックが実行されます。
  3. 失効チェックは、ルート CA 証明書から評価された証明書まで実行されます。

証明書失効リスト (CRL) 配布ポイントの詳細については、「CRL 配布ポイントの指定」を参照してください。

証明書失効チェックと CRL 配布ポイント

DirectAccess クライアントと DirectAccess サーバー間の IP-HTTPS 接続には、証明書失効チェックが必要です。 証明書失効チェックが失敗した場合、DirectAccess クライアントは DirectAccess サーバーへの IP-HTTPS ベースの接続を行うことはできません。 そのため、インターネット ベースの CRL 配布ポイントの場所は IP-HTTPS 証明書に存在し、インターネットに接続されている DirectAccess クライアントで使用できる必要があります。

DirectAccess クライアントとネットワーク ロケーション サーバー間の IP-HTTPS ベースの接続には、認定失効チェックが必要です。 証明書失効チェック失敗した場合、DirectAccess クライアントはネットワーク ロケーション サーバー上の IP-HTTPS ベースの URL にアクセスできません。 そのため、イントラネットベースの CRL 配布ポイントの場所は、ネットワーク ロケーション サーバー証明書に存在し、名前解決ポリシー テーブル (NRPT) に DirectAccess 規則がある場合でも、イントラネットに接続されている DirectAccess クライアントで使用できる必要があります。

DirectAccess クライアントと DirectAccess サーバー間の IPsec トンネルには、認定失効チェックが必要です。