Partilhar via


Exibir e definir a política LDAP no Active Directory usando Ntdsutil.exe

Este artigo descreve como gerenciar políticas LDAP usando a ferramenta Ntdsutil.exe.

Número original do KB: 315071

Resumo

Para garantir que os controladores de domínio possam dar suporte a garantias de nível de serviço, você deve especificar limites operacionais para muitas operações LDAP. Esses limites impedem que operações específicas afetem negativamente o desempenho do servidor. Eles também tornam o servidor mais resistente a alguns tipos de ataques.

As políticas LDAP são implementadas usando objetos da queryPolicy classe. Os objetos de Política de Consulta podem ser criados no contêiner Políticas de Consulta, que é filho do contêiner Serviço de Diretório no contexto de nomenclatura de configuração. Por exemplo, cn=Query-Policies,cn=Directory Service,cn=Windows NT,cn=Contexto de nomenclatura de configuração de serviços.

Limites de administração LDAP

Os limites de administração do LDAP são:

  • InitRecvTimeout – esse valor define o tempo máximo em segundos que um controlador de domínio aguarda que o cliente envie a primeira solicitação depois que o controlador de domínio recebe uma nova conexão. Se o cliente não enviar a primeira solicitação nesse período de tempo, o servidor desconectará o cliente.

    Valor padrão: 120 segundos

  • MaxActiveQueries - O número máximo de operações de pesquisa LDAP simultâneas que podem ser executadas ao mesmo tempo em um controlador de domínio. Quando esse limite é atingido, o servidor LDAP retorna um erro ocupado .

    Valor padrão: 20

    Observação

    Esse controle tem uma interação incorreta com o valor MaxPoolThreads. MaxPoolThreads é um controle por processador, enquanto MaxActiveQueries define um número absoluto. A partir do Windows Server 2003, MaxActiveQueries não é mais imposto. Além disso, MaxActiveQueries não aparece na versão Windows Server 2003 do NTDSUTIL.

    Valor padrão: 20

  • MaxConnections - O número máximo de conexões LDAP simultâneas que um controlador de domínio aceitará. Se uma conexão ocorrer depois que o controlador de domínio atingir esse limite, o controlador de domínio descartará outra conexão.

    Valor padrão: 5000

  • MaxConnIdleTime - O tempo máximo em segundos que o cliente pode ficar ocioso antes que o servidor LDAP feche a conexão. Se uma conexão estiver ociosa por mais do que esse tempo, o servidor LDAP retornará uma notificação de desconexão LDAP.

    Valor padrão: 900 segundos

  • MaxDatagramRecv - O tamanho máximo de uma solicitação de datagrama que um controlador de domínio processará. As solicitações maiores que o valor de MaxDatagramRecv são ignoradas.

    Valor padrão: 4.096 bytes

  • MaxNotificationPerConnection - O número máximo de solicitações de notificação pendentes permitidas em uma única conexão. Quando esse limite é atingido, o servidor retorna um erro de ocupado para todas as novas pesquisas de notificação executadas nessa conexão.

    Valor padrão: 5

  • MaxPageSize - Esse valor controla o número máximo de objetos retornados em um único resultado de pesquisa, independentemente do tamanho de cada objeto retornado. Para executar uma pesquisa em que o resultado pode exceder esse número de objetos, o cliente deve especificar o controle de pesquisa paginado. É para agrupar os resultados retornados em grupos que não são maiores que o valor MaxPageSize. Para resumir, MaxPageSize controla o número de objetos retornados em um único resultado de pesquisa.

    Valor padrão: 1.000

  • MaxPoolThreads – o número máximo de threads por processador que um controlador de domínio dedica à escuta de E/S (entrada) de rede ou de saída. Esse valor também determina o número máximo de threads por processador que podem funcionar em solicitações LDAP ao mesmo tempo.

    Valor padrão: 4 threads por processador

  • MaxResultSetSize - Entre as pesquisas individuais que compõem uma pesquisa de resultado paginado, o controlador de domínio pode armazenar dados intermediários para o cliente. O controlador de domínio armazena esses dados para acelerar a próxima parte da pesquisa de resultados paginados. O valor MaxResultSize controla a quantidade total de dados que o controlador de domínio armazena para esse tipo de pesquisa. Quando esse limite é atingido, o controlador de domínio descarta o mais antigo desses resultados intermediários para liberar espaço para armazenar novos resultados intermediários.

    Valor padrão: 262.144 bytes

  • MaxQueryDuration - O tempo máximo em segundos que um controlador de domínio gastará em uma única pesquisa. Quando esse limite é atingido, o controlador de domínio retorna um erro " timeLimitExceeded". As pesquisas que exigem mais tempo devem especificar o controle de resultados paginados.

    Valor padrão: 120 segundos

  • MaxTempTableSize - Enquanto uma consulta é processada, o dblayer pode tentar criar uma tabela de banco de dados temporária para classificar e selecionar resultados intermediários. O limite MaxTempTableSize controla o tamanho dessa tabela de banco de dados temporária. Se a tabela de banco de dados temporária contiver mais objetos do que o valor de MaxTempTableSize, o executará dblayer uma análise muito menos eficiente do banco de dados DS completo e de todos os objetos no banco de dados DS.

    Valor padrão: 10.000 registros

  • MaxValRange - Esse valor controla o número de valores retornados para um atributo de um objeto, independentemente de quantos atributos esse objeto tem ou de quantos objetos estavam no resultado da pesquisa. No Windows 2000, esse controle é codificado em 1.000. Se um atributo tiver mais do que o número de valores especificados pelo valor MaxValRange, você deverá usar controles de intervalo de valores no LDAP para recuperar valores que excedam o valor MaxValRange. MaxValueRange controla o número de valores retornados em um único atributo em um único objeto.

    • Valor mínimo: 30
    • Valor padrão: 1500

