web-dev-qa-db-fra.com

Windows Server 2016 ne se met pas à jour via WSUS

Nous avons un serveur WSUS fonctionnant sur Windows Server 2016. WSUS détecte et envoie des mises à jour à tous les systèmes, y compris les serveurs 2012. WSUS détectera mais n'enverra pas de mises à jour à aucun des serveurs 2016.

Il affiche 0 mises à jour nécessaires, toutes les mises à jour indiquent "installé ou non applicable". Ce sont de nouvelles installations de serveur, elles viennent d'être installées directement à partir d'une image disque créée en novembre de l'année dernière.

Si j'exécute un rapport sur l'un des serveurs et que je règle le filtre du produit sur "Windows Server 2016", 31 mises à jour sont installées ou ne s'appliquent pas.

Les 31 mises à jour sont définies pour l'approbation "Installer". Le statut de chacun d'eux est "Non applicable". Ce sont toutes des mises à jour critiques et des mises à jour de sécurité.

J'ai parcouru manuellement les mises à jour installées sur l'un des serveurs en question et vérifié que ces mises à jour "non applicables" ne sont pas installées.

Tous ces serveurs sont de nouvelles installations et ils sont dans une unité d'organisation qui les empêche de se redémarrer après une installation de mise à jour et je suis le seul à les redémarrer manuellement. Depuis qu'ils ont été installés, ils ont obtenu 0 mises à jour. J'ai du mal à croire qu'il y a 0 mises à jour applicables pour une nouvelle installation de Windows Server 2016.

Je me suis assuré que BITS et les services Windows Update sont en cours d'exécution. J'ai exécuté wuauclt/reportnow et wuauclt/detectnow. Il ne semble rien faire. J'ai exécuté l'assistant de nettoyage pour refuser et supprimer toutes les mises à jour remplacées. J'ai vérifié que les machines sont dans les bons groupes dans AD et dans WSUS. J'ai vérifié dans le registre sur les machines concernées qu'elles pointent vers le serveur WSUS et il peut être envoyé une requête ping. Le client peut recevoir une requête ping depuis le serveur WSUS. Il n'y a pas de pare-feu ou de bloqueur de ports ou quelque chose comme ça. J'ai créé une toute nouvelle installation de serveur 2016 avec absolument rien installé dessus; pas de rôles, pas de pare-feu pas de scanner de virus non rien, juste un serveur vide et a essayé de le forcer à se connecter. WSUS détecte que le serveur existe mais c'est à peu près tout.

Tous les autres systèmes d'exploitation fonctionnent correctement, seuls les serveurs 2016 ont ce problème. C'est définitivement un problème de serveur WSUS; si je vais dans le registre et le change en arrière au serveur de Microsofts il trouve des mises à jour.

Quelqu'un a-t-il une idée de ce qui pourrait être à l'origine du problème et comment le résoudre?

Merci.

EDIT - UPDATE: J'ai toujours des problèmes. J'ai essayé d'installer un 2ème serveur WSUS 2016, même problème, uniquement avec les serveurs 2016.

J'ai même essayé d'installer le serveur 2019 (bien que je ne pense pas qu'il y ait de différences ...). Aucune différence.

J'ai même exclu la stratégie de groupe. J'ai mis un serveur de test 2016 tout seul dans une unité d'organisation avec héritage bloqué. Le seul GPO que j'ai lié était le paramètre du serveur WSUS qui pointait vers le serveur 2019. La machine ne reçoit aucune autre stratégie. Il n'y a même pas de scanner de virus ou de pare-feu configuré sur le test Serveur 2016, ils sont même sur le même segment.

Nous convertissons de plus en plus de nos serveurs de 2012 à 2016 ce qui signifie que c'est de plus en plus un problème car AUCUN d'entre eux ne recevra de mises à jour de WSUS ... Autant que je ne veux pas, je vais avoir appeler Microsoft ...

10
Redwizard000

Ok, après avoir passé 3 semaines avec le service d'assistance technique de Microsoft, nous avons résolu le problème.

Le problème est que Dual Scan essaie de se connecter à Windows Update (en ligne) et échoue. En cas d'échec, le système arrête simplement d'essayer et refuse de se connecter à WSUS.

Le problème supplémentaire est que le support d'installation du serveur contient un bogue qui empêche la double analyse de changer. Il ignore simplement la stratégie et conserve la source de mise à jour par défaut Windows Update.

Voici ce que vous devez faire pour y remédier: Exécutez les commandes suivantes dans Powershell sur le serveur incriminé

$MUSM = New-Object -ComObject "Microsoft.Update.ServiceManager"
$MUSM.Services | select Name, IsDefaultAUService

Vous obtiendrez quelque chose comme ceci:

Windows Update Standalone Installer - False   
Windows Server Update Service - False   
Windows Update - True

S'il indique "Windows Update - True", c'est votre source par défaut, quel que soit votre GPO dit ...

La première chose que vous devez faire est de vous assurer que les correctifs suivants sont installés sur votre serveur.

kb4103720 et kb4462928

Vous en avez besoin DES DEUX. Ils sont tous deux énormes, ils prennent tous deux une éternité et un jour à installer et ils nécessitent tous deux un redémarrage du serveur.

Ces Ko corrigent le problème de double analyse afin que le serveur réponde au GPO lui indiquant la source par défaut à utiliser.

Vous devez maintenant configurer la stratégie de groupe pour indiquer au serveur d'utiliser uniquement le serveur WSUS. Pour Microsoft, ce sont les paramètres requis (je suis dubitatif sur certains d'entre eux, mais je n'ai pas testé chacun d'eux ... je suis juste content que la chose fonctionne enfin)

