Anzeigen und Festlegen der LDAP-Richtlinie in Active Directory mithilfe von Ntdsutil.exe

In diesem Artikel wird beschrieben, wie Sie LDAP-Richtlinien (Lightweight Directory Access Protocol) mithilfe des tools Ntdsutil.exe verwalten.

Gilt für: Windows Server 2019, Windows Server 2016, Windows Server 2012 R2
Ursprüngliche KB-Nummer: 315071

Zusammenfassung

Um sicherzustellen, dass Domänencontroller Garantien auf Servicelevel unterstützen können, müssen Sie betriebsbezogene Grenzwerte für viele LDAP-Vorgänge angeben. Diese Grenzwerte verhindern, dass sich bestimmte Vorgänge negativ auf die Leistung des Servers auswirken. Sie machen den Server auch resilienter gegenüber einigen Arten von Angriffen.

LDAP-Richtlinien werden mithilfe von Objekten der queryPolicy -Klasse implementiert. Abfragerichtlinienobjekte können im Container Abfragerichtlinien erstellt werden, der ein untergeordnetes Element des Verzeichnisdienstcontainers im Konfigurationsnamenskontext ist. Beispiel: cn=Query-Policies,cn=Directory Service,cn=Windows NT,cn=Services configuration naming context.

Ldap-Verwaltungsgrenzwerte