Comece Ntdsutil.exe

Ntdsutil.exe está localizado na pasta Ferramentas de suporte no CD-ROM de instalação do Windows. Por padrão, Ntdsutil.exe é instalado na pasta System32.

  1. Clique em Iniciar e em Executar.
  2. Na caixa de texto Abrir, digite ntdsutil e pressione ENTER. Para exibir a ajuda a qualquer momento, digite ? no prompt de comando.

Exibir configurações de política atuais

  1. No prompt de comando Ntdsutil.exe, digite LDAP policiese pressione ENTER.
  2. No prompt de comando de política LDAP, digite connectionse pressione ENTER.
  3. No prompt de comando de conexão do servidor, digite connect to server <DNS name of server>e pressione ENTER. Você deseja se conectar ao servidor com o qual está trabalhando no momento.
  4. No prompt de comando de conexão do servidor, digite qe pressione ENTER para retornar ao menu anterior.
  5. No prompt de comando de política LDAP, digite Show Valuese pressione ENTER.

Uma exibição das políticas como elas existem é exibida.

Modificar configurações de política

  1. No prompt de comando Ntdsutil.exe, digite LDAP policiese pressione ENTER.

  2. No prompt de comando de política LDAP, digite Set <setting> to <variable>e pressione ENTER. Por exemplo, digite Definir MaxPoolThreads como 8.

    Essa configuração muda se você adicionar outro processador ao servidor.

  3. Você pode usar o Show Values comando para verificar suas alterações.

    Para salvar as alterações, use Confirmar alterações.

  4. Quando terminar, digite qe pressione ENTER.

  5. Para sair do Ntdsutil.exe, no prompt de comando, digite qe pressione ENTER.

Observação

Este procedimento mostra apenas as configurações de Diretiva de Domínio Padrão. Se você aplicar sua própria configuração de política, não poderá vê-la.

Reinicialização necessária

Se você alterar os valores da diretiva de consulta que um controlador de domínio está usando no momento, essas alterações entrarão em vigor sem uma reinicialização. No entanto, se uma nova política de consulta for criada, uma reinicialização será necessária para que a nova política de consulta entre em vigor.

Considerações sobre a alteração de valores de consulta

Para manter a resiliência do servidor de domínio, não recomendamos que você aumente o valor de tempo limite de 120 segundos. Formar consultas mais eficientes é a solução preferida. Para obter mais informações sobre como criar consultas eficientes, consulte Criando aplicativos habilitados para Microsoft Active Directory mais eficientes.

No entanto, se alterar a consulta não for uma opção, aumente o valor de tempo limite apenas em um controlador de domínio ou apenas em um site. Para obter instruções, consulte a próxima seção. Se a configuração for aplicada a um controlador de domínio, reduza a prioridade LDAP DNS no controlador de domínio, para que os clientes tenham menos probabilidade de usar o servidor para autenticação. No controlador de domínio com a prioridade de aumento, use a seguinte configuração do Registro para definir LdapSrvPriority:

HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Netlogon\Parameters

No menu Editar, selecione Adicionar Valor e adicione o seguinte valor do Registro:

  • Nome da entrada: LdapSrvPriority
  • Tipo de dados: REG_DWORD
  • Valor: Defina o valor como o valor da prioridade desejada.

Para obter mais informações, consulte Como otimizar o local de um controlador de domínio ou catálogo global que reside fora do site de um cliente.

Instruções para configurar por controlador de domínio ou por política de site

  1. Crie uma nova política de consulta em CN=Query-Policies,CN=Directory Service,CN=Windows NT,CN=Services,CN=Configuration, forest root.

  2. Defina o controlador de domínio ou site para apontar para a nova política inserindo o nome distinto da nova política no atributo Query-Policy-Object . A localização do atributo é a seguinte:

    • O local do controlador de domínio é CN=Configurações NTDS, CN= DomainControllerName, CN=Servidores,CN= nome do site,CN=Sites,CN=Configuração, raiz da floresta.

    • O local do site é CN=Configurações do Site NTDS,CN= nome do site,CN=Sites,CN=Configuração, raiz da floresta.

Exemplo de script

Você pode usar o texto a seguir para criar um arquivo Ldifde. Você pode importar esse arquivo para criar a política com um valor de tempo limite de 10 minutos. Copie esse texto para Ldappolicy.ldf e execute o comando a seguir, em que forest root é o nome distinto da raiz da floresta. Deixe DC=X como está. É uma constante que será substituída pelo nome raiz da floresta quando o script for executado. A constante X não indica um nome de controlador de domínio.

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

Depois de importar o arquivo, você pode alterar os valores de consulta usando Adsiedit.msc ou Ldp.exe. A configuração MaxQueryDuration neste script é de 5 minutos.

Para vincular a política a um DC, use um arquivo de importação LDIF como este:

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

Importe-o usando o seguinte comando:

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

Para um site, o arquivo de importação LDIF conteria:

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

Observação

Ntdsutil.exe exibe apenas o valor na política de consulta padrão. Se alguma política personalizada for definida, ela não será exibida pelo Ntdsutil.exe.