Patchbeheer is een cruciaal aspect van IT-infrastructuurbeheer, net als Windows Workstation-back-up. Met de juiste patchbeheeroplossing kunt u uw systeem verbeteren door de nieuwste software-updates en patches te testen of te installeren. Patches worden beschouwd als tijdelijke oplossingen voor bestaande problemen tussen volledige software-releases. Als patchbeheer effectief wordt uitgevoerd, kunt u de kwetsbaarheden van uw systeem snel aanpakken en mogelijke bedreigingen verminderen.
Windows biedt zijn eigen patchbeheeroplossing – Windows Update. Veel IT-beheerders vinden het patchbeheerproces echter nog steeds te complex en tijdrovend. Bovendien kunnen systeemupdates uw productieworkflow beïnvloeden, omdat ze vaak automatisch worden gestart tijdens kantooruren. Met PowerShell-cmdlets kunt u Windows-updates automatiseren, waardoor u tijd en moeite bespaart.
Deze blogpost beschrijft hoe u PowerShell kunt gebruiken om Windows-updates te installeren en bevat een lijst met nuttige PowerShell-opdrachten om het patchbeheerproces te automatiseren. Het patchen kan het risico op bugs of kwetsbaarheden die uw systeem beïnvloeden verminderen.
Wat Is PSWindowsUpdate?
Om het Windows-patchbeheerproces soepel en eenvoudig te maken, kunt u de PSWindowsUpdate-module gebruiken die is ontwikkeld door Michal Gajda. Deze module is openbaar beschikbaar en kan gratis worden gedownload van de PowerShell Gallery. De belangrijkste vereiste is dat een computer Windows OS-versies vanaf Vista of Windows Server 2008 moet draaien. Ook moet u PowerShell 2.0 of later hebben.
Met PSWindowsUpdate kunt u identificeren of er Windows-updates beschikbaar zijn voor uw computer. Bovendien stelt deze module u in staat om Windows-updates centraal te beheren op verschillende Windows servers en werkstations. Op deze manier kunt u op afstand controleren welke updates zijn geïnstalleerd, verwijderd of verborgen.
Hoe Windows-updates automatiseren met PowerShell
Hieronder zullen we het PSWindowsUpdate-configuratieproces beschrijven, inclusief hoe u de module kunt downloaden en installeren, en hoe u de opdrachten kunt controleren die u kunnen helpen bij het automatiseren van Windows-updates.
Hoe PSWindowsUpdate te installeren
Om het Windows-patchbeheer effectief te automatiseren, moet u eerst de PSWindowsUpdate-module op uw computer installeren. Open hiervoor een verhoogde PowerShell-opdrachtprompt en voer de volgende opdracht in:
Install-Module -Name PSWindowsUpdate
Na het uitvoeren van dit commando, wordt u gevraagd of u de gespecificeerde module van PSGallery wilt installeren. Selecteer Ja als u wilt doorgaan en alle wijzigingen accepteert.
Nadat u de module hebt geïnstalleerd, moet u ervoor zorgen dat u op afstand toegang kunt krijgen tot andere computers. Op deze manier moet u in staat zijn om Windows-updates op afstand te installeren op andere computers, waardoor u minimale tijd en moeite hoeft te besteden. Om de PSWindowsUpdate-module te laten werken met externe machines, moet u de module op uw computer opslaan en delen via een netwerk.
Als andere servers in staat zijn om deze module te importeren en implementeren, kunt u geautomatiseerd Windows-patchbeheer instellen. Hiertoe moet u het volgende cmdlet uitvoeren:
Save-Module -Name PSWindowsUpdate -Path
Hier moet u de –Path-parameter definiëren door aan te geven waar u de PSWindowsUpdate-module wilt opslaan.
Hoe PSWindowsUpdate te gebruiken
Voor de volgende stap leert u hoe u deze module kunt gebruiken om Windows-updates te automatiseren met PowerShell-cmdlets. Dit is een groot voordeel voor IT-beheerders die het patchbeheerproces moeten uitvoeren op Server Core-machines zonder GUI. Met het gebruik van deze cmdlets kunt u de complexiteit van het beheer minimaliseren en het proces eenvoudiger en minder foutgevoelig maken.
Om een volledige lijst van beschikbare Windows-updates te krijgen, voert u de volgende PowerShell-opdracht uit:
Get-WindowsUpdate
U zou de onderstaande uitvoer op uw scherm moeten zien:
Met deze informatie weet u zeker welke software of toepassing moet worden bijgewerkt. Daarna kunt u alle updates installeren door de volgende opdracht in te voeren. Bovendien kunt u door de -AutoReboot parameter toe te voegen, ervoor zorgen dat het systeem automatisch opnieuw opstart zodra de update is geïnstalleerd.
Get-WUInstall -AcceptAll –AutoReboot
Als u liever geen herstart wilt starten (om de productieworkflow niet te onderbreken), kunt u de volgende cmdlet uitvoeren:
Get-WUInstall -AcceptAll –IgnoreReboot
Op het scherm ziet u de voortgang van het patchbeheerproces, evenals de volledige lijst met updates en hun huidige status.
Na voltooiing van het installatieproces ziet u het volgende bericht in de PowerShell-console: ‘Herstart is vereist maar doe het handmatig’. U moet dus nog steeds het systeem opnieuw opstarten, maar u kunt dit doen op het moment dat het best past in uw schema.
Als u slechts een specifieke update wilt downloaden, kunt u de -KBArticleID parameter toevoegen aan de PowerShell-cmdlet. Vergeet niet het nummer van het KB-artikel op te geven om de juiste patch te downloaden. Bijvoorbeeld, ik wil Windows Malicious Software Removal Tool x64 en Security Intelligence Update for Windows Defender Antivirus installeren. De passende PowerShell-opdracht moet er als volgt uitzien:
Get-WUInstall -KBArticleID KB890830, KB2267602 –AcceptAll
Na het uitvoeren van deze opdracht zullen er slechts twee van de genoemde updates op mijn computer zijn geïnstalleerd.
Overzicht van PSWindowsUpdate-opdrachten
Als je je afvraagt welke PowerShell-cmdlet kan werken met de PSWindowsUpdate-module, moet je de volgende opdracht typen en op Enter drukken:
Get-Command –module PSWindowsUpdate
Hier zie je een volledige lijst van de opdrachten van de module.
Laten we eens bekijken hoe enkele van deze opdrachten werken.
1. De Get-WUHistory-cmdlet stelt je in staat om de geschiedenis van de laatste updates te bekijken. Na het uitvoeren van deze opdracht ontvang je een vergelijkbare uitvoer op je scherm.
2. De volgende cmdlet is Get-WUInstallerStatus, die je kan helpen de status van de Windows Installer-service te verifiëren. Hier kun je controleren of de installer goed werkt of niet. De uitvoer voor deze operatie kan er als volgt uitzien:
3. Door de Get-WURebootStatus-cmdlet uit te voeren, kun je controleren of je het systeem moet herstarten zodat een specifieke update volledig wordt toegepast.
4. Met de Get-WUServiceManager-cmdlet kun je de bron van Windows-updates controleren.
Zoals u kunt zien, geeft de laatste kolom de updatebron weer (bijv. Windows Update, DCat Flighting Prod, enz.).
5. U kunt bepaalde updates uit de lijst verbergen om te voorkomen dat ze op uw computer worden geïnstalleerd. Hiervoor moet u het Hide-WindowsUpdate commando uitvoeren waarbij het mogelijk is om de ID van KB-artikelen op te geven die u wilt verbergen. Het volgende voorbeeld laat zien hoe u de update KB2267602 uit de lijst kunt verbergen:
$HideList = "KB2267602"
Hide-WindowsUpdate -KBArticleID $HideList –Hide
Voordat er wijzigingen worden aangebracht, wordt u gevraagd om de selectie te bevestigen. Typ Y om het KB-artikel te verbergen.
Als u echter de lijst met verborgen updates wilt krijgen, kunt u het volgende cmdlet uitvoeren.
In de Statuskolom kunt u de letter H zien, wat aangeeft dat de update succesvol verborgen is. De volgende keer dat u het Get-WUInstall commando uitvoert, zal de geselecteerde update automatisch worden uitgesloten van de lijst met beschikbare updates.
Als u de wijzigingen wilt terugdraaien, kunt u de volgende opdracht gebruiken in de PowerShell-console:
Hide-WindowsUpdate -KBArticleID $HideList -Hide:$false
Opnieuw wordt u gevraagd de wijzigingen te bevestigen door Y in te typen.
Zoals u kunt zien, is de letter H niet langer opgenomen in de updatestatus, wat betekent dat deze Windows-update niet langer verborgen is en kan worden gedownload op uw computer.
6. Een andere configuratieoptie die voor u beschikbaar is, is het verwijderen van de updates die u hebt geïnstalleerd op uw machine. Hiervoor kunt u de Remove-WindowsUpdate opdracht gebruiken en het ID van het KB-artikel typen dat u van uw computer wilt verwijderen. Bijvoorbeeld:
Remove-WindowsUpdate -KBArticleID KB4519573 –IgnoreReboot
Door de –IgnoreReboot parameter toe te voegen, zorgt u ervoor dat de computer niet automatisch opnieuw opstart. Nadat de update is verwijderd, kunt u de machine later opnieuw opstarten.
Last but not least, je kunt zoeken naar beschikbare Windows-updates op een externe machine met behulp van het Get-WUList cmdlet.
Get-WUList -ComputerName Server5
Om dit cmdlet te laten werken, moet je ook de PSWindowsUpdate-module installeren op een externe computer. Op deze manier kun je Windows-updates automatiseren voor meerdere machines vanuit één centraal punt. Met PSWindowsUpdate wordt het patchbeheerproces op een eenvoudige en efficiënte manier uitgevoerd.
Bovendien kun je de beheeroverhead verminderen die IT-beheerders kunnen ervaren tijdens het patchen van systemen.
Samenvattend
De PSWindowsUpdate-module is ontwikkeld om het patchbeheerproces eenvoudiger en efficiënter te maken. Door de installatie van updates te automatiseren, kun je er zeker van zijn dat je systeem regelmatig wordt bijgewerkt, waardoor het risico op systeemstoringen en beveiligingsinbreuken wordt geminimaliseerd. Patches zijn voornamelijk ontwikkeld om problemen of kwetsbaarheden op te lossen die worden ontdekt binnen een programma. Regelmatig patchbeheer kan echter geen volledige bescherming van de gehele productieomgeving garanderen.
Om dit te bereiken, moet je een uitgebreide oplossing voor gegevensbescherming gebruiken die back-up en siteherstel biedt voor fysieke, virtuele en cloudomgevingen. Met NAKIVO Backup & Replication kun je je meest kritieke gegevens en toepassingen beveiligen over meerdere platforms, zorgen voor herstel onder alle omstandigheden en de kosten voor gegevensbescherming verminderen.
Source:
https://www.nakivo.com/blog/automate-windows-updates-using-powershell-short-overview/