Liste complète et expliquée des domaines et ports à autoriser pour que vos Windows Server accèdent sans friction à Windows Update, avec exemples de règles pare‑feu, configuration proxy (WinHTTP), tests PowerShell et bonnes pratiques en environnements restreints.
Vue d’ensemble de la question
Quels sont les noms d’hôtes (URL/FQDN) et les ports à autoriser côté pare‑feu et/ou proxy pour permettre à Windows Server de rechercher, télécharger et installer les mises à jour Microsoft ? Le domaine windowsupdate.microsoft.com
n’est pas le seul nécessaire ; plusieurs suffixes et sous‑domaines sont sollicités selon les composants (catalogue, téléchargement, télémétrie minimale, etc.).
Réponse & solution (liste d’autorisation)
FQDN à autoriser en sortie
(Les jokers *
couvrent tous les sous‑domaines)
http://windowsupdate.microsoft.com
http://*.windowsupdate.microsoft.com
https://*.windowsupdate.microsoft.com
http://*.update.microsoft.com
https://*.update.microsoft.com
http://*.windowsupdate.com
http://download.windowsupdate.com
http://*.download.windowsupdate.com
http://download.microsoft.com
http://wustat.windows.com
http://ntservicepack.microsoft.com
(hérité / anciens OS)
Ports réseau
- TCP 80 (HTTP) et TCP 443 (HTTPS) en sortie depuis les serveurs vers Internet.
En règle générale, aucune règle entrante n’est requise pour Windows Update standard.
Pourquoi plusieurs domaines ? (Comprendre le flux Windows Update)
Le client Windows Update (service wuauserv
) pilote la détection, tandis que BITS (Background Intelligent Transfer Service
) gère les téléchargements. Selon la version de Windows Server et les fonctionnalités en place (Microsoft Update, Catalog, Delivery Optimization), le client contacte :
- Les points de service (
*.windowsupdate.microsoft.com
,*.update.microsoft.com
) pour la détection. - Les CDN de contenu (
*.download.windowsupdate.com
,download.microsoft.com
) pour les packages (.cab
,.msu
,.esd
). - Des points de télémétrie minimale (ex.
wustat.windows.com
) afin d’optimiser l’expérience et les statistiques d’usage. - Des hôtes historiques (
ntservicepack.microsoft.com
) pour compatibilité ascendante d’anciens OS.
Bonnes pratiques réseau & proxy
- Évitez la liste blanche d’adresses IP : les adresses changent régulièrement (CDN, géodistribution). Basez‑vous sur les FQDN wildcard listés ci‑dessus.
- Proxy avec inspection TLS : les domaines Windows/Microsoft Update doivent être exemptés d’interception pour éviter des erreurs de signature et de chaîne de certificats. Si l’inspection est obligatoire, autorisez le pass‑through pour ces FQDN.
- WinHTTP ≠ Proxy utilisateur : Windows Update s’exécute sous
LocalSystem
. Configurez le proxy WinHTTP (pas seulement le proxy du navigateur). - Timeouts & tailles objets : adaptez les timeouts et la politique de cache pour de gros fichiers (
esd/msu
de plusieurs centaines de Mo). - DNS interne : laissez les résolutions atteindre les CNAME/A records publics des CDN, sans écrasement ni altération qui forcerait un chemin non optimal.
Configurer le proxy WinHTTP
rem Définir un proxy explicite pour le compte LocalSystem
netsh winhttp set proxy PROXY-SRV:PORT
rem Importer la configuration proxy d’Internet Explorer/Options Internet de l’administrateur courant
netsh winhttp import proxy source=ie
rem Vérifier
netsh winhttp show proxy
Delivery Optimization (pair‑à‑pair sur le LAN) — optionnel
Delivery Optimization (service DoSvc
) peut réduire l’usage Internet en peer‑to‑peer. À prévoir :
- TCP 7680 entrant sur les pairs du réseau local si le mode P2P est activé.
- Segmenter par sous‑réseaux/Group IDs pour éviter des échanges inter‑sites non désirés.
Principales stratégies (Group Policy) : Computer Configuration → Administrative Templates → Windows Components → Delivery Optimization (source de téléchargement, bandes passantes, mode P2P).
WSUS : quand et comment
- Les clients parlent au WSUS interne uniquement (pas besoin d’Internet).
- Le serveur WSUS doit accéder aux FQDN Windows/Microsoft Update listés plus haut.
- Ports par défaut côté client → WSUS : 8530 (HTTP) / 8531 (HTTPS).
Clés & GPO courantes (clients) :
Computer Configuration → Administrative Templates → Windows Components → Windows Update
- Specify intranet Microsoft update service location :
http(s)://wsus.mondomaine.local:8530/8531
- Configure Automatic Updates, No auto‑restart, etc.
- Specify intranet Microsoft update service location :
- Registre (créé par la GPO) :
HKLM\SOFTWARE\Policies\Microsoft\Windows\WindowsUpdate\AU
Exemples de règles pare‑feu (Windows Defender Firewall)
Autoriser la sortie HTTPS/HTTP vers Internet pour Windows Update (service)
# HTTPS par service Windows Update
New-NetFirewallRule -DisplayName "WU sortant HTTPS" -Direction Outbound -Protocol TCP `
-RemotePort 443 -Action Allow -Profile Any -Program "%SystemRoot%\System32\svchost.exe" `
-Service wuauserv
# HTTP par service Windows Update (selon besoin)
New-NetFirewallRule -DisplayName "WU sortant HTTP" -Direction Outbound -Protocol TCP ` -RemotePort 80 -Action Allow -Profile Any -Program "%SystemRoot%\System32\svchost.exe"`
-Service wuauserv
# BITS peut aussi télécharger via svchost (ou bits.exe)
New-NetFirewallRule -DisplayName "BITS sortant HTTPS" -Direction Outbound -Protocol TCP ` -RemotePort 443 -Action Allow -Profile Any -Program "%SystemRoot%\System32\svchost.exe"`
-Service bits
Version en ligne de commande (netsh)
netsh advfirewall firewall add rule name="WU HTTPS sortant" dir=out action=allow protocol=TCP remoteport=443 program="%SystemRoot%\System32\svchost.exe" service=wuauserv
netsh advfirewall firewall add rule name="WU HTTP sortant" dir=out action=allow protocol=TCP remoteport=80 program="%SystemRoot%\System32\svchost.exe" service=wuauserv
netsh advfirewall firewall add rule name="BITS HTTPS sortant" dir=out action=allow protocol=TCP remoteport=443 program="%SystemRoot%\System32\svchost.exe" service=bits
Tableau de synthèse par scénario
Scénario | FQDN requis | Ports | Notes |
---|---|---|---|
Windows Server autonome (WU) | Voir liste FQDN ci‑dessus | TCP 80/443 sortant | Pas de règle entrante. |
Windows Server + Microsoft Update (incl. Office, SQL…) | Idem + dépendances Microsoft Update | TCP 80/443 sortant | Étendre l’autorisation aux mêmes domaines (catalogue et contenu). |
Clients derrière WSUS | Uniquement l’URL de WSUS | 8530/8531 vers WSUS | WSUS, lui, nécessite les FQDN WU en sortie. |
Delivery Optimization P2P | FQDN WU + pairs LAN | TCP 7680 entrant sur pairs | Limiter au LAN, pas d’expo Internet. |
Serveur sans Internet (zéro sortie) | — | — | Utiliser WSUS, points de distribution, ou dépôts offline (Catalog). |
Tests rapides & diagnostic
Connectivité & téléchargement
# Tester le port 443 vers le CDN
Test-NetConnection download.windowsupdate.com -Port 443
# Tester une requête simple vers Microsoft Download
Invoke-WebRequest [https://download.microsoft.com](https://download.microsoft.com) -UseBasicParsing
# Déclencher une détection (Windows 10/Server 2016+)
UsoClient StartScan
# Récupérer un journal lisible sur le Bureau
Get-WindowsUpdateLog </code></pre>
<h3>Services & dépendances à vérifier</h3>
<table>
<thead>
<tr>
<th>Service</th>
<th>Nom</th>
<th>Rôle</th>
<th>Doit être</th>
</tr>
</thead>
<tbody>
<tr>
<td>Windows Update</td>
<td>wuauserv</td>
<td>Détection & orchestration</td>
<td>En cours d’exécution</td>
</tr>
<tr>
<td>BITS</td>
<td>bits</td>
<td>Téléchargements en arrière‑plan</td>
<td>En cours d’exécution</td>
</tr>
<tr>
<td>Delivery Optimization</td>
<td>DoSvc</td>
<td>P2P LAN (si activé)</td>
<td>Selon stratégie</td>
</tr>
<tr>
<td>Cryptographic Services</td>
<td>cryptsvc</td>
<td>Catalogues/Signatures</td>
<td>En cours d’exécution</td>
</tr>
</tbody>
</table>
<h3>Journaux utiles</h3>
<ul>
<li><code>C:\Windows\WindowsUpdate.log</code> (généré par <code>Get-WindowsUpdateLog</code>).</li>
<li>Journaux d’événements :
<ul>
<li><code>Applications and Services Logs → Microsoft → Windows → WindowsUpdateClient → Operational</code></li>
<li><code>Applications and Services Logs → Microsoft → Windows → BITS‑Client → Operational</code></li>
<li><code>Applications and Services Logs → Microsoft → Windows → DeliveryOptimization → Operational</code></li>
</ul>
</li>
</ul>
<h2>Erreurs fréquentes & pistes</h2>
<ul>
<li><strong>Erreurs proxy (407/502/504)</strong> : vérifier l’exemption d’inspection TLS, l’authentification (compte <code>LocalSystem</code> n’a pas de creds utilisateur) et la configuration WinHTTP.</li>
<li><strong>Timeouts CDN</strong> : augmenter les limites de taille et de temps proxy pour de gros fichiers ; contrôler les pertes MTU/fragmentation.</li>
<li><strong>Certificats</strong> : s’assurer que les autorités racines Microsoft et les algorithmes modernes sont disponibles (TLS 1.2+ sur versions prises en charge).</li>
<li><strong>DNS filtré</strong> : ne pas rediriger les FQDN Windows/Microsoft Update vers des miroirs non officiels.</li>
<li><strong>Pas d’accès Internet</strong> : en environnement fermé, basculer vers WSUS ou packages offline.</li>
</ul>
<h2>Contrôles de sécurité recommandés</h2>
<ul>
<li><strong>Sortie HTTP/HTTPS bornée</strong> : si votre pare‑feu sait résoudre les FQDN, limitez l’accès sortant aux domaines listés et aux <em>processus/services</em> concernés (<code>svchost.exe</code> / <code>wuauserv</code> / <code>bits</code>).</li>
<li><strong>Pas d’exposition entrante</strong> : sauf pour <em>Delivery Optimization</em> (TCP 7680) limité au LAN si activé.</li>
<li><strong>Journaux</strong> : journalisez les connexions sortantes <em>par service</em> pour faciliter la preuve d’audit.</li>
<li><strong>Mise à jour des règles</strong> : révisez périodiquement la liste FQDN (évolution côté Microsoft), idéalement via objets de politique centralisés.</li>
</ul>
<h2>FAQ express</h2>
<h3>Faut‑il autoriser d’autres ports que 80/443 ?</h3>
<p>Non pour Windows Update standard (WU/MU). Des exceptions existent uniquement si vous activez des fonctionnalités spécifiques comme le P2P LAN de Delivery Optimization (<strong>TCP 7680 entrant</strong>).</p>
<h3>Dois‑je autoriser des IP fixes ?</h3>
<p>Non, déconseillé. Les CDN changent. Utilisez des <strong>FQDN</strong>. Si votre pare‑feu ne sait pas résoudre des FQDN pour des règles sortantes, maintenez dynamiquement des listes d’IP via résolutions DNS périodiques — avec les limites que cela implique.</p>
<h3>Microsoft Update vs Windows Update, c’est quoi la différence ?</h3>
<p>Windows Update (WU) couvre le noyau Windows. Microsoft Update (MU) étend aux produits Microsoft supplémentaires (Office, SQL, Visual Studio Build Tools, etc.). Dans la pratique, les <strong>FQDN à autoriser sont identiques</strong> pour le catalogue et les contenus.</p>
<h3>Et si j’utilise un CASB/SSL inspection ?</h3>
<p>Exemptez les domaines de Windows/Microsoft Update pour éviter les ruptures de signature des packages et de la chaîne de confiance. À défaut, basculez ces flux en pass‑through.</p>
<h2>Procédure « pas à pas » (mise en conformité rapide)</h2>
<ol>
<li><strong>Définir la politique</strong> : WU direct, WU + P2P, ou WSUS.</li>
<li><strong>Créer les règles egress</strong> :
<ul>
<li>Autoriser TCP 80/443 vers les FQDN listés, attachés aux services <code>wuauserv</code> et <code>bits</code>.</li>
<li>Si P2P, autoriser TCP 7680 <em>entrant</em> au périmètre LAN (et seulement LAN).</li>
</ul>
</li>
<li><strong>Configurer WinHTTP</strong> (si proxy).</li>
<li><strong>Déployer les GPO</strong> (WU/DO/WSUS selon le modèle).</li>
<li><strong>Tester</strong> :
<ul>
<li><code>Test-NetConnection</code> vers <code>download.windowsupdate.com</code> (443).</li>
<li><code>Invoke-WebRequest</code> vers <code>https://download.microsoft.com</code>.</li>
<li><code>UsoClient StartScan</code> puis lecture des journaux.</li>
</ul>
</li>
<li><strong>Surveiller</strong> : corréler journaux pare‑feu/proxy et journaux Windows Update/BITS.</li>
</ol>
<h2>Modèles prêts à l’emploi</h2>
<h3>GPO — activer Microsoft Update (machines autonomes)</h3>
<pre><code>Computer Configuration → Administrative Templates → Windows Components → Windows Update
- Allow signed updates from an intranet Microsoft update service location : Disabled
- Do not connect to any Windows Update Internet locations : Disabled (si pas de WSUS)
- Configure Automatic Updates : Enabled (mode adapté à vos contraintes de redémarrage)
</code></pre>
<h3>GPO — Delivery Optimization (P2P local uniquement)</h3>
<pre><code>Computer Configuration → Administrative Templates → Windows Components → Delivery Optimization
- Download Mode : LAN (1) ou Group (2) avec GroupID défini
- Maximum Download/Upload Bandwidth : selon créneaux
- Cache Server Hostname : si vous utilisez un cache DO dédié
</code></pre>
<h3>GPO — Clients WSUS</h3>
<pre><code>Computer Configuration → Administrative Templates → Windows Components → Windows Update
- Specify intranet Microsoft update service location : https://wsus.mondomaine.local:8531
- Configure Automatic Updates : Enabled
- No auto-restart with logged on users : Enabled (selon politique)
</code></pre>
<h2>Checklist de validation</h2>
<ul>
<li>TCP 80/443 sortant autorisés vers les FQDN WU/MU (services <code>wuauserv</code> et <code>bits</code>).</li>
<li>Proxy WinHTTP configuré et testé (<code>netsh winhttp show proxy</code>).</li>
<li>P2P désactivé <em>ou</em> TCP 7680 entrant limité au LAN avec surveillance.</li>
<li>GPO en place (WU/WSUS/DO) et appliquées (<code>gpresult /h</code>).</li>
<li>Détection lancée (<code>UsoClient StartScan</code>), journaux propres.</li>
<li>Surveillance des erreurs (Event Logs, codes WU) et alertes proxy/pare‑feu.</li>
</ul>
<h2>Annexe : scripts d’aide</h2>
<h3>Test complet de prérequis WU</h3>
<pre><code class="language-powershell">$targets = @(
"windowsupdate.microsoft.com",
"download.windowsupdate.com",
"download.microsoft.com",
"wustat.windows.com"
)
$ports = 443,80
$result = foreach ($t in $targets) {
foreach ($p in $ports) {
$r = Test-NetConnection -ComputerName $t -Port $p -WarningAction SilentlyContinue
[PSCustomObject]@{
Host = $t
Port = $p
Reachable = $r.TcpTestSucceeded
RemoteAddress = $r.RemoteAddress
Notes = if ($r.TcpTestSucceeded) { "OK" } else { $r.PingSucceeded ? "Port bloqué" : "DNS/route/port" }
}
}
}
$result | Format-Table -Auto
</code></pre>
<h3>Déclenchement + collecte rapide</h3>
<pre><code class="language-powershell">Write-Host "Déclenchement de la détection..." -ForegroundColor Cyan
try { Start-Process -FilePath "$env:SystemRoot\System32\UsoClient.exe" -ArgumentList "StartScan" -WindowStyle Hidden } catch {}
Start-Sleep -Seconds 20
\$log = Join-Path \$env\:USERPROFILE "Desktop\WindowsUpdate.log"
Get-WindowsUpdateLog -LogPath \$log
Write-Host "Journal généré : \$log" </code></pre>
<h2>Points d’attention par version de Windows Server</h2>
<ul>
<li><strong>Windows Server 2012 R2</strong> : assurez l’activation de TLS 1.2 côté client si politique de durcissement (schannel). BITS/WinHTTP doivent parler TLS 1.2.</li>
<li><strong>Windows Server 2016/2019</strong> : Delivery Optimization disponible ; contrôler sa configuration par GPO selon vos contraintes.</li>
<li><strong>Windows Server 2022+</strong> : durcissement TLS par défaut plus strict ; pensez aux exceptions proxy/inspection.</li>
</ul>
<h2>Rappel — liste à jour et Service Tags</h2>
<p>La <strong>liste de domaines peut évoluer</strong>. Dans les environnements très restrictifs, planifiez une <em>revue périodique</em> de vos règles selon la documentation Microsoft la plus récente et/ou utilisez, lorsque la technologie le permet, des mécanismes de catégorisation natifs (ex. <em>Service Tags</em> dédiés à Windows Update) pour réduire la maintenance d’allowlist.</p>
<hr />
<h2>Résumé exécutable</h2>
<ul>
<li><strong>Autorisez</strong> en sortie : <code>*.windowsupdate.microsoft.com</code>, <code>*.update.microsoft.com</code>, <code>*.windowsupdate.com</code>, <code>download.windowsupdate.com</code>, <code>*.download.windowsupdate.com</code>, <code>download.microsoft.com</code>, <code>wustat.windows.com</code>, <code>ntservicepack.microsoft.com</code>.</li>
<li><strong>Ports</strong> : TCP 80 et 443 en sortie (et <strong>TCP 7680 entrant</strong> si P2P LAN activé).</li>
<li><strong>Proxy</strong> : configurez <strong>WinHTTP</strong>, exemptez ces FQDN de l’inspection TLS.</li>
<li><strong>WSUS</strong> : les clients ne sortent pas sur Internet ; seul WSUS a besoin des FQDN WU.</li>
<li><strong>Tests</strong> : <code>Test-NetConnection</code>, <code>Invoke-WebRequest</code>, <code>UsoClient StartScan</code>, <code>Get-WindowsUpdateLog</code>.</li>
</ul>
<hr />
<h2>Contenu fourni (rappel)</h2>
<h3>URL (FQDN) à autoriser en sortie</h3>
<p><em>(les jokers <code>*</code> couvrent tous les sous‑domaines)</em></p>
<ul>
<li><code>http://windowsupdate.microsoft.com</code></li>
<li><code>http://*.windowsupdate.microsoft.com</code></li>
<li><code>https://*.windowsupdate.microsoft.com</code></li>
<li><code>http://*.update.microsoft.com</code></li>
<li><code>https://*.update.microsoft.com</code></li>
<li><code>http://*.windowsupdate.com</code></li>
<li><code>http://download.windowsupdate.com</code></li>
<li><code>http://*.download.windowsupdate.com</code></li>
<li><code>http://download.microsoft.com</code></li>
<li><code>http://wustat.windows.com</code></li>
<li><code>http://ntservicepack.microsoft.com</code> <em>(hérité / anciens OS)</em></li>
</ul>
<h3>Ports</h3>
<ul>
<li><strong>TCP 80 (HTTP)</strong> et <strong>TCP 443 (HTTPS)</strong> en <strong>sortie</strong> depuis le serveur vers Internet.</li>
</ul>
<blockquote>
<p>En règle générale, aucune <strong>règle entrante</strong> n’est requise pour Windows Update standard.</p>
</blockquote>
<h3>Informations complémentaires utiles</h3>
<ol>
<li><strong>Éviter l’allowlist d’adresses IP</strong> : les adresses changent fréquemment (CDN). Basez‑vous sur les <strong>FQDN</strong> ci‑dessus.</li>
<li><strong>Proxy & inspection TLS</strong> : si vous avez un proxy avec inspection TLS, <strong>exemptez</strong> les domaines Windows Update (et, plus largement, Microsoft Update) pour éviter les erreurs de validation de signature.</li>
<li><strong>Delivery Optimization (pair‑à‑pair)</strong> : si vous utilisez le <strong>peer‑to‑peer</strong> (Delivery Optimization) entre machines, prévoir <strong>TCP 7680 entrant</strong> sur les pairs du réseau local.</li>
<li><strong>WSUS (si utilisé)</strong>
<ul>
<li>Les <strong>clients</strong> parlent à <strong>WSUS</strong> uniquement (pas besoin d’Internet).</li>
<li>Le <strong>serveur WSUS</strong> doit, lui, accéder aux domaines ci‑dessus.</li>
<li>Ports par défaut côté clients → WSUS : <strong>8530 (HTTP)</strong> / <strong>8531 (HTTPS)</strong>.</li>
</ul>
</li>
<li><strong>Configuration du proxy au niveau système</strong> : le service Windows Update s’exécute en <strong>LocalSystem</strong> : configurez WinHTTP si un proxy est requis :
<pre><code class="language-bat">netsh winhttp set proxy SERVER:PORT
rem ou
netsh winhttp import proxy source=ie
</code></pre>
</li>
<li><strong>Tests rapides de connectivité</strong>
<pre><code class="language-powershell">Test-NetConnection download.windowsupdate.com -Port 443
Invoke-WebRequest https://download.microsoft.com -UseBasicParsing
Déclencher/diagnostiquer une détection
- Déclenchement (Win10/Server 2016+) :
UsoClient StartScan
- Journaux :
Get-WindowsUpdateLog
(génère un log lisible sur le Bureau).
Remarque : la liste de domaines peut évoluer. Pour des environnements stricts, validez périodiquement vos règles avec la documentation la plus récente et/ou les Service Tags « Windows Update » si vous utilisez des firewalls Azure.
En appliquant ces recommandations, vous réduisez les pannes de mise à jour, limitez l’exposition réseau, et rendez vos audits plus fluides — sans ouvrir plus que nécessaire.