Comment automatiser les mises à jour de Windows à l’aide de PowerShell: Aperçu rapide

La gestion des patchs est un aspect crucial de la gestion des infrastructures informatiques, tout comme sauvegarde du poste de travail Windows. Avec la bonne solution de gestion des patchs, vous pouvez améliorer votre système en testant ou en installant les dernières mises à jour de logiciels et les patchs. Les patchs sont considérés comme des correctifs temporaires pour les problèmes existants entre les versions de logiciels à grande échelle. Si la gestion des patchs est effectuée efficacement, vous pouvez rapidement résoudre les vulnérabilités de votre système et atténuer toutes menaces potentielles.

Windows propose sa propre solution de gestion des patchs – Windows Update. Cependant, de nombreux administrateurs informatiques trouvent encore le processus de gestion des patchs trop complexe et chronophage. De plus, les mises à jour système peuvent affecter votre flux de travail de production car elles démarrent souvent automatiquement pendant les heures de bureau. Avec les cmdlets PowerShell, vous pouvez automatiser les mises à jour Windows, ce qui vous permet de gagner en efficacité et en temps.

Cet article de blog décrit comment vous pouvez utiliser PowerShell pour installer les mises à jour Windows et inclut une liste de commandes PowerShell utiles pour automatiser le processus de gestion des patchs. Les patchs peuvent réduire le risque de bogues ou de vulnérabilités affectant votre système.

Qu’est-ce que PSWindowsUpdate?

Pour rendre le processus de gestion des patchs Windows fluide et facile, vous pouvez utiliser le module PSWindowsUpdate développé par Michal Gajda. Ce module est disponible publiquement et peut être téléchargé gratuitement à partir du PowerShell Gallery. La principale exigence est qu’un ordinateur doit exécuter des versions de Windows OS à partir de Vista ou Windows Server 2008. De plus, vous devez disposer de PowerShell 2.0 ou ultérieur.

Avec PSWindowsUpdate, vous pouvez déterminer si des mises à jour Windows sont disponibles pour votre ordinateur. De plus, ce module vous permet de gérer de manière centralisée les mises à jour Windows à travers divers serveurs Windows et postes de travail. De cette façon, vous pouvez contrôler à distance quelles mises à jour sont installées, supprimées ou masquées.

Comment automatiser les mises à jour Windows avec PowerShell

Ci-dessous, nous allons décrire le processus de configuration PSWindowsUpdate, y compris comment télécharger et installer le module, ainsi que comment rechercher les commandes qui peuvent vous aider à automatiser les mises à jour Windows.

Comment installer PSWindowsUpdate

Pour automatiser efficacement la gestion des patchs Windows, vous devez d’abord installer le module PSWindowsUpdate sur votre ordinateur. À cette fin, ouvrez une invite PowerShell élevée et entrez la commande suivante:

Install-Module -Name PSWindowsUpdate

Après avoir exécuté cette commande, on vous demandera si vous souhaitez installer le module spécifié depuis PSGallery. Sélectionnez Oui si vous souhaitez continuer et accepter tous les changements.

Une fois le module installé, vous devez vous assurer que vous pouvez accéder à distance à d’autres ordinateurs. De cette façon, vous devriez être en mesure d’installer des mises à jour Windows sur des ordinateurs distants, ce qui vous permettra de gagner du temps et des efforts. Pour que le module PSWindowsUpdate fonctionne avec des machines distantes, vous devez enregistrer le module sur votre ordinateur et le partager sur un réseau.

Si d’autres serveurs sont capables d’importer et de déployer ce module, vous pouvez mettre en place une gestion automatisée des correctifs Windows. À cette fin, vous devez exécuter la cmdlet suivante :

Save-Module -Name PSWindowsUpdate -Path

Ici, vous devez définir le paramètre –Path en spécifiant l’endroit où vous souhaitez que le module PSWindowsUpdate soit stocké.

Comment utiliser PSWindowsUpdate

Pour l’étape suivante, vous apprendrez comment utiliser ce module afin d’automatiser les mises à jour Windows avec des cmdlets PowerShell. C’est un avantage considérable pour les administrateurs informatiques qui doivent effectuer le processus de gestion des correctifs sur des machines Server Core sans interface graphique. Grâce à l’utilisation de ces cmdlets, vous pouvez réduire la complexité de la gestion et rendre le processus plus facile et moins sujet aux erreurs.

Pour obtenir une liste complète des mises à jour Windows disponibles, exécutez la commande PowerShell suivante :

Get-WindowsUpdate

Vous devriez obtenir la sortie vue ci-dessous sur votre écran :

Avec ces informations, vous saurez avec certitude quel logiciel ou application doit être mis à jour. Après cela, vous pouvez installer toutes les mises à jour en saisissant la commande ci-dessous. De plus, en ajoutant le paramètre –AutoReboot , vous pouvez vous assurer que le système redémarrera automatiquement une fois la mise à jour installée.

Get-WUInstall -AcceptAll –AutoReboot

Si vous ne souhaitez pas démarrer un redémarrage (pour ne pas interrompre le flux de production), vous pouvez exécuter la cmdlet suivante :

Get-WUInstall -AcceptAll –IgnoreReboot

À l’écran, vous pouvez voir la progression du processus de gestion des correctifs, ainsi que la liste complète des mises à jour et leur état actuel.

Après que le processus d’installation soit complet, vous verrez le message suivant dans la console PowerShell : ‘Un redémarrage est nécessaire mais effectuez-le manuellement’. Ainsi, vous devez toujours redémarrer le système, mais vous pouvez le faire au moment qui convient le mieux à votre emploi du temps.

