So automatisieren Sie Windows-Updates mit PowerShell: Kurzer Überblick

><> & Das Patch-Management ist ein entscheidender Aspekt der IT-Infrastruktur-Verwaltung, ebenso wie Windows Workstation-Backup. Mit der richtigen Patch-Management-Lösung können Sie Ihr System verbessern, indem Sie die neuesten Software-Updates und Patches testen oder installieren. Patches gelten als vorübergehende Lösungen für bestehende Probleme zwischen vollständigen Software-Releases. Wenn das Patch-Management effektiv durchgeführt wird, können Sie Schwachstellen Ihres Systems umgehend beheben und potenzielle Bedrohungen mindern.

Windows bietet eine eigene Lösung für das Patch-Management – Windows Update. Viele IT-Administratoren empfinden den Patch-Management-Prozess jedoch nach wie vor als zu komplex und zeitaufwändig. Darüber hinaus können Systemaktualisierungen Ihren Produktionsworkflow beeinträchtigen, da sie häufig automatisch während der Geschäftszeiten gestartet werden. Mit PowerShell-Cmdlets können Sie Windows-Updates automatisieren und so Aufwand und Zeit sparen.

Dieser Blogbeitrag beschreibt, wie Sie PowerShell zur Installation von Windows-Updates verwenden können, und enthält eine Liste nützlicher PowerShell-Befehle Durch das Patchen können Sie das Risiko von Fehlern oder Schwachstellen, die Ihr System beeinträchtigen, verringern.

NAKIVO for Windows Backup

NAKIVO for Windows Backup

Fast backup of Windows servers and workstations to onsite, offiste and cloud. Recovery of full machines and objects in minutes for low RTOs and maximum uptime.

Was ist PSWindowsUpdate?

Um den Windows-Patch-Management-Prozess reibungslos und einfach zu gestalten, können Sie das von Michal Gajda entwickelte Modul PSWindowsUpdate verwenden. Dieses Modul ist öffentlich verfügbar und kann kostenlos von der PowerShell Galleryheruntergeladen werden. Die wichtigsten Anforderungen sind, dass auf dem Computer Windows-Betriebssysteme ab Vista oder Windows Server 2008 installiert sind. Außerdem benötigen Sie PowerShell 2.0 oder höher.

Mit PSWindowsUpdate können Sie feststellen, ob Windows-Updates für Ihren Computer verfügbar sind. Darüber hinaus können Sie mit diesem Modul Windows-Updates auf verschiedenen Windows-Servern und -Arbeitsstationen zentral verwalten. Auf diese Weise können Sie aus der Ferne steuern, welche Updates installiert, entfernt oder ausgeblendet werden.

So automatisieren Sie Windows-Updates mit PowerShell

Im Folgenden beschreiben wir den Konfigurationsprozess für PSWindowsUpdate, einschließlich des Herunterladens und Installierens des Moduls sowie der Überprüfung der Befehle, mit denen Sie Windows-Updates automatisieren können.

So installieren Sie PSWindowsUpdate

Um das Windows-Patch-Management effektiv zu automatisieren, müssen Sie zunächst das PSWindowsUpdate-Modul auf Ihrem Computer installieren. Öffnen Sie dazu eine PowerShell-Eingabeaufforderung mit erhöhten Rechten und geben Sie den folgenden Befehl ein:

Install-Module -Name PSWindowsUpdate

Nach Ausführung dieses Befehls werden Sie gefragt, ob Sie das angegebene Modul von der PSGallery installieren möchten. Wählen Sie „ Yes “, wenn Sie fortfahren und alle Änderungen akzeptieren möchten. „
Installing PSWindowsUpdate (automate Windows updates)

“ Nachdem Sie das Modul installiert haben, müssen Sie sicherstellen, dass Sie remote auf andere Computer zugreifen können. Auf diese Weise sollten Sie in der Lage sein, Windows-Updates auf Remote-Computern zu installieren, wodurch Sie nur minimalen Zeit- und Arbeitsaufwand haben. Damit das PSWindowsUpdate-Modul mit Remote-Computern funktioniert, müssen Sie das Modul auf Ihrem Computer speichern und über ein Netzwerk teilen.

Falls andere Server dieses Modul importieren und bereitstellen können, können Sie eine automatisierte Windows-Patch-Verwaltung einrichten. Zu diesem Zweck sollten Sie das folgende Cmdlet ausführen:

Save-Module -Name PSWindowsUpdate -Path

Hier müssen Sie den Parameter –Path Parameter definieren, von wo das PSWindowsUpdate-Modul gespeichert werden soll.

