Compartir a través de


Visualización y establecimiento de la directiva LDAP en Active Directory mediante Ntdsutil.exe

En este artículo se describe cómo administrar directivas ligeras del Protocolo de acceso a directorios (LDAP) mediante la herramienta Ntdsutil.exe.

Número de KB original: 315071

Resumen

Para asegurarse de que los controladores de dominio pueden admitir garantías de nivel de servicio, debe especificar límites operativos para muchas operaciones LDAP. Estos límites impiden que las operaciones específicas afecten negativamente al rendimiento del servidor. También hacen que el servidor sea más resistente a algunos tipos de ataques.

Las directivas LDAP se implementan mediante objetos de la queryPolicy clase . Los objetos de directiva de consulta se pueden crear en el contenedor De directivas de consulta, que es un elemento secundario del contenedor del servicio de directorio en el contexto de nomenclatura de configuración. Por ejemplo, cn=Query-Policies,cn=Directory Service,cn=Windows NT,cn=Services configuration naming context.

Límites de administración de LDAP

Los límites de administración de LDAP son:

  • InitRecvTimeout: este valor define el tiempo máximo en segundos que un controlador de dominio espera a que el cliente envíe la primera solicitud después de que el controlador de dominio reciba una nueva conexión. Si el cliente no envía la primera solicitud en este período de tiempo, el servidor desconecta el cliente.

    Valor predeterminado: 120 segundos

  • MaxActiveQueries: el número máximo de operaciones simultáneas de búsqueda LDAP que se pueden ejecutar al mismo tiempo en un controlador de dominio. Cuando se alcanza este límite, el servidor LDAP devuelve un error ocupado .

    Valor predeterminado: 20

    Nota:

    Este control tiene una interacción incorrecta con el valor MaxPoolThreads. MaxPoolThreads es un control por procesador, mientras que MaxActiveQueries define un número absoluto. A partir de Windows Server 2003, Ya no se aplica MaxActiveQueries. Además, MaxActiveQueries no aparece en la versión de Windows Server 2003 de NTDSUTIL.

    Valor predeterminado: 20

  • MaxConnections: el número máximo de conexiones LDAP simultáneas que aceptará un controlador de dominio. Si una conexión entra después de que el controlador de dominio alcance este límite, el controlador de dominio quita otra conexión.

    Valor predeterminado: 5000

  • MaxConnIdleTime: el tiempo máximo en segundos que el cliente puede estar inactivo antes de que el servidor LDAP cierre la conexión. Si una conexión está inactiva durante más de este tiempo, el servidor LDAP devuelve una notificación de desconexión LDAP.

    Valor predeterminado: 900 segundos

  • MaxDatagramRecv: tamaño máximo de una solicitud de datagrama que procesará un controlador de dominio. Las solicitudes que son mayores que el valor de MaxDatagramRecv se omiten.

    Valor predeterminado: 4096 bytes

  • MaxNotificationPerConnection: el número máximo de solicitudes de notificación pendientes permitidas en una sola conexión. Cuando se alcanza este límite, el servidor devuelve un error ocupado a las nuevas búsquedas de notificaciones que se realizan en esa conexión.

    Valor predeterminado: 5

  • MaxPageSize: este valor controla el número máximo de objetos que se devuelven en un único resultado de búsqueda, independientemente del tamaño de cada objeto devuelto. Para realizar una búsqueda en la que el resultado puede superar este número de objetos, el cliente debe especificar el control de búsqueda paginado. Es agrupar los resultados devueltos en grupos que no son mayores que el valor MaxPageSize. En resumen, MaxPageSize controla el número de objetos que se devuelven en un único resultado de búsqueda.

    Valor predeterminado: 1000

  • MaxPoolThreads: el número máximo de subprocesos por procesador que un controlador de dominio dedica a escuchar la entrada o salida de la red (E/S). Este valor también determina el número máximo de subprocesos por procesador que pueden funcionar en solicitudes LDAP al mismo tiempo.

    Valor predeterminado: 4 subprocesos por procesador

  • MaxResultSetSize: entre las búsquedas individuales que componen una búsqueda de resultados paginada, el controlador de dominio puede almacenar datos intermedios para el cliente. El controlador de dominio almacena estos datos para acelerar la siguiente parte de la búsqueda de resultados paginada. El valor MaxResultSize controla la cantidad total de datos que almacena el controlador de dominio para este tipo de búsqueda. Cuando se alcanza este límite, el controlador de dominio descarta la más antigua de estos resultados intermedios para hacer espacio para almacenar nuevos resultados intermedios.

    Valor predeterminado: 262 144 bytes

  • MaxQueryDuration: el tiempo máximo en segundos que un controlador de dominio gastará en una sola búsqueda. Cuando se alcanza este límite, el controlador de dominio devuelve un error "timeLimitExceededed". Las búsquedas que requieren más tiempo deben especificar el control de resultados paginados.

    Valor predeterminado: 120 segundos

  • MaxTempTableSize: mientras se procesa una consulta, dblayer puede intentar crear una tabla de base de datos temporal para ordenar y seleccionar los resultados intermedios. El límite MaxTempTableSize controla el tamaño de esta tabla de base de datos temporal. Si la tabla de base de datos temporal contiene más objetos que el valor de MaxTempTableSize, dblayer realiza un análisis mucho menos eficaz de la base de datos DS completa y de todos los objetos de la base de datos DS.

    Valor predeterminado: 10 000 registros

  • MaxValRange: este valor controla el número de valores que se devuelven para un atributo de un objeto, independientemente del número de atributos que tiene el objeto o del número de objetos que se encontraban en el resultado de la búsqueda. En Windows 2000, este control está codificado de forma rígida en 1000. Si un atributo tiene más del número de valores especificados por el valor MaxValRange, debe usar controles de intervalo de valores en LDAP para recuperar valores que superen el valor MaxValRange. MaxValueRange controla el número de valores que se devuelven en un único atributo en un único objeto.

    • Valor mínimo: 30
    • Valor predeterminado: 1500

