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.
- Clique em Iniciar e em Executar.
- 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
- No prompt de comando Ntdsutil.exe, digite
LDAP policies
e pressione ENTER. - No prompt de comando de política LDAP, digite
connections
e pressione ENTER. - 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. - No prompt de comando de conexão do servidor, digite
q
e pressione ENTER para retornar ao menu anterior. - No prompt de comando de política LDAP, digite
Show Values
e pressione ENTER.
Uma exibição das políticas como elas existem é exibida.
Modificar configurações de política
No prompt de comando Ntdsutil.exe, digite
LDAP policies
e pressione ENTER.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.
Você pode usar o
Show Values
comando para verificar suas alterações.Para salvar as alterações, use Confirmar alterações.
Quando terminar, digite
q
e pressione ENTER.Para sair do Ntdsutil.exe, no prompt de comando, digite
q
e 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
Crie uma nova política de consulta em CN=Query-Policies,CN=Directory Service,CN=Windows NT,CN=Services,CN=Configuration, forest root.
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.