Verwendung von PSWindowsUpdate

Im weiteren Schritt erfahren Sie, wie Sie dieses Modul verwenden, um Windows-Updates mit PowerShell-Cmdlets zu automatisieren. Dies ist ein großer Vorteil für IT-Administratoren, die den Patch-Management-Prozess auf Server Core-Computern ohne GUI durchführen müssen. Mit diesen Cmdlets können Sie die Komplexität der Verwaltung minimieren und den Prozess einfacher und weniger fehleranfällig gestalten.

Um eine vollständige Liste der verfügbaren Windows-Software-Updates zu erhalten, führen Sie den folgenden PowerShell-Befehl aus:

Get-WindowsUpdate

Sie sollten die unten angezeigte Ausgabe auf Ihrem Bildschirm sehen:

Get Windows Update (automate Windows updates)

Anhand dieser Informationen wissen Sie genau, welche Software oder Anwendung aktualisiert werden muss. Nach der Installation der Updates können Sie alle Updates installieren, indem Sie den folgenden Befehl eingeben. Von dem Parameter –AutoReboot können Sie außerdem sicherstellen, dass das System nach der Installation des Updates automatisch neu gestartet wird.

Get-WUInstall -AcceptAll –AutoReboot

Wenn Sie keinen Neustart wünschen (um den Produktionsablauf nicht zu unterbrechen), können Sie das folgende Cmdlet ausführen:

Get-WUInstall -AcceptAll –IgnoreReboot

Auf dem Bildschirm sehen Sie den Fortschritt des Patch-Management-Prozesses sowie die vollständige Liste der Updates und deren aktuellen Status.

Downloading updates (automate Windows updates)

Nach Abschluss des Installationsvorgangs wird in der PowerShell-Konsole die folgende Meldung angezeigt: „Ein Neustart ist erforderlich, muss jedoch manuell durchgeführt werden”. Sie müssen das System also weiterhin neu starten, können dies jedoch zu einem Zeitpunkt tun, der Ihnen am besten passt.

Wenn Sie nur ein bestimmtes Update herunterladen möchten, können Sie den Parameter –KBArticleID zum PowerShell-Cmdlet hinzufügen. Vergessen Sie nicht, die Nummer des KB-Artikels anzugeben, um den richtigen Patch herunterzuladen. Beispielsweise möchte ich Windows Malicious Software Removal Tool x64 und Security Intelligence Update für Windows Defender Antivirusherunterladen. Der entsprechende PowerShell-Befehl sollte wie folgt aussehen:

Get-WUInstall -KBArticleID KB890830, KB2267602 –AcceptAll

Nach Ausführung dieses Befehls sind nur zwei der genannten Updates auf meinem Computer installiert.

Übersicht über PSWindowsUpdate-Befehle

Wenn Sie sich fragen, welches PowerShell-Cmdlet mit dem PSWindowsUpdate-Modul arbeitet, geben Sie den folgenden Befehl ein und drücken Sie die Eingabetaste: Geben Sieein:

Get-Command –module PSWindowsUpdate

Hier sehen Sie eine vollständige Liste der Befehle des Moduls.
List of PSWindowsUpdate commands (automate Windows updates)
Sehen wir uns nun an, wie einige dieser Befehle funktionieren.

1. Mit dem Cmdlet „ <“ >Get-WUHistorykönnen Sie den Verlauf der letzten Updates ansehen. Nach Ausführung dieses Befehls erhalten Sie eine ähnliche Ausgabe auf Ihrem Bildschirm.

Viewing history of installed updates (automate Windows updates)

2. Das weitere Cmdlet ist Get-WUInstallerStatus, mit dem Sie den Status des Windows Installer-Dienstes überprüfen können. Hier können Sie überprüfen, ob der Installer ordnungsgemäß arbeitet. Die Ausgabe für diesen Vorgang kann wie folgt aussehen:

Viewing the installer status (automate Windows updates)

3. Von Ausführen des Cmdlets „ <“ „>“ Get-WURebootStatus< „> “ können Sie überprüfen, ob Sie das System neu starten müssen, damit ein bestimmtes Update vollständig angewendet wird.

< „><“ „><“ „>

“ 4. Mit dem Get-WUServiceManager Cmdlet können Sie die Quelle von Windows-Updates überprüfen.

Viewing the source of Windows updates (automate Windows updates)

Wie Sie sehen können, zeigt die letzte Spalte die Update-Quelle an (z. B. Windows Update, DCat Flighting Prod usw.).