Die Grenzwerte für die LDAP-Verwaltung sind:

  • InitRecvTimeout: Dieser Wert definiert die maximale Zeit in Sekunden, die ein Domänencontroller wartet, bis der Client die erste Anforderung sendet, nachdem der Domänencontroller eine neue Verbindung empfangen hat. Wenn der Client die erste Anforderung in dieser Zeit nicht sendet, trennt der Server den Client.

    Standardwert: 120 Sekunden

  • MaxActiveQueries: Die maximale Anzahl gleichzeitiger LDAP-Suchvorgänge, die gleichzeitig auf einem Domänencontroller ausgeführt werden dürfen. Wenn dieser Grenzwert erreicht ist, gibt der LDAP-Server einen Ausgelasteten Fehler zurück.

    Standardwert: 20

    Hinweis

    Dieses Steuerelement hat eine falsche Interaktion mit dem MaxPoolThreads-Wert. MaxPoolThreads ist ein Pro-Prozessor-Steuerelement, während MaxActiveQueries eine absolute Zahl definiert. Ab Windows Server 2003 wird MaxActiveQueries nicht mehr erzwungen. Darüber hinaus wird MaxActiveQueries nicht in der Windows Server 2003-Version von NTDSUTIL angezeigt.

    Standardwert: 20

  • MaxConnections: Die maximale Anzahl gleichzeitiger LDAP-Verbindungen, die ein Domänencontroller akzeptiert. Wenn eine Verbindung hergestellt wird, nachdem der Domänencontroller diesen Grenzwert erreicht hat, bricht der Domänencontroller eine andere Verbindung ab.

    Standardwert: 5000

  • MaxConnIdleTime: Die maximale Zeit in Sekunden, die sich der Client im Leerlauf befinden kann, bevor der LDAP-Server die Verbindung schließt. Wenn sich eine Verbindung länger als dieses Mal im Leerlauf befindet, gibt der LDAP-Server eine Benachrichtigung zum Trennen des LDAP zurück.

    Standardwert: 900 Sekunden

  • MaxDatagramRecv: Die maximale Größe einer Datagrammanforderung, die von einem Domänencontroller verarbeitet wird. Anforderungen, die größer als der Wert für MaxDatagramRecv sind, werden ignoriert.

    Standardwert: 4.096 Byte

  • MaxNotificationPerConnection: Die maximale Anzahl ausstehender Benachrichtigungsanforderungen, die für eine einzelne Verbindung zulässig sind. Wenn dieser Grenzwert erreicht ist, gibt der Server einen Ausgelastungsfehler an alle neuen Benachrichtigungssuchen zurück, die für diese Verbindung ausgeführt werden.

    Standardwert: 5

  • MaxPageSize: Dieser Wert steuert die maximale Anzahl von Objekten, die in einem einzelnen Suchergebnis zurückgegeben werden, unabhängig davon, wie groß jedes zurückgegebene Objekt ist. Um eine Suche durchzuführen, bei der das Ergebnis diese Anzahl von Objekten überschreiten kann, muss der Client das ausgelagerte Suchsteuerelement angeben. Die zurückgegebenen Ergebnisse werden in Gruppen gruppiert, die nicht größer als der MaxPageSize-Wert sind. Zusammenfassend steuert MaxPageSize die Anzahl der Objekte, die in einem einzelnen Suchergebnis zurückgegeben werden.

    Standardwert: 1.000

  • MaxPoolThreads: Die maximale Anzahl von Threads pro Prozessor, die ein Domänencontroller für das Lauschen auf Netzwerkeingaben oder -ausgaben (E/A) bestimmt. Dieser Wert bestimmt auch die maximale Anzahl von Threads pro Prozessor, die gleichzeitig für LDAP-Anforderungen verwendet werden können.

    Standardwert: 4 Threads pro Prozessor

  • MaxResultSetSize: Zwischen den einzelnen Suchvorgängen, aus denen eine ausgelagerte Ergebnissuche besteht, kann der Domänencontroller Zwischendaten für den Client speichern. Der Domänencontroller speichert diese Daten, um den nächsten Teil der ausgelagerten Ergebnissuche zu beschleunigen. Der MaxResultSize-Wert steuert die Gesamtmenge der Daten, die der Domänencontroller für diese Art von Suche speichert. Wenn dieser Grenzwert erreicht ist, verwirft der Domänencontroller die ältesten dieser Zwischenergebnisse, um Platz zum Speichern neuer Zwischenergebnisse zu schaffen.

    Standardwert: 262.144 Bytes

  • MaxQueryDuration: Die maximale Zeit in Sekunden, die ein Domänencontroller für eine einzelne Suche aufwendet. Wenn dieser Grenzwert erreicht ist, gibt der Domänencontroller den Fehler "timeLimitExceeded" zurück. Suchvorgänge, die mehr Zeit erfordern, müssen das Auslagerungsergebnissteuerelement angeben.

    Standardwert: 120 Sekunden

  • MaxTempTableSize: Während eine Abfrage verarbeitet wird, wird möglicherweise versucht, dblayer eine temporäre Datenbanktabelle zum Sortieren und Auswählen von Zwischenergebnissen zu erstellen. Der MaxTempTableSize-Grenzwert steuert, wie groß diese temporäre Datenbanktabelle sein kann. Wenn die temporäre Datenbanktabelle mehr Objekte als der Wert für MaxTempTableSize enthalten würde, führt eine dblayer wesentlich weniger effiziente Analyse der gesamten DS-Datenbank und aller Objekte in der DS-Datenbank durch.

    Standardwert: 10.000 Datensätze

  • MaxValRange: Dieser Wert steuert die Anzahl der Werte, die für ein Attribut eines Objekts zurückgegeben werden, unabhängig davon, wie viele Attribute dieses Objekt aufweist oder wie viele Objekte im Suchergebnis enthalten waren. In Windows 2000 ist dieses Steuerelement bei 1.000 hartcodiert. Wenn ein Attribut mehr als die Anzahl von Werten aufweist, die vom MaxValRange-Wert angegeben werden, müssen Sie Wertebereichssteuerelemente in LDAP verwenden, um Werte abzurufen, die den MaxValRange-Wert überschreiten. MaxValueRange steuert die Anzahl der Werte, die für ein einzelnes Attribut für ein einzelnes Objekt zurückgegeben werden.

    • Mindestwert: 30
    • Standardwert: 1.500

Ntdsutil.exe starten

Ntdsutil.exe befindet sich im Ordner Supporttools auf der Windows-Installations-CD-ROM. Standardmäßig wird Ntdsutil.exe im Ordner System32 installiert.

  1. Klicken Sie auf Start und anschließend auf Ausführen.
  2. Geben Sie im Textfeld Öffnen den Text ntdsutil ein, und drücken Sie dann die EINGABETASTE. Um die Hilfe jederzeit anzuzeigen, geben Sie an der Eingabeaufforderung ein ? .

