/
/

Como limpar o Active Directory: Práticas recomendadas e dicas

por Adam Bertram
ripulire Active Directory

Resumo instantâneo

Esta postagem do blog NinjaOne oferece uma lista abrangente de comandos CMD básicos e um mergulho profundo nos comandos do Windows, com +70 comandos CMD essenciais para usuários iniciantes e avançados. Explicamos sobre comandos práticos de prompt de comando para gerenciamento de arquivos, navegação em diretórios, solução de problemas de rede, operações de disco e automação, tudo com exemplos reais para maximizar a produtividade. Seja para aprender comandos básicos CMD ou dominar ferramentas avançadas de CLI do Windows, este guia ajuda você a usar o prompt de comando com mais eficiência.

Pontos principais

  • Identifique e elimine regularmente contas obsoletas do Active Directory, incluindo usuários desativados, contas inativas (por exemplo, aquelas inativas por mais de 30 dias) e aquelas com senhas expiradas há muito tempo, para reduzir os riscos de segurança e melhorar o desempenho da autenticação.
  • Utilize comandos do PowerShell, como Search-ADAccount, para localizar com eficiência todas as formas de contas não utilizadas, como usuários desativados e contas de computador inativas, para correção em massa.
  • Limpe o ambiente de GPOs (Group Policy Objects) obsoletos para eliminar o tempo de processamento desnecessário, melhorando assim o desempenho do logon do usuário e a eficiência geral do Active Directory.
  • Realize auditorias regulares de grupos de segurança para identificar e remover grupos vazios, duplicados ou de usuário único, o que é essencial para manter um modelo de segurança de privilégio mínimo claro e a conformidade.
  • Otimize a replicação do Active Directory ajustando os intervalos de replicação e refinando a topologia para garantir que o serviço de diretório permaneça íntegro, rápido e eficiente em termos de rede.

O Active Directory (AD) é um daqueles produtos que tendem a ficar inchados. Quanto mais dados você tiver em mãos, mais difícil será fazer qualquer coisa, desde o gerenciamento de usuários do AD até a configuração de backups do AD. É um produto em que muitas pessoas fazem alterações todos os dias e, no final, acaba sendo uma enorme pilha de coisas que, de alguma forma, ainda funcionam.

Até mesmo o departamento de TI mais bem-intencionado geralmente acaba com um ambiente do Active Directory que contém várias contas de usuário que não são mais necessárias, GPOs anexados a UOs que as pessoas nem sabiam que existiam e contas de computador que representavam computadores há muito tempo. Esse estado parece se infiltrar nas pessoas. Um dia, alguém se senta em frente ao Active Directory Users and Computers (ADUC) e tem aquele momento em que diz: “Uau! Isso precisa ser limpo”

Você veio ao lugar certo. Este artigo discute como limpar o Active Directory usando as práticas recomendadas e outras dicas. Se você preferir um guia visual, este tutorial fornece uma explicação passo a passo de como limpar o Active Directory.

Sinais de que você precisa limpar seu Active Directory

Quando você perceber que o seu AD precisa ser limpo, provavelmente será uma tarefa assustadora e esmagadora. Você pode iniciar um projeto para “limpar coisas”, mas logo descobrirá que clicar com o botão direito do mouse e excluir não será suficiente.

Há muitas maneiras de tornar esse projeto um sucesso, sendo que a primeira tarefa é definir exatamente o que significa “limpeza”. Para este artigo, abordaremos a “limpeza” do AD como o aprimoramento desses cinco aspectos essenciais.

  • Desempenho: um AD inchado pode levar a um tráfego de replicação desnecessário. Um dos sinais mais óbvios do mau funcionamento do AD é o tempo: O AD está demorando mais do que o normal para autenticar usuários, pesquisar objetos do AD ou fazer download de objetos da Política de Grupo?
  • Segurança. Os agentes de ameaças tentam continuamente explorar as organizações. Uma maneira de fazer isso é tentar obter acesso às redes assumindo o controle das contas de usuário do Active Directory.
  • Conformidade. A limpeza regular do Active Directory ajuda você a cumprir as exigências regulamentares, do GDPR ao PCI-DSS.
  • Operações de TI: um Active Directory desorganizado dificultará muito mais o gerenciamento pelos administradores de TI. Isso pode levar à ineficiência geral, pois a equipe de TI precisa passar mais tempo gerenciando o AD em vez de se concentrar em outros projetos estratégicos.
  • Agilidade nos negócios. O Active Directory é fundamental para muitas tarefas, e uma limpeza do AD pode ajudá-lo a permanecer ágil e manter sua vantagem competitiva.

