WSUS pour Poste local
Forcer WSUS pour les postes hors domaine :
Lorsqu’un serveur WSUS gère les mises à jour de Windows, il est important de le spécifier dans la configuration de votre version de master.
Selon les best practice de Wisper 360, il est recommandé de laisser les scripts d’intégration au domaine s’exécuter après le déploiement des VM.
Pour appliquer cette configuration, il vous suffit d'ajouter les clés de registre suivantes sur la version Master de Windows :
[HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Windows\WindowsUpdate][HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Windows\WindowsUpdate]
"WUServer"="http://192.168.0.x"
"WUStatusServer"="http://192.168.0.x"
[HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Windows\WindowsUpdate\AU][HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Windows\WindowsUpdate\AU]
"UseWUServer"=dword:00000001
"IncludeRecommendedUpdates"=dword:00000001
"NoAutoUpdate"=dword:00000000
"AUOptions"=dword:00000002
"ScheduledInstallDay"=dword:00000000
"ScheduledInstallTime"=dword:00000010
Il est effectivement laborieux de faire cela manuellement, donc je vous propose le script suivant :
############################################### ## ##
############# WSUS hors domaine : ############# ## ##
############################################### #########
### ### ###
###############
## ########### ##
## ## ## ##
# #### #### #
# Assemblies #
[void] [System.Reflection.Assembly]::LoadWithPartialName("System.Windows.Forms")
[void] [System.Reflection.Assembly]::LoadWithPartialName("Microsoft.Win32")
# Assemblies #
# Functions #
# WindowsUpdate #
do {
Read-Host "Quelle est l'ip ou le nom DNS du WSUS ? `n" -OutVariable wsus | Out-Null
}
while (!$wsus)
Read-Host "Quelle est le port d'utilisation du WSUS ? (si laissé, port par défaut 8530 ) `n" -OutVariable wsusport | Out-Null
if (!$wsusport){
$wsusport = 8530
}
$RegLocalMachine = "SOFTWARE\Policies\Microsoft\Windows\WindowsUpdate"
$reg = [Microsoft.Win32.Registry]::LocalMachine.OpenSubKey( $RegLocalMachine, "true" )
$reg.SetValue( "WUServer", "http://$wsus`:$wsusport", [Microsoft.Win32.RegistryValueKind]::String)
$reg.SetValue( "WUStatusServer", "http://$wsus`:$wsusport", [Microsoft.Win32.RegistryValueKind]::String)
$reg.Close()
# WindowsUpdate #
# WindowsUpdateAU #
$RegLocalMachine = "SOFTWARE\Policies\Microsoft\Windows\WindowsUpdate\AU"
$reg1 = [Microsoft.Win32.Registry]::LocalMachine.OpenSubKey( $RegLocalMachine, "true" )
$reg1.SetValue( "UseWUServer", "1", [Microsoft.Win32.RegistryValueKind]::DWord)
$reg1.SetValue( "IncludeRecommendedUpdates", "1", [Microsoft.Win32.RegistryValueKind]::DWord)
$reg1.SetValue( "NoAutoUpdate", "0", [Microsoft.Win32.RegistryValueKind]::DWord)
$reg1.SetValue( "AUOptions", "2", [Microsoft.Win32.RegistryValueKind]::DWord)
$reg1.SetValue( "ScheduledInstallDay", "0", [Microsoft.Win32.RegistryValueKind]::DWord)
$reg1.SetValue( "ScheduledInstallTime", "10", [Microsoft.Win32.RegistryValueKind]::DWord)
$reg1.Close()
# WindowsUpdateAU #
############################################### ### # # #
############# WSUS hors domaine : ############# ## # #\#
############################################### # # # #
Il ne vous reste plus qu'à vérifier dans "regedit.exe" ou en lançant une mise à jour.
Updated about 2 months ago