Configuration ordinateur> Stratégies> Modèles d'administration> Système> Installation de périphériques

Spécifiez le serveur de recherche pour les emplacements source des pilotes de périphériques

Set to "Enabled"  
Select search order: "Do not search Windows Update"

Spécifiez le serveur de recherche pour les mises à jour du pilote de périphérique

Set to "Enabled"  
Select Update Server: "Search Managed Server"

Configuration ordinateur> Stratégies> Modèles d'administration> Système> Gestion des communications Internet> Paramètres de communication Internet

Désactiver l'accès à toutes les fonctionnalités de Windows Update (Dans Microsoftspeak, cela signifie que leur serveur en ligne, et non pas "faire en sorte qu'il ne puisse pas obtenir de mises à jour")

Set to "Enabled"

Désactivez l'accès à la boutique

Set to "Enabled"

Configuration ordinateur> Stratégies> Modèles d'administration> Composants Windows> Windows Update

Ne pas autoriser les politiques de report de mise à jour à provoquer des analyses sur Windows Update

Set to "Enabled"

Pas de redémarrage automatique avec les utilisateurs connectés pour les installations de mises à jour automatiques planifiées

Set to "Enabled"

Spécifiez l'emplacement du service de mise à jour intranet Microsoft

Set to "Enabled"  
Set the intranet update service for detecting updates: "http://[YOUR SERVER]:8530"  
Set the intranet statistics server:"http://[YOUR SERVER]:8530"  
Set the alternate download server: "http://[YOUR SERVER]:8530"  
Uncheck the box Download files with no Url in the metadata if alternate download server is set

Déplacez vos serveurs dans une unité d'organisation avec cette GPO activée. J'ai créé une unité d'organisation distincte dans mon unité d'organisation Serveurs uniquement pour le serveur 2016 et y ai lié GPO).

Exécutez à nouveau les commandes PowerShell ci-dessus.

Il faut maintenant dire

 Name                                   IsDefaultAUService    
-------                                 --------------------------  
Windows Server Update Service              True  
Windows Update                             False

Si vous obtenez le "Service de mise à jour de Windows Server" True, cela devrait fonctionner!

J'espère que ça aidera quelqu'un d'autre. Cela a certainement été un problème frustrant ...

J'accepte les dons sous forme de factures non marquées, de lingots d'or et de scotch.

7
Redwizard000

Si vous scannez le Web, vous verrez toutes les choses que @ Redwizard000 a essayé d'être suggéré, il est donc clair que @ Redwizard000 a vraiment essayé de résoudre celui-ci (voir https://serverfault.com/a/940236/203726 = pour savoir comment @ Redwizard000 a finalement résolu le problème). Lisez la suite de mon expérience:

Dans mon cas, le serveur WSUS fonctionnait sur Windows Server 2012 R2, avait tous les correctifs, avait exécuté le script de nettoyage VB que vous voyez flottant, avait suivi le processus de nettoyage (qui prenait des heures), pouvait servir les mises à jour des machines Windows 10 mais les nouvelles machines clientes de Windows Server 2016 ne pouvaient pas récupérer les mises à jour de WSUS et ont donné des messages d'erreur 0x8024401c. La seule chose qui a aidé était sur le serveur WSUS: augmenter/supprimer certaines des limites de ressources du pool d'applications IIS (par exemple, longueur de file d'attente, intervalle de limitation, limite de mémoire privée, mais il y en a d'autres) pour le pool d'applications WSUS en tant que décrit dans https://serverfault.com/a/835941 et https://blogs.msdn.Microsoft.com/the_secure_infrastructure_guy/2015/09/02/windows-server-2012 -r2-wsus-issue-clients-cause-the-wsus-app-pool-to-devenir-unresponsive-with-http-503 / puis en redémarrant IIS. Il semble que la vérification des mises à jour ait nécessité environ 2 Go de mémoire du serveur IIS et ait pris environ 8 minutes. Après cela, le message d'erreur a disparu mais ...

