WSUS et Windows 11 : comment annuler une approbation d’upgrade approuvée par erreur, stopper immédiatement tout déploiement et trafic, et comprendre l’impact réel de la stratégie Automatic Updates detection frequency afin d’éviter toute récidive.
WSUS — annuler une approbation et stopper le déploiement
Vue d’ensemble de la question
Une mise à niveau Feature Update to Windows 11 a été approuvée par erreur pour un groupe WSUS. Après remise à Not approved, certains postes continuent de télécharger et/ou restent sur Pending install. Le réseau vers WSUS a même été coupé puis rétabli, mais la consommation de bande passante reprend. Objectif : bloquer immédiatement l’installation et le téléchargement, clarifier l’effet de Automatic Updates detection frequency (AUDF), et décider si l’on doit réduire l’intervalle ou vider SoftwareDistribution
.
Constats clés et mécanismes côté client
- Annuler une approbation WSUS n’est pas instantané côté client : le changement n’est pris en compte qu’au prochain cycle de détection Windows Update. Cet instant dépend de l’AUDF (min. 1 h) ou d’un scan forcé.
- Si un téléchargement est déjà lancé, il peut continuer jusque la prochaine détection (ou jusqu’à ce que vous l’arrêtiez explicitement sur le client), même après passage à Not approved.
- L’AUDf n’impose pas un scan immédiat : elle définit un intervalle maximum entre deux scans planifiés. Pour un effet immédiat, il faut déclencher un scan manuellement sur les clients.
- Couper le réseau seul ne suffit pas : à la reconnexion, Delivery Optimization (DoSvc) et BITS reprennent les transferts si le client n’a pas encore constaté le changement d’approbation.
Plan d’action rapide et fiable
Côté WSUS
- Passer l’update en Not approved pour tous les groupes concernés.
- Décliner l’update (en plus de Not approved) afin de forcer un blocage à l’échelle de la ferme WSUS. L’état Declined annule la mise à disposition, même si une règle d’approbation se réapplique.
- Mettre en pause ou ajuster les règles d’approbation automatique pour éviter qu’elles ne ré‑approuvent la classification Upgrades.
- Si vous ne déployez pas de mises à niveau de fonctionnalités via WSUS, désactivez la classification Upgrades dans les options de synchronisation ou excluez-la dans vos règles.
Côté clients : forcer la prise en compte immédiate
Sur le parc à risque (GPO, script à distance, Intune, SCCM/ConfigMgr, PSRemoting), faites exécuter :
gpupdate /force
Puis déclenchez un scan immédiat (choisissez une des commandes suivantes selon vos versions et politiques) :
:: Tâche planifiée Update Orchestrator (Windows 10/11)
schtasks /run /tn "\Microsoft\Windows\UpdateOrchestrator\Schedule Scan"
\:: Alternatives (peuvent varier selon build et droits)
UsoClient StartScan
wuauclt /detectnow
wuauclt /reportnow
Astuce : si vous administrez un grand nombre de machines, orchestrez ces commandes via une GPO démarrage, un script de connexion, ou un Invoke-Command PowerShell ciblé.
Stopper immédiatement les téléchargements en cours
Sur les machines qui consomment encore de la bande passante, stoppez les services, purgez le cache de téléchargement puis redémarrez les services :
powershell -NoProfile -ExecutionPolicy Bypass -Command ^
"Stop-Service wuauserv -Force; ^
Stop-Service bits -Force; ^
Stop-Service dosvc -Force; ^
Remove-Item \"$env:windir\SoftwareDistribution\Download\*\" -Recurse -Force; ^
Start-Service dosvc; ^
Start-Service bits; ^
Start-Service wuauserv"
Supprimez les transferts BITS résiduels s’il en reste :
powershell -NoProfile -Command "Get-BitsTransfer -AllUsers | Remove-BitsTransfer -Confirm:$false"
Relancez ensuite un scan (voir plus haut) pour que la machine constate l’absence d’offre pour l’upgrade Windows 11.
Empêcher tout repli vers Internet
Vérifiez les stratégies suivantes pour éviter le dual scan et le fallback vers Windows Update cloud :
- Specify intranet Microsoft update service location : WSUS défini.
- Do not connect to any Windows Update Internet locations : Enabled.
- Do not allow update deferral policies to cause scans against Windows Update : Enabled.
Si ces GPO ne sont pas en place et que vous coupez WSUS, certains clients peuvent tenter de scanner Internet au prochain créneau ; d’où l’importance de verrouiller ces paramètres.
Vérifications rapides
- Sur une machine témoin : Observateur d’événements → Microsoft‑Windows‑WindowsUpdateClient/Operational : confirmez un nouveau scan et l’absence d’offre de mise à niveau.
- Dans WSUS : le compteur Needed de l’update doit décroître au fur et à mesure des rescans.
- Sur le client :
%windir%\WindowsUpdate.log
généré viaGet-WindowsUpdateLog
si nécessaire pour corréler scan/offer/download.
Comprendre la stratégie Automatic Updates detection frequency
L’AUDF définit la fréquence de détection par le client Windows Update. Points essentiels :
- Valeur minimale : 1 heure. Réduire l’intervalle accélère les rescans futurs, mais n’impose pas un scan dès l’instant où vous changez l’approbation côté WSUS.
- En cas de coupure puis rétablissement du réseau, les clients ne scannent pas forcément immédiatement ; ils suivent leur planification et/ou le prochain déclencheur interne.
- Pour un effet « tout de suite », déclenchez un scan avec les commandes vues plus haut.
Comparatif des actions et de leur effet
Action | Portée | Prise d’effet | Avantages | Limites |
---|---|---|---|---|
Not approved | Groupes WSUS ciblés | À prochain scan client | Rapide côté console | N’arrête pas un téléchargement déjà lancé |
Decline | Toutes affectations | À prochain scan client | Bloque fort, y compris contre ré‑approbations | Nécessite aussi un scan côté client |
Scan forcé | Client | Immédiat | Applique instantanément l’état d’approbation | Doit être orchestré à distance |
Purge SoftwareDistribution\Download | Client | Immédiat | Stoppe la reprise d’un téléchargement | Perte du cache ; l’historique local n’est pas affecté si vous ne supprimez que Download |
Couper le réseau WSUS | Infrastructure | Immédiat côté transport | Réduit le trafic sur le moment | Reprend dès la reconnexion si aucun scan n’a constaté le changement |
Procédure scriptée prête à l’emploi
Exemple de playbook PowerShell à exécuter depuis une console d’administration, qui :
- Force l’application GPO.
- Arrête WU, BITS, DoSvc et purge
Download
. - Relance les services.
- Déclenche un scan immédiat.
# Ciblez un ensemble de machines (AD, CSV, OU)
$Computers = @(
"PC-SEC-001","PC-SEC-002","PC-SEC-003" # <-- à adapter
)
\$ScriptBlock = {
try {
Write-Host "\[\$env\:COMPUTERNAME] GPUpdate..." -ForegroundColor Cyan
gpupdate /force | Out-Null
```
Write-Host "[$env:COMPUTERNAME] Stop services..." -ForegroundColor Cyan
Stop-Service wuauserv -Force -ErrorAction SilentlyContinue
Stop-Service bits -Force -ErrorAction SilentlyContinue
Stop-Service dosvc -Force -ErrorAction SilentlyContinue
Write-Host "[$env:COMPUTERNAME] Purge cache Download..." -ForegroundColor Cyan
Remove-Item "$env:windir\SoftwareDistribution\Download\*" -Recurse -Force -ErrorAction SilentlyContinue
Write-Host "[$env:COMPUTERNAME] Nettoyage BITS..." -ForegroundColor Cyan
Get-BitsTransfer -AllUsers -ErrorAction SilentlyContinue | Remove-BitsTransfer -Confirm:$false
Write-Host "[$env:COMPUTERNAME] Restart services..." -ForegroundColor Cyan
Start-Service dosvc
Start-Service bits
Start-Service wuauserv
Write-Host "[$env:COMPUTERNAME] Scan immédiat..." -ForegroundColor Cyan
schtasks /run /tn "\Microsoft\Windows\UpdateOrchestrator\Schedule Scan" | Out-Null
# Fallbacks possibles :
# UsoClient StartScan; wuauclt /detectnow; wuauclt /reportnow
Write-Host "[$env:COMPUTERNAME] OK" -ForegroundColor Green
```
}
catch {
Write-Warning "\[\$env\:COMPUTERNAME] Erreur: $\_"
}
}
Invoke-Command -ComputerName \$Computers -ScriptBlock \$ScriptBlock -AsJob | Out-Null
Conseil : exécutez d’abord sur un échantillon de postes témoins afin de valider la séquence dans votre contexte (antivirus, EDR, restrictions d’exécution, etc.).
Paramètres GPO critiques à verrouiller
Paramètre | Valeur recommandée | Chemin GPO | Vérification côté client |
---|---|---|---|
Specify intranet Microsoft update service location | Enabled + URL WSUS pour service et statistiques | Computer Configuration → Administrative Templates → Windows Components → Windows Update | reg query HKLM\SOFTWARE\Policies\Microsoft\Windows\WindowsUpdate |
Do not connect to any Windows Update Internet locations | Enabled | Windows Update | Observateur d’événements ; absence de fallback Internet |
Do not allow update deferral policies to cause scans against Windows Update | Enabled | Windows Update for Business | Vérifier qu’aucun dual scan ne survient après rescans |
Automatic Updates detection frequency | Selon besoin ; min. 1 h | Windows Update | Constaté par la fréquence des événements de scan |
Scénarios, symptômes et remèdes
Postes affichant Pending install
Le client a déjà reçu l’offre et attend une fenêtre d’installation. Un scan forcé fera disparaître l’offre si l’update est Declined/Not approved. Entre‑temps, purgez le cache Download
pour neutraliser tout package pré‑téléchargé.
Téléchargement qui repart après rétablissement du réseau
Comportement normal si le client n’a pas rescanné. Déclenchez le scan puis purgez Download
et transferts BITS.
Consommation inter‑poste via Delivery Optimization
Si DoSvc autorise du P2P au‑delà du sous‑réseau, vous pouvez voir du trafic même sans accès direct au WSUS. En phase de crise : limitez temporairement le P2P à l’intranet immédiat ou désactivez‑le via stratégie le temps du rollback.
Vider ou ne pas vider SoftwareDistribution
?
- À privilégier d’abord : un scan forcé et la suppression du sous‑dossier
Download
uniquement. - À éviter par défaut : suppression globale de
SoftwareDistribution
(perte de certains index et ré‑création du catalogue local, inutile dans la majorité des cas).
Bonnes pratiques et prévention
- Groupe pilote : n’approuvez les Upgrades que sur un petit anneau de test. Attendez la télémétrie avant d’étendre.
- Geler les Upgrades si vous ne migrez pas : ne synchronisez pas la classification Upgrades ou excluez‑la des règles d’approbation.
- Limiter le trafic : configurez Delivery Optimization (DoSvc) pour du P2P in‑LAN uniquement et plafonnez les débits en période sensible.
- Journalisation : surveillez WindowsUpdateClient/Operational et les compteurs Needed/Not installed dans WSUS après chaque action.
- Rôles et responsabilités : séparez l’approbation WSUS de l’exploitation réseau pour éviter les actions unilatérales (ex. coupure réseau) sans coordination.
FAQ express
La simple annulation d’approbation suffit‑elle ?
Non, pas à elle seule. C’est efficace une fois que chaque client a rescanné. Pour un blocage immédiat, combinez Decline côté WSUS et scan forcé + purge du cache côté clients.
Dois‑je réduire l’AUDF ?
La réduire peut aider pour les prochains cycles, mais n’a pas d’effet instantané. Pour cette crise, déclenchez un scan forcé ; pour l’avenir, dimensionnez l’AUDF à votre niveau de réactivité souhaité (ex. 1–4 heures).
Quelle différence entre Not approved et Declined ?
Not approved : l’update n’est pas proposée aux groupes ciblés, mais peut l’être ailleurs (et une règle peut la ré‑approuver). Declined : l’update est refusée par le serveur, ce qui bloque globalement sa proposition, sauf action explicite inverse.
Pourquoi certains postes continuent malgré tout ?
Parce qu’ils n’ont pas encore rescanné (AUDF) ou que leurs packages sont déjà en cache. D’où la séquence : Decline → scan → purge → scan.
Check‑list opérationnelle
- Mettre l’update en Not approved pour tous les groupes touchés.
- Decline l’update pour verrouiller le blocage.
- Désactiver temporairement les auto‑approbations pour la classe Upgrades.
- Sur les clients : gpupdate puis scan immédiat.
- Stopper WU/BITS/DoSvc et purger
Download
si trafic persistant. - Éviter tout fallback Internet via les GPO clés.
- Contrôler les journaux et la décroissance du Needed dans WSUS.
Exemples d’automatisation avancée
Déploiement via GPO de démarrage
Placez un script .cmd
de quelques lignes dans une GPO Startup pour les OU concernées :
@echo off
gpupdate /force
schtasks /run /tn "\Microsoft\Windows\UpdateOrchestrator\Schedule Scan"
powershell -NoProfile -Command "Stop-Service wuauserv,bits,dosvc -Force; Remove-Item \"$env:windir\SoftwareDistribution\Download\*\" -Recurse -Force; Start-Service dosvc,bits,wuauserv"
schtasks /run /tn "\Microsoft\Windows\UpdateOrchestrator\Schedule Scan"
Supervision minimale en PowerShell
Échantillon pour lister les machines qui voient encore l’update comme Needed selon un filtre local (indicatif) :
# Exemple indicatif: recherche d'indices locaux
$Computers | ForEach-Object {
try {
Invoke-Command -ComputerName $_ -ScriptBlock {
$wu = Get-ChildItem "$env:windir\SoftwareDistribution\Download" -Directory -ErrorAction SilentlyContinue
[PSCustomObject]@{
Computer = $env:COMPUTERNAME
HasDownload = [bool]$wu
DoSvc = (Get-Service dosvc).Status
BITS = (Get-Service bits).Status
WUA = (Get-Service wuauserv).Status
}
}
} catch {
[PSCustomObject]@{ Computer = $_; Error = "$_" }
}
} | Format-Table -Auto
À retenir
- Unapprove/Decline côté WSUS + scan forcé côté clients : la combinaison la plus rapide pour stopper net un déploiement d’upgrade Windows 11.
- L’AUDF explique le délai : sans scan forcé, une machine peut attendre jusqu’à l’intervalle défini (min. 1 h) avant de constater le changement.
- Couper le réseau seul ne suffit pas : à la reconnexion, le trafic reprend si le client n’a pas rescanné.
- Vider complètement
SoftwareDistribution
est rarement nécessaire ; privilégiez la purge du sous‑dossierDownload
et un nouveau scan.
Synthèse opérationnelle
Le comportement observé est conforme au design du client Windows Update : l’état d’approbation côté WSUS n’est consommé par le client qu’au prochain cycle de détection. C’est la raison pour laquelle un poste peut continuer à télécharger même après un Not approved. La stratégie Automatic Updates detection frequency ne sert pas de bouton d’arrêt d’urgence : elle règle le tempo de vos scans de routine, pas l’instant où se produit le prochain. La bonne réponse à une approbation accidentelle d’une Feature Update to Windows 11 est donc double : bloquer server‑side (Not approved + Decline + règles) et accélérer client‑side (gpupdate, scan forcé, purge du cache, prévention du fallback). Avec cette approche, vous reprenez immédiatement la main sur le trafic et l’expérience utilisateur, tout en durcissant votre pipeline de mise à niveau pour qu’un tel incident ne se reproduise pas.
Annexe : commandes de référence
:: Forcer les GPO
gpupdate /force
\:: Forcer un scan
schtasks /run /tn "\Microsoft\Windows\UpdateOrchestrator\Schedule Scan"
UsoClient StartScan
wuauclt /detectnow
wuauclt /reportnow
\:: Stopper services et purger les téléchargements
powershell -NoProfile -Command "Stop-Service wuauserv -Force; Stop-Service bits -Force; Stop-Service dosvc -Force; Remove-Item "\$env\:windir\SoftwareDistribution\Download\*" -Recurse -Force; Start-Service dosvc; Start-Service bits; Start-Service wuauserv"
\:: Effacer les transferts BITS
powershell -NoProfile -Command "Get-BitsTransfer -AllUsers | Remove-BitsTransfer -Confirm:\$false"
\:: Générer WindowsUpdate.log (diag approfondie)
powershell -NoProfile -Command "Get-WindowsUpdateLog -LogPath \$env\:TEMP\WindowsUpdate.log"
Modèle de communication interne
Pour clôturer l’incident et documenter l’apprentissage, partagez un court compte rendu :
- Cause : Upgrade Windows 11 approuvée par erreur.
- Impact : trafic WU accru, postes en Pending install.
- Mesures : Not approved + Decline, désactivation de la règle d’auto‑approbation, scan forcé, purge cache, verrouillage GPO anti‑fallback.
- Résultat : trafic revenu à la normale, aucune installation indésirable.
- Prévention : anneau pilote, checklist de publication, exclusion ou gel de la classification Upgrades.
Conclusion : en combinant contrôle serveur et orchestration client, vous stoppez immédiatement un déploiement d’upgrade Windows 11 approuvé par erreur et vous évitez toute reprise fantôme du trafic après rétablissement réseau. Cette méthode s’appuie sur le fonctionnement réel du client Windows Update et vous redonne le contrôle avec un minimum d’interruptions.