Active Directory は LDAP サーバーとしても動作しています。
当然、OpenLDAP などで Active Directory に問い合わせできます。ただし、匿名の問い合わせは許可しておらず (Windows 2000 までは既定で許可していました。)、LDAP の問い合わせをすることそのものに対して認証が必要です。これを LDAP バインドと呼びます。
この警告は、現在のドメイン コントローラーの設定が署名を必須にしていないため(ついでに平文の LDAP バインドも許可している)に発生します。
作成 2010.02.28
更新 2010.03.04
更新 2010.03.04
ActiveDirectory DomainService Event:2886 の対処
目次
ログの名前 | ソース | イベントID | レベル |
ディレクトリ サービス | ActiveDirectory_DomainService | 2886 | 警告 |
このディレクトリ サーバーのセキュリティは、署名 (整合性の確認) を要求しない SASL (ネゴシエート、Kerberos、NTLM または ダイジェスト) LDAP バインド、およびクリア テキスト (SSL/TLS 暗号化がされていない) 接続上で実行される LDAP 簡易 バインドを拒否するようサーバーを設定することで、大幅に強化することができます。これらのバインドを使用する クライアントが 1 つもない場合でも、拒否するようにサーバーを構成することで、サーバーのセキュリティが強化されます。 一部のクライアントは現在、署名されていない SASL バインド、または非 SSL/TLS 接続を介した LDAP 簡易バインドに依存している可能性があり、構成を変更すると機能しなくなる可能性があります。このようなバインドを使用するクライアントを特定できるように、このディレクトリ サーバーで該当するバインドが発生した場合、発生件数を示す概要イベントを 24 時間ごとに記録します。該当するバインドの使用を特定されたクライアントについては、そのようなバインドを使用しないように構成を変更することをお勧めします。イベントが記録されなくなってから一定の期間が経過したら、該当するバインドを拒否するようにサーバーを構成してください。 サーバーの構成を変更する方法について詳しくは、http://go.microsoft.com/fwlink/?LinkID=87923 を参照してください。 追加のログ作成を有効にして、クライアントがそのようなバインドを作成するたびに、バインドの作成元のクライアントの情報も含め、イベントが記録されるようにすることもできます。これを行うには、"LDAP Interface Events" イベント ログ カテゴリ の設定をレベル 2 以上に上げてください。 |
原因
対処の必要性
パスワード漏洩のリスクが有るため、LDAP サーバーとして明示的に参照しているクライアントがいない場合は対処した方が良いでしょう。
Active Directory を参照している業務システムや非Windows系のメールサーバーなどがある場合は、LDAP 簡易バインドを使用していないか確認する必要があります。
なお、現在の設定でもドメイン コントローラーの動作に支障はありません。また、もともと弱い認証方式を使用していないので設定を変更してもパフォーマンスの劣化はありません。
Active Directory を参照している業務システムや非Windows系のメールサーバーなどがある場合は、LDAP 簡易バインドを使用していないか確認する必要があります。
なお、現在の設定でもドメイン コントローラーの動作に支障はありません。また、もともと弱い認証方式を使用していないので設定を変更してもパフォーマンスの劣化はありません。
LDAP 簡易バインドの利用有無の確認
既定でも、LDAP 簡易バインドが発生すると24時間の集計結果が以下のようなフォーマットでイベントに記録されるようになっています。しばらく放置して様子を見てください。
ログの名前 | ソース | イベントID | レベル |
ディレクトリ サービス | ActiveDirectory_DomainService | 2887 | 警告 |
過去 24 時間の間に、一部のクライアントが以下のいずれかの LDAP バインドを実行しようと試みました: (1) 署名 (整合性の確認) を要求しない SASL (ネゴシエート、Kerberos、NTLM、またはダイジェスト) LDAP バインド、または (2) クリアテキスト (SSL/TLS 暗号化がされていない) 接続に対して実行された LDAP 簡易バインド このディレクトリ サーバーは現在これらのバインドを拒否するように設定されていません。このディレクトリ サーバーのセキュリ ティは、これらのバインドを拒否することで大幅に強化されます。サーバーの構成を変更する方法について詳しくは、 http://go.microsoft.com/fwlink/?LinkID=87923 を参照してください。 過去 24 時間に受信した、これらのバインドの数の概要については、以下を参照してください。 追加のログ作成を有効にして、該当するバインドをクライアントが作成するたびに、バインドの作成元のクライアントの 情報も含め、イベントが記録されるようにすることもできます。これを行うには、"LDAP Interface Events" イベント ログ カテゴリの 設定をレベル 2 以上に上げてください。 SSL/TLS を使用せずに実行された簡易バインドの数: 1 署名なしで実行されたネゴシエート/Kerberos/NTLM/ダイジェスト バインドの数: 0 |
実際にあるようなら、以下のレジストリを設定して発信元を特定します。サービスやOSの再起動は不要です。
Windows Registry Editor Version 5.00 [HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\services\NTDS\Diagnostics] "16 LDAP Interface Events"=dword:00000002レジストリを変更後、簡易バインドがあると以下のイベントが記録されます。
ログの名前 | ソース | イベントID | レベル |
ディレクトリ サービス | ActiveDirectory_DomainService | 2889 | 情報 |
以下のクライアントは、署名 (整合性の確認) を要求しない SASL (ネゴシエート、Kerberos、NTLM または ダイジェスト) LDAP バインド、またはクリア テキスト (SSL/TLS 暗号化がされていない) 接続上で実行される LDAP 簡易バインドを実行しようとしました。 クライアント IP アドレス: 192.168.10.2:62786 以下の資格で認証を試みたクライアントの ID: SAMPLE\Administrator |
LDAP 簡易バインドを無効にする
ドメイン コントローラー
「グループ ポリシーの管理」から Default Domain Controllers Policy を修正します。
コンピューターの構成/ポリシー/Windows の設定/セキュリティの設定/ローカル ポリシー/セキュリティ オプション/ ドメイン コントローラー: LDAP サーバー署名必須 - 署名を必要とする
LDAP 簡易バインドを使用していた場合 Windows の対処
ドメインに参加し、ADSI を使用します。
アプリケーションに大幅な改修が必要になるかもしれません。
はじめからこれで作れば簡単だったのにね。
アプリケーションに大幅な改修が必要になるかもしれません。
はじめからこれで作れば簡単だったのにね。
LDAP 簡易バインドを使用していた場合 Linux の対処
ドメイン コントローラー側で「Active Directory 証明書サービス」をインストールします。
「証明機関」スナップインから DER 形式の CA ルート証明書が取得できます。
PEM 形式に変換するには以下の通り。
PEM 形式に変換するには以下の通り。
openssl x509 -inform der -in der-ca-cert.cer -outform pem -out ca-cert.pem正しく変換出来ているか確認するには
openssl x509 -inform pem -in ca-cert.pem -text接続時には、ldaps://server.domain.tld とFQDNを指定しなければならない点に注意。
参考
タグ: Active Directory