Anzeigen der aktuellen Richtlinieneinstellungen

  1. Geben Sie an der Ntdsutil.exe Eingabeaufforderung ein LDAP policies, und drücken Sie dann die EINGABETASTE.
  2. Geben Sie an der Eingabeaufforderung für die LDAP-Richtlinie ein connections, und drücken Sie dann die EINGABETASTE.
  3. Geben Sie an der Eingabeaufforderung für die Serververbindung ein connect to server <DNS name of server>, und drücken Sie dann die EINGABETASTE. Sie möchten eine Verbindung mit dem Server herstellen, mit dem Sie gerade arbeiten.
  4. Geben Sie an der Eingabeaufforderung für die Serververbindung ein q, und drücken Sie dann die EINGABETASTE, um zum vorherigen Menü zurückzukehren.
  5. Geben Sie an der Eingabeaufforderung für die LDAP-Richtlinie ein Show Values, und drücken Sie dann die EINGABETASTE.

Es wird eine Anzeige der Vorhandenen Richtlinien angezeigt.

Ändern von Richtlinieneinstellungen

  1. Geben Sie an der Ntdsutil.exe Eingabeaufforderung ein LDAP policies, und drücken Sie dann die EINGABETASTE.

  2. Geben Sie an der Eingabeaufforderung für die LDAP-Richtlinie ein Set <setting> to <variable>, und drücken Sie dann die EINGABETASTE. Geben Sie beispielsweise Set MaxPoolThreads auf 8 ein.

    Diese Einstellung ändert sich, wenn Sie Ihrem Server einen weiteren Prozessor hinzufügen.

  3. Sie können den Show Values Befehl verwenden, um Ihre Änderungen zu überprüfen.

    Um die Änderungen zu speichern, verwenden Sie Committen von Änderungen.

  4. Wenn Sie fertig sind, geben Sie ein q, und drücken Sie dann die EINGABETASTE.

  5. Um Ntdsutil.exe zu beenden, geben Sie an der Eingabeaufforderung ein q, und drücken Sie dann die EINGABETASTE.

Hinweis

In diesem Verfahren werden nur die Einstellungen für standarddomänenrichtlinien angezeigt. Wenn Sie Ihre eigene Richtlinieneinstellung anwenden, wird sie nicht angezeigt.

Neustartanforderung

Wenn Sie die Werte für die Abfragerichtlinie ändern, die derzeit von einem Domänencontroller verwendet wird, werden diese Änderungen ohne Neustart wirksam. Wenn jedoch eine neue Abfragerichtlinie erstellt wird, ist ein Neustart erforderlich, damit die neue Abfragerichtlinie wirksam wird.

Überlegungen zum Ändern von Abfragewerten

Um die Resilienz des Domänenservers zu gewährleisten, wird davon abgeraten, den Timeoutwert von 120 Sekunden zu erhöhen. Das Erstellen effizienterer Abfragen ist eine bevorzugte Lösung. Weitere Informationen zum Erstellen effizienter Abfragen finden Sie unter Erstellen effizienterer Microsoft Active Directory-Enabled-Anwendungen.

Wenn das Ändern der Abfrage jedoch keine Option ist, erhöhen Sie den Timeoutwert nur auf einem Domänencontroller oder nur an einem Standort. Anweisungen finden Sie im nächsten Abschnitt. Wenn die Einstellung auf einen Domänencontroller angewendet wird, verringern Sie die DNS-LDAP-Priorität auf dem Domänencontroller, damit Clients den Server weniger wahrscheinlich für die Authentifizierung verwenden. Verwenden Sie auf dem Domänencontroller mit der höheren Priorität die folgende Registrierungseinstellung, um festzulegen LdapSrvPriority:

HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Netlogon\Parameters

Wählen Sie im Menü Bearbeiten die Option Wert hinzufügen aus, und fügen Sie dann den folgenden Registrierungswert hinzu:

  • Eintragsname: LdapSrvPriority
  • Datentyp: REG_DWORD
  • Wert: Legen Sie den Wert auf den Wert der gewünschten Priorität fest.

Weitere Informationen finden Sie unter Optimieren des Speicherorts eines Domänencontrollers oder eines globalen Katalogs, der sich außerhalb des Standorts eines Clients befindet.