Si vous souhaitez télécharger uniquement une mise à jour spécifique, vous pouvez ajouter le paramètre –KBArticleID à la cmdlet PowerShell. N’oubliez pas de spécifier le numéro de l’article KB afin de télécharger le correctif approprié. Par exemple, je veux installer Windows Malicious Software Removal Tool x64 et Security Intelligence Update for Windows Defender Antivirus. La commande PowerShell appropriée devrait apparaître comme suit :

Get-WUInstall -KBArticleID KB890830, KB2267602 –AcceptAll

Après avoir exécuté cette commande, seulement deux des mises à jour mentionnées seront installées sur mon ordinateur.

Présentation des commandes PSWindowsUpdate

Si vous vous demandez quelle cmdlet PowerShell peut fonctionner avec le module PSWindowsUpdate, vous devriez taper la commande suivante et appuyer sur Entrée:

Get-Command –module PSWindowsUpdate

Ici, vous pouvez voir une liste complète des commandes du module.

Passons en revue le fonctionnement de certaines de ces commandes.

1. La cmdlet Get-WUHistory vous permet de consulter l’historique des dernières mises à jour. Après avoir exécuté cette commande, vous obtiendrez une sortie similaire à l’écran.

2. La prochaine cmdlet est Get-WUInstallerStatus, qui vous permet de vérifier l’état du service d’installation de Windows. Ici, vous pouvez vérifier si l’installateur fonctionne correctement ou non. La sortie de cette opération peut ressembler à ceci:

3. En exécutant la cmdlet Get-WURebootStatus, vous pouvez vérifier si vous devez redémarrer le système afin qu’une mise à jour spécifique soit entièrement appliquée.

4. Avec la cmdlet Get-WUServiceManager, vous pouvez vérifier la source des mises à jour Windows.

Comme vous pouvez le voir, la dernière colonne montre la source de la mise à jour (par exemple, Windows Update, DCat Flighting Prod, etc.).

5. Vous pouvez masquer certaines mises à jour de la liste afin d’éviter de les installer sur votre ordinateur. Pour ce faire, vous devez exécuter la commande Hide-WindowsUpdate où il est possible de spécifier l’ID des articles KB que vous souhaitez masquer. L’exemple suivant montre comment vous pouvez masquer la mise à jour KB2267602 de la liste :

$HideList = "KB2267602"

Hide-WindowsUpdate -KBArticleID $HideList –Hide

Avant toute modification, vous devrez confirmer la sélection. Tapez Y pour masquer l’article KB.

Cependant, si vous souhaitez obtenir la liste des mises à jour masquées, vous pouvez exécuter la cmdlet ci-dessous.

Get-WindowsUpdate –IsHidden

Dans la colonne État, vous pouvez voir la lettre H qui indique que la mise à jour a été cachée avec succès. Ainsi, la prochaine fois que vous exécutez la commande Get-WUInstall, la mise à jour sélectionnée sera automatiquement exclue de la liste des mises à jour disponibles.

Si vous souhaitez annuler les modifications, vous pouvez utiliser la cmdlet suivante dans la console PowerShell:

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

Une fois de plus, vous devrez confirmer les modifications en tapant Y.

Comme vous pouvez le voir, la lettre H n’est plus incluse dans l’état de la mise à jour, ce qui signifie que cette mise à jour de Windows n’est plus masquée et peut être téléchargée sur votre ordinateur.

6. Une autre option de configuration disponible pour vous est de supprimer les mises à jour que vous avez installées sur votre machine. À cette fin, vous pouvez utiliser la cmdlet Remove-WindowsUpdate et taper l’ID de l’article KB que vous souhaitez désinstaller de votre ordinateur. Par exemple:

Remove-WindowsUpdate -KBArticleID KB4519573 –IgnoreReboot

En ajoutant le paramètre –IgnoreReboot, vous vous assurez que l’ordinateur ne redémarrera pas automatiquement. Une fois la mise à jour désinstallée, vous pouvez redémarrer la machine ultérieurement.

7. Enfin, vous pouvez rechercher les mises à jour disponibles de Windows sur une machine distante en utilisant la commande Get-WUList.

Get-WUList –ComputerName Server5

Pour que cette commande fonctionne, vous devez également installer le module PSWindowsUpdate sur un ordinateur distant. De cette manière, vous pouvez automatiser les mises à jour de Windows pour plusieurs machines à partir d’une seule interface. Avec PSWindowsUpdate, le processus de gestion des correctifs est réalisé de manière simple et efficace.

De plus, vous pouvez réduire la surcharge de gestion que les administrateurs informatiques peuvent rencontrer lors du patching système.

Conclusion

Le module PSWindowsUpdate a été développé pour rendre le processus de gestion des correctifs plus simple et plus efficace. En automatisant l’installation des mises à jour, vous pouvez être sûr que votre système est mis à jour régulièrement, minimisant ainsi le risque de défaillances système et de violations de sécurité. Les correctifs sont principalement développés pour résoudre des problèmes ou des vulnérabilités découverts dans un programme. Cependant, la gestion régulière des correctifs ne peut garantir une protection à grande échelle de l’ensemble de l’environnement de production.

Pour ce faire, vous devez utiliser une solution complète de protection des données qui offre une sauvegarde et une reprise sur sinistre pour les environnements physiques, virtuels et cloud. Avec NAKIVO Backup & Replication, vous pouvez sécuriser vos données et applications les plus critiques sur plusieurs plateformes, garantir la récupération dans toutes les circonstances et réduire les coûts de protection des données.

Source:
https://www.nakivo.com/blog/automate-windows-updates-using-powershell-short-overview/