Um Active Directory mal mantido

  • Tem muitos dados sujos (de contas de usuário obsoletas a duplicadas).
  • Tem grupos de distribuição vazios ou duplicados.
  • Fornece uma visão deficiente das permissões de acesso do grupo de segurança.
  • Demonstra a falta de processos estabelecidos para provisionamento e desprovisionamento.
  • Não é possível determinar a propriedade de objetos e grupos.
  • Mostra atributos de objeto imprecisos ou incompletos.

3 atributos de contas de usuário não utilizadas

Vamos nos concentrar agora nas contas de usuário não utilizadas. Mais especificamente, vamos discutir os três atributos que podem tornar uma conta de usuário “deletável” Esses atributos são: a) contas desativadas, b) contas que não são usadas há X dias e c) contas com senhas expiradas.

Protocolo de segurança: Desativar e colocar contas em quarentena

Antes de excluir permanentemente qualquer conta obsoleta, sempre siga um protocolo de quarentena. Primeiro, desative a conta e, em seguida, mova-a para uma Unidade Organizacional (OU) de Quarentena dedicada. Aguarde de 30 a 90 dias para garantir que nenhum serviço ou acesso crítico dependa dessa conta antes de prosseguir com a exclusão permanente.

Uma das maneiras mais fáceis de encontrar essas contas potencialmente não utilizadas é usar o PowerShell. O ActiveDirectory PowerShell é um módulo que inclui um cmdlet extremamente útil chamado Search-AdAccount, que facilita a criação de consultas e o retorno exato do que precisamos. No entanto, antes que esse cmdlet possa ser usado, você deve fazer o download do pacote Remote Server Administration Tools (RSAT) da Microsoft. Quando o RSAT estiver instalado, você deverá ter o módulo ActiveDirectory e estará pronto para começar! Além disso, para que qualquer um dos códigos abaixo funcione, presumo que você esteja em um PC com Windows que esteja conectado ao mesmo domínio que os usuários que você gostaria de encontrar.

Dito isso, vamos ao que interessa!

Localizar contas desativadas no Active Directory

A primeira tarefa é encontrar contas desativadas. Para localizar contas desativadas, usaremos o cmdlet Search-ADAccount. Esse cmdlet tem um único parâmetro chamado Disabled, o que torna essa tarefa muito fácil. Basta executar Search-AdAccount -AccountDisabled e pronto, todas as suas contas desativadas serão exibidas. Observe abaixo que usei o parâmetro UsersOnly porque esse cmdlet também pode localizar contas de computador desativadas.

C:> Search-ADAccount -UsersOnly -AccountDisabled -Server dc

AccountExpirationDate :
DistinguishedName : CN=Guest,CN=Users,DC=mylab,DC=local
Ativado : Falso
LastLogonDate :
LockedOut : Falso
Nome : Convidado
ObjectClass : usuário
ObjectGUID : 89cfaf2b-c6d8-4ae0-a720-e2da7d201717
PasswordExpired : Falso
PasswordNeverExpires : Verdadeiro
SamAccountName : Convidado
SID : S-1-5-21-4117810001-3432493942-696130396-501
UserPrincipalName :
............

Localizar contas de usuário inativas no Active Directory

