サーバーで LDAP サインインを有効Windows方法

この記事では、Windows Server 2019、Windows Server 2016、Windows Server 2012 R2、および Windows 10 で LDAP 署名を有効にする方法について説明します。

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

概要

署名 (整合性検証) を要求しない単純認証およびセキュリティ層 (SASL) LDAP バインドを拒否するようにサーバーを構成するか、クリア テキスト (SSL/TLS 暗号化されていない) 接続で実行される LDAP 単純バインドを拒否することで、ディレクトリ サーバーのセキュリティを大幅に向上できます。 SASL バインドには、ネゴシエート、Kerberos、NTLM、ダイジェストなどのプロトコルが含まれる場合があります。

署名されていないネットワーク トラフィックは、再生攻撃の影響を受けやすいです。 このような攻撃では、侵入者が認証の試みとチケットの発行を傍受します。 侵入者は、正当なユーザーを偽装するためにチケットを再利用できます。 さらに、署名されていないネットワーク トラフィックは、侵入者がクライアントとサーバー間のパケットをキャプチャし、パケットを変更し、それらをサーバーに転送する中間者 (MIM) 攻撃の影響を受けやすいです。 これが LDAP サーバーで発生した場合、攻撃者はサーバーが LDAP クライアントからの偽造要求に基づいて決定を下す可能性があります。

[署名を要求する] オプションを使用しないクライアントを検出する方法

この構成を変更すると、SSL/TLS 以外の接続で署名されていない SASL (ネゴシエート、Kerberos、NTLM、またはダイジェスト) LDAP バインドまたは LDAP 単純バインドに依存するクライアントが動作を停止します。 これらのクライアントを識別するために、Active Directory ドメイン サービス (AD DS) またはライトウェイト ディレクトリ サーバー (LDS) のディレクトリ サーバーは、24 時間に 1 回、概要イベント ID 2887 を記録して、そのようなバインドが発生した数を示します。 このようなバインドを使用しないクライアントを構成することをお勧めします。 このようなイベントが長期に及びなかった場合は、そのようなバインドを拒否するサーバーを構成することをお勧めします。

このようなクライアントを識別するために詳細な情報が必要な場合は、より詳細なログを提供するためにディレクトリ サーバーを構成できます。 この追加ログは、クライアントが署名されていない LDAP バインドを行う際にイベント ID 2889 を記録します。 ログ エントリには、クライアントの IP アドレスと、クライアントが認証に使用しようとした ID が表示されます。 この追加ログを有効にするには 、[16 LDAP インターフェイス イベント] 診断設定を 2 (Basic) に設定します。 診断設定を変更する方法の詳細については、「Active Directory および LDS 診断イベント ログを構成する方法 」を参照してください

SSL/TLS 以外の接続で署名されていない SASL LDAP バインドまたは LDAP 単純バインドを拒否するようにディレクトリ サーバーが構成されている場合、ディレクトリ サーバーは、このようなバインドが行われるときに 24 時間ごとに 1 回、概要イベント ID 2888 をログに記録します。

DS の LDAP サーバー署名を要求するようにディレクトリを構成するAD方法

セキュリティ設定の変更の影響について詳しくは、「セキュリティ設定とユーザー権限の割り当てを変更すると、クライアント、サービス、プログラムの問題が発生する可能性があります」をご 覧ください

注意

イベント ID 2889 のログ異常

サード パーティ製の LDAP クライアントを使用するアプリケーションでは、Windowsイベント ID 2889 エントリが生成される可能性があります。 これは、LDAP インターフェイス イベントをログに記録し、if が LDAPServerIntegrity 2 に等しい場合に 発生します。 シール (暗号化) を使用すると、セキュリティ攻撃に対するMIMを満たしますWindowsイベント ID 2889 がログに記録されます。

これは、LDAP クライアントが SASL と共にシールのみを使用する場合に発生します。 これは、サードパーティの LDAP クライアントに関連付けされたフィールドで確認されています。

接続が署名とシールの両方を使用しない場合、接続セキュリティ要件チェックではフラグが正しく使用され、切断されます。 このチェックでは、エラー 8232 (ERROR_DS_STRONG_AUTH_REQUIRED) が生成されます。

グループ ポリシーの使用