Iniciar Ntdsutil.exe

Ntdsutil.exe se encuentra en la carpeta Herramientas de soporte técnico de la CD-ROM de instalación de Windows. De forma predeterminada, Ntdsutil.exe se instala en la carpeta System32.

  1. Haga clic en Inicio y luego en Ejecutar.
  2. En el cuadro de texto Abrir , escriba ntdsutil y presione ENTRAR. Para ver ayuda en cualquier momento, escriba ? en el símbolo del sistema.

Visualización de la configuración de directiva actual

  1. En el símbolo del sistema de Ntdsutil.exe, escriba LDAP policiesy presione ENTRAR.
  2. En el símbolo del sistema de la directiva LDAP, escriba connectionsy presione ENTRAR.
  3. En el símbolo del sistema de conexión del servidor, escriba connect to server <DNS name of server>y presione ENTRAR. Quiere conectarse al servidor con el que está trabajando actualmente.
  4. En el símbolo del sistema de conexión del servidor, escriba qy presione ENTRAR para volver al menú anterior.
  5. En el símbolo del sistema de la directiva LDAP, escriba Show Valuesy presione ENTRAR.

Aparece una presentación de las directivas a medida que existen.

Modificación de la configuración de directiva

  1. En el símbolo del sistema de Ntdsutil.exe, escriba LDAP policiesy presione ENTRAR.

  2. En el símbolo del sistema de la directiva LDAP, escriba Set <setting> to <variable>y presione ENTRAR. Por ejemplo, escriba Set MaxPoolThreads en 8.

    Esta configuración cambia si agrega otro procesador al servidor.

  3. Puede usar el Show Values comando para comprobar los cambios.

    Para guardar los cambios, use Confirmar cambios.

  4. Cuando termine, escriba qy presione ENTRAR.

  5. Para salir de Ntdsutil.exe, en el símbolo del sistema, escriba qy presione ENTRAR.

Nota:

Este procedimiento solo muestra la configuración predeterminada de la directiva de dominio. Si aplica su propia configuración de directiva, no podrá verla.

Requisito de reinicio

Si cambia los valores de la directiva de consulta que usa actualmente un controlador de dominio, esos cambios surten efecto sin reiniciar. Sin embargo, si se crea una nueva directiva de consulta, se requiere un reinicio para que la nueva directiva de consulta surta efecto.

Consideraciones para cambiar los valores de consulta

Para mantener la resistencia del servidor de dominio, no se recomienda aumentar el valor de tiempo de espera de 120 segundos. La formación de consultas más eficaces es una solución preferida. Para obtener más información sobre cómo crear consultas eficaces, consulte Creación de aplicaciones habilitadas para Microsoft Active Directory más eficientes.

Sin embargo, si cambiar la consulta no es una opción, aumente el valor de tiempo de espera solo en un controlador de dominio o solo en un sitio. Para obtener instrucciones, consulte la siguiente sección. Si la configuración se aplica a un controlador de dominio, reduzca la prioridad LDAP de DNS en el controlador de dominio para que los clientes usen menos el servidor para la autenticación. En el controlador de dominio con la prioridad de aumento, use la siguiente configuración del Registro para establecer LdapSrvPriority:

HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Netlogon\Parameters

En el menú Editar , seleccione Agregar valor y agregue el siguiente valor del Registro:

  • Nombre de entrada: LdapSrvPriority
  • Tipo de datos: REG_DWORD
  • Valor: establezca el valor en el valor de la prioridad que desee.

Para obtener más información, consulte Optimización de la ubicación de un controlador de dominio o catálogo global que reside fuera del sitio de un cliente.

Instrucciones para configurar por controlador de dominio o por directiva de sitio

  1. Cree una nueva directiva de consulta en CN=Query-Policies,CN=Directory Service,CN=Windows NT,CN=Services,CN=Configuration, forest root.

  2. Establezca el controlador de dominio o el sitio para que apunte a la nueva directiva escribiendo el nombre distintivo de la nueva directiva en el atributo Query-Policy-Object . La ubicación del atributo es la siguiente:

    • La ubicación del controlador de dominio es CN=NTDS Settings, CN= DomainControllerName, CN=Servers,CN= nombre de sitio,CN=Sites,CN=Configuration, forest root.

    • La ubicación del sitio es CN=NTDS Site Settings,CN= site name,CN=Sites,CN=Configuration, forest root.

Script de ejemplo

Puede usar el texto siguiente para crear un archivo Ldifde. Puede importar este archivo para crear la directiva con un valor de tiempo de espera de 10 minutos. Copie este texto en Ldappolicy.ldf y, a continuación, ejecute el siguiente comando, donde raíz del bosque es el nombre distintivo de la raíz del bosque. Deje DC=X tal como está. Es una constante que se reemplazará por el nombre raíz del bosque cuando se ejecute el script. La constante X no indica un nombre de controlador de dominio.

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

Iniciar script Ldifde

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

Después de importar el archivo, puede cambiar los valores de consulta mediante Adsiedit.msc o Ldp.exe. La configuración MaxQueryDuration de este script es de 5 minutos.

Para vincular la directiva a un controlador de dominio, use un archivo de importación LDIF de la siguiente manera:

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

Impórtelo mediante el siguiente comando:

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

Para un sitio, el archivo de importación de LDIF contendrá:

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

Nota:

Ntdsutil.exe solo muestra el valor en la directiva de consulta predeterminada. Si se definen directivas personalizadas, no se muestran mediante Ntdsutil.exe.