Je systeem bijhouden kan af en toe een uitdaging qua tijd zijn. En op je thuis pc heb je geen patch tools zoals je mogelijk op je werk hebt. Een poorman’s patch-tool die voor 99% alle software bijwerkt, kan PowerShell heten, of eigenlijk winget. Via winget upgrade kun je al je thirdparty software en losse […]
Tag: powershell
function Get-FailedLogons
Laad de volgende functie… function Get-FailedLogons { [CmdletBinding()] param( [datetime] $StartTime = (Get-Date).AddDays(-1), [datetime] $EndTime = (Get-Date), [int] $MaxEvents = 10000, [string] $ComputerName = $env:COMPUTERNAME, [switch] $ExportCsv, [string] $CsvPath = “$env:TEMP\FailedLogons_$($ComputerName)_$(Get-Date -Format yyyyMMddHHmmss).csv” ) # Filter for failed logon events $filter = @{ LogName = ‘Security’ Id = 4625 StartTime = $StartTime EndTime = $EndTime […]
Pre-Demotion Health Check Script
Voordat je een oude domain controller wil demoten, wil je graag op op safe spelen. Dit script draai je op je nieuwe domain controller waarbij je controleert dat deze alle rollen heeft en alles succesvol gesynchroniseerd heeft. <# Pre-Demotion Health Check Script Run on: your NEW DC) Purpose: Verify readiness before demoting your OLD DC)#>$OldDC […]
DFSR & Replication Health Check
<# DFSR & Replication Health Check Run this on a Domain Controller (PowerShell as Administrator)#>$PartnerDCs = (Get-ADDomainController -Filter * | Where-Object { $_.Name -ne $env:COMPUTERNAME }).HostnameWrite-Host “==== DFSR Service Check on $env:COMPUTERNAME ====” -ForegroundColor CyanGet-Service DFSR | Format-Table Name, Status, StartTypeWrite-Host “`n==== SYSVOL & NETLOGON Shares ====” -ForegroundColor CyanGet-SmbShare | Where-Object { $_.Name -in @(“SYSVOL”,”NETLOGON”) […]
VMware download token controleren
De updates van VMWare vereisen een download token tegenwoordig. Zonder download token kun je niets downloaden. Let op wat je kunt downloaden, patches of security updates is weer afhankelijk of het token toebehoort aan een site-id dat wel of geen actief support contract heeft. Er zullen zonder gelding support contract enkel zero-day patches voor je […]
Windows Defender + Antimalware uitschakelen
Wanneer je toch al een 3rd party XDR oplossing gebruikt, kun je wel zonder Windows Defender en zijn antimalware filtering msmpeng.exe. Deze draai je de nek om met een powershell opdracht. Set-MpPreference -DisableIntrusionPreventionSystem $true -DisableIOAVProtection $true -DisableRealtimeMonitoring $true -DisableScriptScanning $true -EnableControlledFolderAccess Disabled -EnableNetworkProtection AuditMode -Force -MAPSReporting Disabled -SubmitSamplesConsent NeverSend
Recent gewijzigde bestanden
Powershell kun je ook gebruiken voor een zoekactie naar recent gewijzigde bestanden: # Specify the path where you want to search for files$path = “C:\users”# Get the current date and subtract 7 days to get the date 7 days ago$sevenDaysAgo = (Get-Date).AddDays(-7)# Get files that have been changed within the last 7 days$recentlyChangedFiles = Get-ChildItem […]
Test je storage snelheid met diskspd.exe
Microsoft heeft een tooltje om performance van je storage te testen. Deze kun je via powershell downloaden en starten. $client = new-object System.Net.WebClient downloaden… $client.DownloadFile(“https://github.com/microsoft/diskspd/releases/download/v2.1/DiskSpd.zip”,”C:\dskspd\DiskSpd-2.1.zip”) uitpakken… Expand-Archive -LiteralPath C:\dskspd\DiskSpd-2.1.zip -DestinationPath C:\DISKSPD uitvoeren… .[INSERT_DISKSPD_PATH] -t2 -o32 -b4k -r4k -w3 -d120 -Sh -D -L -c5G [INSERT_CSV_PATH_FOR_TEST_FILE] > [INSERT_OUTPUT_FILE.txt] Dit levert een txt file op met daarin de […]
Security group members vullen op basis van andere group
Bij policies wil je niet dat alles maar op domain users wordt toegepast. Je wil per policy dat dit op een aparte security group wordt toegepast. Om niet handmatig members toe te hoeven voegen kun je het onderstaande powershell script gebruiken om members van een bron group toe te voegen aan doel group. # Specify […]
Overzicht mailbox rechten
Wie heeft rechten op welke (gedeelde) mailbox? Voor Exchange Server # Add Exchange snap-in if not already loaded if (!(Get-PSSnapin | Where-Object { $_.Name -eq “Microsoft.Exchange.Management.PowerShell.SnapIn” })) { Add-PSSnapin Microsoft.Exchange.Management.PowerShell.SnapIn } # Get all user mailboxes $mailboxes = Get-Mailbox -ResultSize Unlimited # Create an empty array to store results $results = @() foreach ($mailbox in […]
Apps geblokkeerd door Applocker
Wanneer je wil controleren of apps geblokkeerd zijn door applocker doorzoek je eventvwr Microsoft > Windows > Applocker uiteraard. Dat kan ook sneller met powershell: # Define the log name $logName = “Microsoft-Windows-AppLocker/EXE and DLL” # Get events with ID 8004 from the specified log $events = Get-WinEvent -LogName $logName -FilterXPath “*[System[EventID=8004]]” -ErrorAction SilentlyContinue if […]
Ingelogde gebruikers tellen met powershell
Een simpel powershelletje om inlogde gebruikers te tellen: (query user /server:$server).count Als dan iemand toch nog wil weten wie dat zijn: (query user /server:$server)