サーバー LDAP 署名要件を設定する方法

  1. [実行の > 開始] を 選択し 、「mmc.exe」と入力、[OK] を選択します
  2. [ファイルの > 追加と削除] スナップインを選択し、[ グループ ポリシー管理エディター] 選択し、[追加] を 選択します
  3. [グループ ポリシー オブジェクトの参照] > を選択します
  4. [グループ ポリシー オブジェクトの 参照] ダイアログボックスで、[ドメイン 、OUs、 リンクされたグループ ポリシー オブジェクト] 領域で [既定のドメイン コントローラー ポリシー] を選択し 、[OK] を選択します。
  5. [完了] を選択します。
  6. [OK] を選択します。
  7. [既定のドメイン コントローラー ポリシー][コンピューター構成ポリシー Windows 設定ローカル 設定ポリシー] を選択し、[セキュリティ オプション > > > > > ]を選択します
  8. [ドメイン コントローラー: LDAP サーバー署名要件] を右クリックし、[プロパティ] を 選択します
  9. [ドメイン コントローラー : LDAP サーバー 署名要件のプロパティ]ダイアログ ボックスで、[このポリシー設定の定義] を有効にし、[このポリシー設定の定義] ボックスの一覧で [署名が必要] を選択し 、[OK] を選択します
  10. [設定の 変更の確認] ダイアログ ボックスで、[はい] を 選択します

ローカル コンピューター ポリシーを使用してクライアント LDAP 署名要件を設定する方法

  1. [実行の > 開始] を 選択し 、「mmc.exe」と入力、[OK] を選択します
  2. [ファイル > 追加と削除] スナップインを選択します
  3. [スナップ インの追加と削除] ダイアログ ボックスで 、[ グループ ポリシー オブジェクト エディター] を選択し、[追加] を 選択します
  4. [完了] を選択します。
  5. [OK] を選択します。
  6. [ローカル コンピューター ポリシー][コンピューター構成ポリシー Windows 設定ローカル 設定ポリシー] を選択し、[セキュリティ > > > > > オプション]を選択します
  7. [ネットワーク セキュリティ: LDAP クライアント 署名要件] を右クリックし、[プロパティ] を 選択します
  8. [ネットワーク セキュリティ : LDAP クライアント 署名要件のプロパティ]ダイアログ ボックスで、一覧で [署名が必要] を選択し 、[OK] を選択します
  9. [設定の 変更の確認] ダイアログ ボックスで、[はい] を 選択します

ドメイン グループ ポリシー オブジェクトを使用してクライアント LDAP 署名要件を設定する方法

  1. [実行の > 開始] を 選択し 、「mmc.exe」と入力、[OK] を選択します
  2. [ファイル > 追加と削除] スナップインを選択します
  3. [スナップ インの追加と削除] ダイアログ ボックスで 、[ グループ ポリシー オブジェクト エディター] を選択し、[追加] を 選択します
  4. [ 参照] を選択し、[既定の ドメイン ポリシー] (またはクライアント LDAP 署名を有効にするグループ ポリシー オブジェクト) を選択します。
  5. [OK] を選択します。
  6. [完了] を選択します。
  7. [閉じる] を選択します。
  8. [OK] を選択します。
  9. [既定のドメイン ポリシー > コンピューターの構成Windows 設定 ローカル 設定ポリシー] を選択し、[セキュリティ > > > オプション]を選択します
  10. [ネットワーク セキュリティ : LDAP クライアント 署名要件のプロパティ]ダイアログ ボックスで、一覧で [署名が必要] を選択し 、[OK] を選択します
  11. [設定の 変更の確認] ダイアログ ボックスで、[はい] を 選択します

レジストリ キーを使用してクライアント LDAP 署名要件を設定する方法

重要

このセクションの手順の実行には注意が必要です。 レジストリを誤って変更すると、深刻な問題が発生することがあります。 変更する前に、問題の発生に備えて復元用にレジストリのバックアップを作成してください。

既定では、Active Directory Lightweight Directory Services (LDS AD) では、レジストリ キーは使用できません。 したがって、次のレジストリ サブキーの下に、REG_DWORDのレジストリ エントリ LDAPServerIntegrity を作成する必要があります。

HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\ <*InstanceName> *\Parameters

注意

プレースホルダーは <InstanceName> 、変更する LDS ADの名前を表します。

構成の変更を確認する方法

  1. DS 管理ツールがインストールされているコンピューター ADサインインします。

  2. [実行の > 開始] を 選択し 、「ldp.exe」と入力、[OK] を選択します

  3. [接続] を > Connect します。

  4. [ サーバーと ポート ] で、サーバー名とディレクトリ サーバーの SSL/TLS 以外のポートを入力し 、[OK] を選択します

    注意

    Active Directory ドメイン コントローラーの場合、該当するポートは 389 です。

  5. 接続が確立された後、[接続バインド] > 選択します

  6. [バインド の種類] で、[単純な バインド] を選択します

  7. ユーザー名とパスワードを入力し 、[OK] を選択します

    次のエラー メッセージが表示された場合は、ディレクトリ サーバーが正常に構成されています。

    Ldap_simple_bind_s() 失敗: 強力な認証が必要

関連情報