Enorme lista de comandos PowerShell para Active Directory, Office 365 e mais
Esta é a coleção definitiva de comandos PowerShell para Active Directory, Office 365, Windows Server e muito mais.
Esses comandos ajudarão em várias tarefas e tornarão sua vida mais fácil.
Índice:
- Comandos do Active Directory
- Comandos do Office 365
- Windows Server & Comandos do cliente
- Comandos PowerShell básicos
Comandos PowerShell do Active Directory
Ver todos os comandos do Active Directory
get-command -Module ActiveDirectory
Exibir informações básicas de domínio
Get-ADDomain
Get todos os controladores de domínio por nome de host e operação
Get-ADDomainController -filter * | select hostname, operatingsystem
Obtenha todas as políticas de senha refinadas
Get-ADFineGrainedPasswordPolicy -filter *
Obter política de senha padrão do domínio
Obtém a política de senha do domínio conectado
Get-ADDefaultDomainPasswordPolicy
Backup do Active Directory Estado do sistema remotamente
Isso fará o backup dos dados de estado do sistema dos controladores de domínio. Mude o DC-Name para o nome do servidor e mude o Backup-Path. O caminho de backup pode ser um disco local ou um caminho UNC
invoke-command -ComputerName DC-Name -scriptblock {wbadmin start systemstateback up -backupTarget:"Backup-Path" -quiet}
Comandos do PowerShell do usuário AD
Esta seção contém todos os comandos de usuário do Active Directory
Obter usuário e listar todas as propriedades (atributos)
Altere o nome de usuário para samAccountName da conta
Get-ADUser username -Properties *
Obtenha propriedades específicas do usuário e da lista
Basta adicionar o que deseja exibir após selecionar
Get-ADUser username -Properties * | Select name, department, title
Obter todos os usuários do Active Directory no domínio
Get-ADUser -Filter *
Obter todos os usuários de uma UO específica
OU = o caminho distinto da UO
Get-ADUser -SearchBase "OU=ADPRO Users,dc=ad,dc=activedirectorypro.com” -Filter *
Obter usuários do AD por nome
Este comando encontrará todos os usuários que têm a palavra robert no nome. Basta alterar robert para a palavra que você deseja pesquisar.
get-Aduser -Filter {name -like "*robert*"}
Obter todas as contas de usuário desativadas
Search-ADAccount -AccountDisabled | select name
Desativar conta de usuário
Disable-ADAccount -Identity rallen
Ativar conta de usuário
Enable-ADAccount -Identity rallen
Get Todas as contas com senha definida para nunca expirar
Encontrar todas as contas de usuário bloqueadas
Search-ADAccount -LockedOut
Desbloquear conta de usuário
Unlock-ADAccount –Identity john.smith
Liste todas as contas de usuário desativadas
Search-ADAccount -AccountDisabled
Forçar alteração de senha no próximo login
Set-ADUser -Identity username -ChangePasswordAtLogon $true
Mover um único usuário para uma nova UO
Você precisará do distinguishedName do usuário e da UO de destino
Mover usuários para uma UO de um CSV
Configure um csv com um campo de nome e uma lista dos usuários sAmAccountNames. Em seguida, basta alterar o caminho da UO de destino.
Comandos do grupo AD
Obter todos os membros de um grupo de segurança
Get-ADGroupMember -identity "HR Full”
Obter todos os grupos de segurança
Isso listará todos os grupos de segurança em um domínio
Get-ADGroup -filter *
Adicionar usuário ao grupo
Mude o nome do grupo para o grupo AD ao qual deseja adicionar usuários
Add-ADGroupMember -Identity group-name -Members Sser1, user2
Exportar usuários de um grupo
Isso exportará o grupo membros para um CSV, altere o nome do grupo para o grupo que deseja exportar.
Get-ADGroupMember -identity "Group-name” | select name | Export-csv -path C:OutputGroupmembers.csv -NoTypeInformation
Obter grupo por palavra-chave
Encontre um grupo por palavra-chave. Útil se você não tiver certeza do nome, altere o nome do grupo.
get-adgroup -filter * | Where-Object {$_.name -like "*group-name*"}
Importar uma lista de usuários para um grupo
AD Comandos do computador
Obter todos os computadores
Isso listará todos os computadores no domínio
Get-AdComputer -filter *
Obter todos os computadores por Nome
Isso listará todos os computadores no domínio e exibirá apenas o nome do host
Get-ADComputer -filter * | select name
Obter todos os computadores de uma unidade organizacional
Get-ADComputer -SearchBase "OU=DN" -Filter *
Obtenha uma contagem de todos os computadores no domínio
Get-ADComputer -filter * | measure
Obtenha todos os computadores Windows 10
Altere o Windows 10 para qualquer sistema operacional que você deseja pesquisar
Get-ADComputer -filter {OperatingSystem -Like "*Windows 10*"} -property * | select name, operatingsystem
Obtenha uma contagem de todos os computadores por sistema operacional
Isso fornecerá uma contagem de todos os computadores e os agrupará pelo sistema operacional. Um ótimo comando para fornecer um inventário rápido de computadores no AD.
Get-ADComputer -Filter "name -like "*"" -Properties operatingSystem | group -Property operatingSystem | Select Name,Count
Excluir um único computador
Remove-ADComputer -Identity "USER04-SRV4"
Excluir uma lista de contas de computador
Adicione os nomes de host a um arquivo de texto e execute o comando abaixo.
Get-Content -Path C:ComputerList.txt | Remove-ADComputer
Excluir computadores de uma UO
Get-ADComputer -SearchBase "OU=DN" -Filter * | Remote-ADComputer
Seção de política de grupo
Obter todos os comandos relacionados a GPO
get-command -Module grouppolicy
Obtenha todos os GPOs por status
get-GPO -all | select DisplayName, gpostatus
Faça backup de todos os GPOs no domínio
Backup-Gpo -All -Path E:GPObackup
Comandos do PowerShell do Office 365
Conectar ao Exchange Online
Isso aparecerá e solicitará as credenciais
Forçar sincronização do Azure
Isso é para o cliente de sincronização de anúncios azure.
Forçar sincronização delta (sincronizar apenas alterações
Start-ADSyncSyncCycle -PolicyType Delta Force a full sync Start-ADSyncSyncCycle -PolicyType Initial
Obtenha uma lista de todos os usuários do Office 365
Get-MsolUser | Select DisplayName, City, Department, ObjectID
Obtenha detalhes completos da caixa de correio
Get-Mailbox email-address | fl
Obtenha permissões do calendário
Get-MailboxFolderPermission username:calendar
Habilitar caixa de correio remota (ambiente híbrido)
Use este comando se você tiver um usuário existente no local que precisa de uma caixa de correio do Office 365. Existem outras maneiras de fazer isso, mas isso cria todos os atributos na conta do AD.
Substitua o nome de usuário e os campos de inquilino
Enable-RemoteMailbox username -RemoteRoutingAddress "[email protected]"
Windows Server & Comandos do cliente
Obtenha todos os serviços
get-service
Obtenha todos os processos
get-process
Adaptadores de rede de display
Obtém detalhes sobre o adaptador de rede instalado, como nome, status, velocidade e endereço mac.
get-netadapater
Reinicie os computadores remotos
Restart-Computer -ComputerName "Server01", "Server02", "localhost"
Obtenha o La st Boot Time
Isso leva algumas linhas
Você também pode executar esta única linha para obter o último tempo de inicialização
systeminfo | more
Iniciar uma sessão remota
Use para iniciar uma sessão interativa com um computador remoto
Enter-PSSession -ComputerName
Ler o conteúdo de um arquivo (Abra um arquivo)
Este exemplo mostra como ler o conteúdo do arquivo de registro do firewall do Windows
Get-Content -Path "c:windowssystem32logfilesfirewallpfirewall.log"
Copiar arquivos & Pastas
Use este comando para copiar uma pasta inteira para outra pasta. Isso copiará a pasta e todas as subpastas / arquivos. O comando -verbose exibirá os resultados no console.
copy-item E:\WindowsImageBackup\exchange -destination \\server1\Backups\Exchange -recurse -verbose
Comandos PowerShell básicos
Obter política de execução
get-executionpolicy
Definir política de execução como irrestrita
set-executionpolicy unrestricted
Mostrar versão do PowerShell
$PSVersionTable
Obtenha ajuda para um comando
Use isto para obter as informações de ajuda para um comando
get-help command-name
Pesquisar Obtenha ajuda
Use para pesquisar os arquivos de ajuda. Isso é útil se você não souber o comando ou quiser ver se existe um.
get-help *keyword*
Obtenha os módulos instalados
Use isto comando para exibir todos os módulos instalados em um computador
get-installedmodule
Listar todos os módulos disponíveis
Isso listará todos os módulos disponíveis no computador.
Get-Module -ListAvailable
Exportando resultados para CSV
Adicione export-csv ao final dos comandos
Get-ADUser username -Properties * | Select name, department, title | export-csv c:user.csv
Exibir comandos disponíveis
Isso exibirá todos os comandos disponíveis com base nos módulos carregados.
get-command
Encontre novos módulos
Substitua * ntfs * pela palavra-chave que deseja pesquisar. Esta pesquisa módulos em https://www.powershellgallery.com/
Find-Module *ntfs*
Instalar um novo módulo
Instala os módulos de https://www.powershellgallery.com/
Eu encontrei um módulo chamado NTFSSecurity, para instalá-lo eu executo este comando
install-module NTFSSecurity
Ferramenta recomendada: SolarWinds Server & Monitor de aplicativos
Este utilitário foi projetado para monitorar o Active Directory e outros serviços críticos como DNS & DHCP. Ele detectará rapidamente problemas de controlador de domínio, evitará falhas de replicação, rastreará tentativas de logon com falha e muito mais.
O que eu mais gosto no SAM é a facilidade de uso do painel e recursos de alerta. Ele também tem a capacidade de monitorar máquinas virtuais e armazenamento.
Baixe sua avaliação gratuita aqui