Outro suspeito comum a ser limpo são as contas de usuário inativas, que são um pouco mais difíceis de rastrear. “Inativo” é um termo subjetivo, portanto, para nossos propósitos, definiremos “inativo” como qualquer usuário que tenha um valor de LastLogonTimeStamp superior a 30 dias. Você encontrará muitos artigos na Internet sobre como encontrar usuários inativos, mas algumas pessoas não percebem que isso é muito mais fácil do que criar complicados filtros LDAP do AD. O suporte é nativo no Search-AdAccount.

Podemos usar  Search-AdAccount -AccountInactive -UsersOnly -Timespan 30.00:00:00 para encontrar imediatamente todas as contas de usuário do AD que não foram usadas em 30 dias.

No entanto, há uma ressalva. A Microsoft só atualiza o atributo LastLogonTimestamp, que é o mesmo que LastLogonDate, uma vez a cada 14 dias para evitar tempestades de replicação. Devido a essa característica do AD, o uso desse método (ou mesmo Get-AdUser ou Get-AdComputer com o filtro avançado) não será 100% preciso se você estiver tentando obter contas com inatividade superior a 14 dias. Portanto, esteja avisado.

Por fim, precisamos encontrar todos os usuários do AD que têm uma senha expirada que não é mais necessária. Essa é uma questão complicada porque as contas de usuário “ativas” podem ter uma senha expirada se ela tiver expirado recentemente. Não preciso apenas encontrar senhas expiradas, mas também há quanto tempo elas expiraram. Se elas expiraram, digamos, há 30 dias ou mais, posso presumir que essas contas de usuário estão, de fato, inativas.

Para descobrir há quanto tempo uma senha expirou, primeiro preciso encontrar a idade máxima da senha para a política de senhas do domínio. Posso fazer isso com o cmdlet Get-AdDefaultDomainPasswordPolicy.

$MaxPasswordAge = (Get-ADDefaultDomainPasswordPolicy).MaxPasswordAge.Days

Em seguida, posso localizar todas as contas de usuário que têm uma senha expirada e, depois, filtrar as contas desses usuários vendo a última vez que a senha foi definida e garantindo que foi antes do tempo máximo que a senha poderia ter mais 30 anos (a idade que estou definindo para a conta).

O código terá a seguinte aparência:

Search-AdAccount -PasswordExpired -UsersOnly | Where-Object {((Get-Date) - (Get-AdUser -Filter "samAccountName -eq $_.SamAccountName").PasswordLastSet) -lt ($MaxPasswordAge + 30)}

Na próxima vez em que estiver pesquisando registros inativos no AD, não deixe de consultar o Search-AdAccount para ver se ele já faz o que você está tentando fazer. Isso pode lhe poupar muito tempo!

Embora o PowerShell seja eficiente, os administradores também podem utilizar o Active Directory Administrative Center (ADAC) ou ferramentas especializadas de terceiros para visualizar e auditar grupos e contas, oferecendo uma alternativa de GUI simplificada para algumas tarefas de limpeza.

Benefícios de uma limpeza do AD

O Active Directory é o serviço de diretório proprietário do Windows, que, segundo a TechRadar, é usado por 90% das organizações em todo o mundo.

Sua popularidade é bem merecida: O AD é fundamental para nossa vida profissional diária, permitindo que as empresas definam quem pode fazer o quê em sua rede e, ao mesmo tempo, gerenciem vários recursos, dispositivos de endpoint e sistemas.

Ao limpar seu AD, você garante que sua empresa mantenha a eficiência operacional, aumente a integridade dos dados e pratique uma melhor governança de dados. Esse é um processo essencial que todos os MSPs, MSSPs e empresas de TI devem incluir em suas estratégias de manutenção para continuar fornecendo serviços de alta qualidade aos seus usuários finais.

Práticas recomendadas para limpeza do Active Directory

Além do que mencionei anteriormente(como encontrar contas desativadas e inativas no Active Directory e tudo mais), seria prudente discutir outras práticas recomendadas de limpeza do Active Directory para que sua rede de TI permaneça eficiente, segura e em conformidade.

Limpar políticas de grupo obsoletas