5. Sie können bestimmte Updates von der Liste ausblenden, um zu verhindern, dass sie auf Ihrem Computer installiert werden. Zu diesem Zweck sollten Sie den Befehl Hide-WindowsUpdate ausführen, mit dem Sie die ID der KB-Artikel angeben können, die Sie ausblenden möchten. Das folgende Beispiel zeigt, wie Sie das Update KB2267602 von der Liste ausblenden können:

$HideList = "KB2267602"

Hide-WindowsUpdate -KBArticleID $HideList –Hide

Bevor Änderungen vorgenommen werden, werden Sie aufgefordert, die Auswahl zu bestätigen. Geben Sie Y ein, um den KB-Artikel auszublenden.
Hiding Windows Updates (automate Windows updates)

Wenn Sie jedoch die Liste der ausgeblendeten Updates abrufen möchten, können Sie das folgende Cmdlet ausführen.

Get-WindowsUpdate –IsHidden
Hidden Windows Updates (automate Windows updates)

In der Spalte „Status” sehen Sie den Buchstaben H , der angibt, dass das Update erfolgreich ausgeblendet wurde. Wenn Sie also das weiter folgende Mal den Befehl Get-WUInstall ausführen, wird das ausgewählte Update automatisch aus der Liste der verfügbaren Updates ausgeschlossen.

Wenn Sie die Änderungen rückgängig machen möchten, können Sie das folgende Cmdlet in der PowerShell-Konsole verwenden:

Hide-WindowsUpdate -KBArticleID $HideList -Hide:$false

Auch hier werden Sie aufgefordert, die Änderungen von Y zu bestätigen.
Changing the status of Windows update (automate Windows updates)

Wie Sie sehen können, ist der Buchstabe H nicht mehr im Status enthalten, was bedeutet, dass dieses Windows-Update nicht mehr ausgeblendet ist und auf Ihren Computer heruntergeladen werden kann.

6. Eine weitere Konfigurationsoption besteht darin, die auf Ihrem Computer installierten Updates zu entfernen. Zu diesem Zweck können Sie das Cmdlet „ <“ verwenden und die ID des KB-Artikels eingeben, den Sie von Ihrem Computer entfernen möchten. Beispiel: Remove-WindowsUpdate -KBArticleID KB4519573 –IgnoreReboot

Von dem Parameter –IgnoreReboot stellen Sie sicher, dass der Computer nicht automatisch neu gestartet wird. Sobald das Update deinstalliert ist, können Sie den Computer später neu starten.

7. Zu guter Letzt können Sie mit dem Cmdlet „ <“ >Get-WUList auf einem Remotecomputer nach verfügbaren Windows-Updates suchen.

Get-WUList –ComputerName Server5

Damit dieses Cmdlet funktioniert, müssen Sie auch das PSWindowsUpdate-Modul auf einem Remotecomputer installieren. Auf diese Weise können Sie Windows-Updates für mehrere Computer über eine einzige Oberfläche automatisieren. Mit PSWindowsUpdate wird der Patch-Management-Prozess auf einfache und effiziente Weise durchgeführt.

Darüber hinaus können Sie den Verwaltungsaufwand reduzieren, der IT-Administratoren während der System-Patching-Phase entstehen kann.

Zusammenfassung

Das PSWindowsUpdate-Modul wurde entwickelt, um den Patch-Management-Prozess einfacher und effizienter zu gestalten. Durch die Automatisierung der Installation von Updates können Sie sicher sein, dass Ihr System regelmäßig aktualisiert wird, wodurch das Risiko von Systemausfällen und Sicherheitsverletzungen minimiert wird. Patches werden hauptsächlich entwickelt, um Probleme oder Schwachstellen zu beheben, die in einem Programm erkannt werden. Ein regelmäßiges Patch-Management kann jedoch keinen vollständigen Schutz der gesamten Produktionsumgebung gewährleisten.

Zu diesem Zweck benötigen Sie eine umfassende Lösung für die Datensicherheit, die Backup und Standortwiederherstellung für physische, virtuelle und Cloud-Umgebungen bietet. Mit NAKIVO Backup & Replikation können Sie Ihre wichtigsten Daten und Anwendungen auf mehreren Plattformen sichern, die Wiederherstellung unter allen Umständen gewährleisten und die Kosten für die Datensicherheit senken.

1 Year of Free Data Protection: NAKIVO Backup & Replication

1 Year of Free Data Protection: NAKIVO Backup & Replication

Deploy in 2 minutes and protect virtual, cloud, physical and SaaS data. Backup, replication, instant recovery options.

Empfohlene Artikel