Windows Server で LDAP 署名を有効にする方法

適用対象: Windows Server 2019Windows Server 2016Windows Server 2012 R2

はじめに


ディレクトリサーバーのセキュリティを大幅に向上させるには、署名 (整合性の検証) を要求しない LDAP バインド、またはクリアテキスト (SSL/TLS 暗号化されていない) 接続で実行される LDAP 簡易バインドを拒否するようにサーバーを構成します。 SASL バインドには、Negotiate、Kerberos、NTLM、ダイジェストなどのプロトコルが含まれます。署名されていないネットワークトラフィックは、リプレイ攻撃を受けやすくなります。 このような攻撃では、侵入者が認証の試行とチケットの発行を傍受します。 侵入者は、チケットを再利用して正当なユーザーを偽装することができます。 さらに、署名されていないネットワークトラフィックは、侵入者がクライアントとサーバー間のパケットをキャプチャし、パケットを変更してからサーバーに転送する man-in-the-middle (MIM) 攻撃に対して脆弱です。 この問題が LDAP サーバーで発生した場合、攻撃者は、LDAP クライアントからの偽造された要求に基づいて、サーバーが決定を下す可能性があります。この記事では、ディレクトリサーバーがこのような攻撃から保護されるように構成する方法について説明します。

詳細情報


[署名を必須にする] オプションを使用していないクライアントを見つける方法

この構成変更を行った後、署名されていない SASL (Negotiate、Kerberos、NTLM、またはダイジェスト) を使用するクライアントは、LDAP バインドまたは LDAP の単純なバインドで、SSL/TLS 以外の接続を使用して動作を停止します。 これらのクライアントを識別するために、Active Directory ドメインサービス (AD DS) またはライトウェイトディレクトリサーバー (LDS) のディレクトリサーバーは、一連のバインドが行われたことを示すために、24時間ごとに概要イベント ID 2887 1 時間をログに記録します。 これらのクライアントでは、このようなバインドを使用しないように構成することをお勧めします。 このようなイベントが長期間監視されない場合は、そのようなバインドを拒否するようにサーバーを構成することをお勧めします。そのようなクライアントを識別するための詳細情報が必要な場合は、より詳細なログを提供するようにディレクトリサーバーを構成できます。 この追加のログは、クライアントが署名されていない LDAP バインドを試みるときに、イベント ID 2889 をログに記録します。 ログエントリには、クライアントの IP アドレスと、クライアントが認証に使用した id が表示されます。 この追加のログを有効にするには、 16 個LDAP インターフェイスイベントの診断設定を2 (Basic)に設定します。 診断設定の変更方法の詳細については、次のサポート技術情報の記事を参照してください。

314980Active Directory と LDS 診断イベントログを構成する方法

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

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

セキュリティ設定の変更の影響については、次のサポート技術情報の記事を参照してください。

823659 セキュリティ設定とユーザー権利の割り当てを変更すると、クライアント、サービス、プログラムの問題が発生することがある

グループポリシーを使用する

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

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

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

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

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

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

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

Active Directory ライトウェイトディレクトリサービス (AD LDS) の場合、既定では、レジストリキーは使用できません。 そのため、次のレジストリサブキーの下で REG_DWORD の種類のLdapserverintegrityレジストリエントリを作成する必要があります。

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

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

  1. AD DS 管理ツールがインストールされているコンピューターにサインインします。
  2. [> の開始] を選択し、「 ldp.exe」と入力して、[ OK]を選択します。
  3. [接続>接続] を選びます。
  4. [サーバーポート] で、サーバー名と、ディレクトリサーバーの SSL 以外の TLS ポートを入力し、[ OK]を選択します。
  5. 接続が確立されたら、[接続>バインド] を選びます。
  6. [ Bind type] で [ Simple bind] を選びます。
  7. ユーザー名とパスワードを入力し、[ OK]を選択します。
次のエラーメッセージが表示される場合は、ディレクトリサーバーが正常に設定されています。
Ldap_simple_bind_s () 失敗: 強力な認証が必要です

DISCLAIMER

MICROSOFT および/またはその各サプライヤーは、この WEB サイトに掲載されているドキュメントや関連グラフィックスに含まれている情報に対する適合性について一切表明するものではありません。 この WEB サイトに公開されているドキュメントおよび関連するグラフィックスには、技術的な誤りや誤植の間違いが含まれている可能性があります。 変更は、ここに記載されている情報に定期的に追加されます。 MICROSOFT および/またはその各サプライヤーは、本製品やプログラムについて、いつでも改善または変更を行うことができます。