Skip to content

Instantly share code, notes, and snippets.

@ScriptingPro
ScriptingPro / from-all-domain-controllers.ps1
Created July 29, 2023 00:22
AD Queries Against Each Domain Controller
# User Attributes - Check if user attributes replicated to all DCs
Get-ADDomainController -Filter * -pv dc | %{get-aduser userid -server $dc.name -Properties * } | select {$dc.name}, LastBadPasswordAttempt,badPwdCount,LockedOut,PasswordLastSet | ft -AutoSize
# Group Members - Check if group members replicated to all DCs
Get-ADDomainController -Filter * -pv dc | %{Get-ADGroup groupname -server $dc.name -Properties members} | select {$dc.name}, {($_.members | Get-ADObject -server $dc.name -Properties samaccountname).samaccountname -join ","} | ft -AutoSize
@ScriptingPro
ScriptingPro / check-kms-ports.ps1
Created August 1, 2023 19:00
Check KMS Activation Server ports
# finds kms servers from DNS and checks if the port is open
Resolve-DnsName "_vlmcs._tcp.$([System.DirectoryServices.ActiveDirectory.Forest]::GetCurrentForest().Name)" -Type all | %{Test-NetConnection -ComputerName $_.NameTarget -Port 1688}