Objetos de política de grupo (GPOs) desnecessários podem tornar seu AD mais lento. É aconselhável revisar e desconectar regularmente esses GPOs por meio do PowerShell ou do Console de Gerenciamento de Política de Grupo.

Otimize os scripts de logon do usuário

Scripts de logon ruins podem afetar significativamente o desempenho. Para ver o impacto total desses scripts, tente usar o PowerShell, especialmente o Get-GPResultantSetOfPolicy. Se achar necessário, você também pode forçar uma atualização de política de grupo remotamente.

Auditar grupos de segurança

Como em tudo o que você gerencia, é uma boa ideia verificar regularmente seus grupos de segurança usando comandos do PowerShell, como Get-ADGroupMember. Para obter um script completo sobre a modificação da associação de usuários, confira este script do NinjaOne. Lembre-se: grupos vazios, inativos ou de usuário único provavelmente não têm nenhuma finalidade para a sua organização.

Gerenciar a replicação do Active Directory

Certifique-se de ajustar os intervalos de replicação e otimizar as topologias para aumentar o desempenho do AD. Vou enfatizar novamente que “limpar o Active Directory” é muito mais do que apenas excluir contas e esperar pelo melhor. Em vez disso, é um processo de várias etapas que também exige que os administradores de TI reorganizem as contas de usuário e os grupos do Active Directory. Recomendo usar esse script do NinjaOne para visualizar o relatório de integridade da replicação do Active Directory.

Gerencie usuários do Active Directory com o NinjaOne

A NinjaOne oferece uma ferramenta de gerenciamento do Active Directory incorporada diretamente em sua plataforma confiável de gerenciamento de endpoints. Com o NinjaOne, você pode facilmente desativar contas, desbloquear usuários, redefinir senhas e muito mais, tudo em um único painel de vidro!

Se você estiver pronto, solicite um orçamento gratuito ou assista a uma demonstração.

Adam Bertram é MVP de gerenciamento de data center e nuvem do Microsoft Windows e é autor de vários cursos de treinamento, colaborador regular de várias publicações impressas e on-line e faz apresentações em vários grupos de usuários e conferências. Você pode encontrar Adam em adamtheautomator.com.

Foto de Adam Bertram

FAQs

Um ambiente limpo do Active Directory melhora o desempenho do sistema, reduzindo o tráfego de replicação desnecessário e acelerando processos como autenticação de usuários e downloads de políticas de grupo. Ele também aumenta significativamente a segurança ao remover contas inativas que poderiam ser exploradas por agentes de ameaças, ajudando as organizações a manter uma melhor conformidade com as exigências regulamentares.

Embora não haja um cronograma universal rigoroso, o ideal é que uma limpeza abrangente do Active Directory seja realizada pelo menos trimestralmente ou semestralmente para evitar o inchaço excessivo. No entanto, tarefas específicas, como o monitoramento de contas desativadas simples, devem ser um processo mais frequente, possivelmente semanal.

O método mais eficiente para localizar contas de usuário não utilizadas é usar o PowerShell, especificamente o cmdlet Search-ADAccount. Esse comando permite que os administradores consultem facilmente as contas que estão desativadas, que não foram acessadas por um período de tempo especificado (inativas) ou que têm senhas expiradas.

Os GPOs obsoletos sobrecarregam a estrutura do Active Directory e podem afetar negativamente o desempenho, aumentando o tempo necessário para aplicar políticas durante o logon do usuário. Revisar e desconectar regularmente os GPOs desnecessários é uma parte essencial do processo de limpeza para garantir um ambiente simplificado e eficiente.

Sim, a limpeza regular do AD é fundamental para atender aos padrões de conformidade regulamentar, incluindo mandatos como o GDPR ou o PCI-DSS. Ao garantir que os grupos de segurança sejam auditados com precisão e que as contas antigas e não utilizadas sejam removidas, as organizações mantêm melhor controle sobre o acesso aos dados e minimizam os riscos de auditoria.

Recomendados para você

Pronto para simplificar as partes mais difíceis da TI?