..les machines Windows Server 2016 clientes seraient bloquées en téléchargeant 0% des mises à jour indéfiniment. Pour surmonter cela, j'ai dû télécharger manuellement une mise à jour cumulative récente (sur les machines clientes de Windows Server 2016) à partir de http://www.catalog.update.Microsoft.com/home.aspx (ou utiliser Les serveurs de mise à jour Windows de Microsoft temporairement pour récupérer une mise à jour cumulative) et installez-le avant de modifier les paramètres pour utiliser WSUS.

Mise à jour : il existe un article de support MS appelé " Windows Update bloqué à 0% sur Windows 10 ou Windows Server 2016 " qui parle sur la façon dont vous devez mettre à jour l'agent Windows Update sur les ordinateurs clients Windows 10/2016/2019 après la version RTM (10.0.14393.0) avant vous pouvez utiliser WSUS. Cela ressemble à ce qui était effectivement fait dans le paragraphe précédent.

4
Anon

J'ai eu un tel problème, 2016 jetterait l'erreur: 0x8024401c, Et dans WSUS afficherait 0% updated (not reported yet).

Pour résoudre ce problème, j'ai modifié les valeurs du pool d'applications WSUS dans IIS (Paramètres avancés) et tous les serveurs 2016.

Queue Length: 25000 from 1000
Limit Interval (minutes): 15 from 5
"Service Unavailable" Response: TcpLevel from HttpLevel

Ensuite, accédez à https://community.spiceworks.com/scripts/show/2998-adamj-clean-wsus et copiez collez le code comme indiqué.

  1. Nommez-le Clean-WSUS.ps1
  2. Installez le logiciel requis
  3. Exécutez .\Clean-WSUS.ps1 -FirstRun
  4. Enfin, .\Clean-WSUS.ps1 -DirtyDatabaseCheck

Ce gars mérite vraiment un don!

3
Vacheslav

Si vous avez cette configuration dans la stratégie de groupe, je vous suggère de vérifier la clé de registre [HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Windows\WindowsUpdate]. Effectuez une sauvegarde de la clé, supprimez-la et exécutez gpupdate /force pour le recréer.

Dans mon cas, après avoir comparé la sauvegarde et le nouvel enregistrement, j'ai trouvé une clé nommée "DisableWindowsUpdateAccess"=dword:00000000 qui était à l'origine de mon problème. Cette clé a été créée par un tiers.

0
Nixphoe

Même problème, même scénario. Décochez "Mises à niveau" des classifications pour les configurations de point de mise à jour logicielle de vos serveurs de site.

Une autre suggestion était de faire la ligne de commande

"c:\Program Files\Update Services\Tools \" "wsusutil.exe postinstall/service"

Mais je n'ai pas encore revu ce processus car j'attends plus d'explications de la part de MS.

0
Kevin

J'ai eu le même problème, voici comment je l'ai résolu.

  1. Dans la stratégie (que ce soit la stratégie de groupe ou la stratégie locale), activez la stratégie "Ne vous connectez à aucun emplacement Windows Update". Cela empêche le serveur de contacter Microsoft/Windows Update.
  2. Dans la stratégie, ajouté un autre serveur de mise à jour dans "Spécifier l'emplacement de mise à jour Microsoft" - il s'agissait du même serveur que le serveur de rapports et de mise à jour.
  3. Dans Windows Update - Options avancées - décochez la case "Différer les mises à jour des fonctionnalités"

Après avoir fait cela, j'ai pu patcher complètement le serveur via WSUS - Cela a été confirmé sur deux serveurs dans deux environnements différents. Il semble que le changement le plus important soit l'option de report des mises à jour non cochée, mais les autres pourraient également causer des problèmes de mise à jour en fonction de ce que j'ai lu sur le net.

0
Allen Howard

En fait, tout ce que vous devez faire est de mettre à jour la pile de maintenance. https://support.Microsoft.com/en-us/help/4485447/servicing-stack-update-for-windows-1 . Ne nécessite même pas de redémarrage. Une fois que vous avez fait cela, il commencera très bien à rapporter à WSUS.

0
Mark Borchert