Anweisungen zum Konfigurieren der Richtlinie pro Domänencontroller oder pro Standort

  1. Erstellen Sie eine neue Abfragerichtlinie unter CN=Query-Policies,CN=Directory Service,CN=Windows NT,CN=Services,CN=Configuration, gesamtstrukturstamm.

  2. Legen Sie fest, dass der Domänencontroller oder standort auf die neue Richtlinie verweist, indem Sie den Distinguished Name der neuen Richtlinie in das Query-Policy-Object-Attribut eingeben. Der Speicherort des Attributs lautet wie folgt:

    • Der Speicherort für den Domänencontroller ist CN=NTDS Settings, CN= DomainControllerName, CN=Servers,CN= site name,CN=Sites,CN=Configuration, forest root.

    • Der Speicherort für den Standort ist CN=NTDS-Standorteinstellungen,CN= Standortname,CN=Sites,CN=Konfiguration, Gesamtstrukturstamm.

Beispielskript

Sie können den folgenden Text verwenden, um eine Ldifde-Datei zu erstellen. Sie können diese Datei importieren, um die Richtlinie mit einem Timeoutwert von 10 Minuten zu erstellen. Kopieren Sie diesen Text in Ldappolicy.ldf, und führen Sie dann den folgenden Befehl aus, wobei stamm der Gesamtstruktur der Distinguished Name ihres Gesamtstrukturstamms ist. Belassen Sie DC=X unverändert. Es handelt sich um eine Konstante, die durch den Stammnamen der Gesamtstruktur ersetzt wird, wenn das Skript ausgeführt wird. Die Konstante X gibt keinen Domänencontrollernamen an.

ldifde -i -f ldappolicy.ldf -v -c DC=X DC= forest root

Starten des Ldifde-Skripts

dn: CN=Extended Timeout,CN=Query-Policies,CN=Directory Service,CN=Windows NT,CN=Services,CN=Configuration,DC=X  
changetype: add  
instanceType: 4  
lDAPAdminLimits: MaxReceiveBuffer=10485760  
lDAPAdminLimits: MaxDatagramRecv=1024  
lDAPAdminLimits: MaxPoolThreads=4  
lDAPAdminLimits: MaxResultSetSize=262144  
lDAPAdminLimits: MaxTempTableSize=10000  
lDAPAdminLimits: MaxQueryDuration=300  
lDAPAdminLimits: MaxPageSize=1000  
lDAPAdminLimits: MaxNotificationPerConn=5  
lDAPAdminLimits: MaxActiveQueries=20  
lDAPAdminLimits: MaxConnIdleTime=900  
lDAPAdminLimits: InitRecvTimeout=120  
lDAPAdminLimits: MaxConnections=5000  
objectClass: queryPolicy  
showInAdvancedViewOnly: TRUE

Nachdem Sie die Datei importiert haben, können Sie die Abfragewerte mithilfe von Adsiedit.msc oder Ldp.exe ändern. Die MaxQueryDuration-Einstellung in diesem Skript beträgt 5 Minuten.

Um die Richtlinie mit einem Domänencontroller zu verknüpfen, verwenden Sie eine LDIF-Importdatei wie folgt:

dn: CN=NTDS  
Settings,CN=DC1,CN=Servers,CN=site1,CN=Sites,CN=Configuration, DC=X  
changetype: modify  
add: queryPolicyobject  
queryPolicyobject: CN=Extended Timeout,CN=Query-Policies,CN=Directory Service,CN=Windows NT,CN=Services,CN=Configuration,DC=X

Importieren Sie sie mithilfe des folgenden Befehls:

ldifde -i -f link-policy-dc.ldf -v -c DC=X DC= **forest root**

Für eine Website würde die LDIF-Importdatei Folgendes enthalten:

dn: CN=NTDS Site Settings,CN=site1,CN=Sites,CN=Configuration, DC=X  
changetype: modify  
add: queryPolicyobject  
queryPolicyobject: CN=Extended Timeout,CN=Query-Policies,CN=Directory Service,CN=Windows NT,CN=Services,CN=Configuration,DC=X

Hinweis

Ntdsutil.exe zeigt nur den Wert in der Standardabfragerichtlinie an. Wenn benutzerdefinierte Richtlinien definiert sind, werden sie nicht von Ntdsutil.exe angezeigt.