Обеспечение своевременной установки обновлений в рабочих группах. Настройка клиентов WSUS с помощью групповых политик Причины отключения автоматического обновления

Всем привет сегодня заметка больше для себя, а именно список серверов Обновлений Windows Update. Для чего это может пригодиться, ну например если вы получили ошибку Обновление не найдено при установке WSUS роли, или наоборот по какой то причине хотите их забанить, для экономии трафика, если у вас нет WSUS, так как не все обновления Windows хорошие и особенно в современных ее версиях, думаю нет смысла напоминать про ошибку , хотя этот список можно продолжать очень долго. Причина не важна, главное чтобы знать, что такое есть и с этим можно как то работать. Ниже я вам покажу методы запрета адресов сервера обновлений microsoft, как универсальный, подходящий для отдельного компьютера, так и для централизованного управления в рамках предприятия.

Почему не устанавливаются обновления Windows

Вот скриншот ошибки если у вас недоступен адрес сервера обновлений microsoft. Как видите ошибка мало информативна. Ее я получаю на сервере несущим роль WSUS, кто не помнит, что это такое, то это локальный центр обновлений для предприятий, для экономии трафика, и вот тут как раз не устанавливаются обновления Windows по причине, не доступности серверов Microsoft.

Что делать если не ставятся обновления Windows

  • Первым делом вы должны проверить есть ли у вас интернет, так как его наличие обязательно для большинства людей, если конечно у вас не домен Active Directory и вы их скачиваете с вашего WSUS
  • Далее если интернет есть, смотрим код ошибки, так как именно по нему нужно уже искать информацию о решении проблемы (из последних проблем могу привести пример, как решается Ошибка 0x80070422 или Ошибка c1900101), но список можно так же вести очень долго.
  • Проверяем у себя на прокси сервере, нет ли запрета до вот таких адресов сервера обновлений microsoft.

Сам список серверов обновлений microsoft

  1. http://windowsupdate.microsoft.com
  2. http://*.windowsupdate.microsoft.com
  3. https://*.windowsupdate.microsoft.com
  4. http://crl.microsoft.com/pki/crl/products/MicProSecSerCA_2007-12-04.crl
  5. http://*.update.microsoft.com
  6. https://*.update.microsoft.com
  7. http://*.windowsupdate.com
  8. https://activation.sls.microsoft.com/
  9. http://download.windowsupdate.com
  10. http://download.microsoft.com
  11. http://*.download.windowsupdate.com
  12. http://wustat.windows.com
  13. http://ntservicepack.microsoft.com
  14. https://go.microsoft.com/
  15. http://go.microsoft.com/
  16. https://login.live.com
  17. https://validation.sls.microsoft.com/
  18. https://activation-v2.sls.microsoft.com/
  19. https://validation-v2.sls.microsoft.com/
  20. https://displaycatalog.mp.microsoft.com/
  21. https://licensing.mp.microsoft.com/
  22. https://purchase.mp.microsoft.com/
  23. https://displaycatalog.md.mp.microsoft.com/
  24. https://licensing.md.mp.microsoft.com/
  25. https://purchase.md.mp.microsoft.com/

С развитием интернета постоянное обновление операционной системы стало обычным явлением. Теперь разработчики могут исправлять и дорабатывать систему на протяжении всего срока её поддержки. Но частые обновления Windows 10 - это не всегда удобно. Именно поэтому хорошо бы уметь отключать их.

Причины отключения автоматического обновления

Причины могут быть самыми разными, причём только вы сами можете решить, насколько вам необходимо отключить обновления. При этом стоит учитывать, что вместе с улучшениями тех или иных возможностей поставляются важные исправления уязвимостей системы. И всё же ситуации, когда самостоятельные обновления стоит отключить, возникают довольно часто:

  • платный интернет - порой обновление является весьма большим и его загрузка может дорого обойтись, если вы платите за трафик. В таком случае лучше отложить загрузку и скачать позже при других условиях;
  • недостаток времени - после загрузки обновление начнёт устанавливаться в процессе выключения компьютера. Это может быть неудобно, если вам требуется быстро завершить работу, например, на ноутбуке. Но ещё хуже тут то, что рано или поздно Windows 10 потребует перезапустить компьютер, а если вы не сделаете этого, то через какое-то время перезапуск пройдёт принудительно. Всё это отвлекает и мешает работать;
  • безопасность - хоть сами по себе обновления зачастую содержат важные правки системы, никто и никогда не может предусмотреть всего. В результате одни обновления могут открыть вашу систему для вирусной атаки, а другие просто нарушат её работу сразу после установки. Разумный подход в этой ситуации - обновляться через некоторое время после выхода очередной версии, предварительно изучив отзывы.

Отключение автоматического обновления Windows 10

Способов, как выключить обновление Windows 10, имеется немало. Некоторые из них весьма просты для пользователя, другие сложнее, а третьи требуют установки сторонних программ.

Отключение через центр обновлений

Использование центра обновления для отключения - не лучший вариант, хоть его и предлагают в качестве официального решения разработчики из Microsoft. Вы действительно можете выключить автоматическую загрузку обновлений через их настройки. Проблема тут заключается в том, что это решение так или иначе будет временным. Релиз крупного обновления Windows 10 изменит эту настройку и вернёт обновления системы. Но мы всё равно изучим процесс отключения:

После этих изменений незначительные обновления больше не будут устанавливаться. Но это решение не поможет вам навсегда избавиться от загрузки обновлений.

Эта статья объединяет известные мне способы починки агента WSUS.

1. Первый скрипт самый простой, и, на самом деле, даже не для лечения используется, а для того, чтобы принудительно запустить проверку на обновление, ну и, заодно, чистит папку, в которой накапливаются дистрибутивы уже установленных обновлений:

wsus_detect_manual.cmd

net stop wuauserv && net stop bits && net stop cryptsvc

net start wuauserv && net start bits && net start cryptsvc

wuauclt.exe /detectnow exit

2. Второй скрипт нужен для того, чтобы “оживить” неработающий сервис WSUS. В нем идет чистка от старых обновлений, после чего папки SoftwareDistribution и Catroot2 переименовываются, что при перезапуске сервиса приведет к их пересозданию. Затем системные dll библиотеки перерегистрируются.

fix_wsus_service.cmd

net stop bits
net stop wuauserv
net stop cryptsvc

del /f /s /q %windir%\SoftwareDistribution\download\*.*

ren %systemroot%\System32\Catroot2 Catroot2.old
ren %systemroot%\SoftwareDistribution SoftwareDistribution.old

REM del /f /s /q %windir%\SoftwareDistribution\*.*

del /f /s /q %windir%\windowsupdate.log

%windir%\system32\regsvr32.exe /U /s %windir%\system32\vbscript.dll
%windir%\system32\regsvr32.exe /U /s %windir%\system32\mshtml.dll
%windir%\system32\regsvr32.exe /U /s %windir%\system32\msjava.dll
%windir%\system32\regsvr32.exe /U /s %windir%\system32\msxml.dll
%windir%\system32\regsvr32.exe /U /s %windir%\system32\actxprxy.dll
%windir%\system32\regsvr32.exe /U /s %windir%\system32\shdocvw.dll
%windir%\system32\regsvr32.exe /U /s %windir%\system32\wintrust.dll
%windir%\system32\regsvr32.exe /U /s %windir%\system32\initpki.dll
%windir%\system32\regsvr32.exe /U /s %windir%\system32\dssenh.dll
%windir%\system32\regsvr32.exe /U /s %windir%\system32\rsaenh.dll
%windir%\system32\regsvr32.exe /U /s %windir%\system32\gpkcsp.dll
%windir%\system32\regsvr32.exe /U /s %windir%\system32\sccbase.dll
%windir%\system32\regsvr32.exe /U /s %windir%\system32\slbcsp.dll
%windir%\system32\regsvr32.exe /U /s %windir%\system32\cryptdlg.dll
%windir%\system32\regsvr32.exe /U /s %windir%\system32\Urlmon.dll
%windir%\system32\regsvr32.exe /U /s %windir%\system32\Oleaut32.dll
%windir%\system32\regsvr32.exe /U /s %windir%\system32\msxml2.dll
%windir%\system32\regsvr32.exe /U /s %windir%\system32\Browseui.dll
%windir%\system32\regsvr32.exe /U /s %windir%\system32\shell32.dll
%windir%\system32\regsvr32.exe /U /s %windir%\system32\Mssip32.dll
%windir%\system32\regsvr32.exe /U /s %windir%\system32\atl.dll
%windir%\system32\regsvr32.exe /U /s %windir%\system32\jscript.dll
%windir%\system32\regsvr32.exe /U /s %windir%\system32\msxml3.dll
%windir%\system32\regsvr32.exe /U /s %windir%\system32\softpub.dll
%windir%\system32\regsvr32.exe /U /s %windir%\system32\wuapi.dll
%windir%\system32\regsvr32.exe /U /s %windir%\system32\wuaueng.dll
%windir%\system32\regsvr32.exe /U /s %windir%\system32\wuaueng1.dll
%windir%\system32\regsvr32.exe /U /s %windir%\system32\wucltui.dll
%windir%\system32\regsvr32.exe /U /s %windir%\system32\wups.dll
%windir%\system32\regsvr32.exe /U /s %windir%\system32\wups2.dll
%windir%\system32\regsvr32.exe /U /s %windir%\system32\wuweb.dll

%windir%\system32\regsvr32.exe /s %windir%\system32\vbscript.dll
%windir%\system32\regsvr32.exe /s %windir%\system32\mshtml.dll
%windir%\system32\regsvr32.exe /s %windir%\system32\msjava.dll
%windir%\system32\regsvr32.exe /s %windir%\system32\msxml.dll
%windir%\system32\regsvr32.exe /s %windir%\system32\actxprxy.dll
%windir%\system32\regsvr32.exe /s %windir%\system32\shdocvw.dll
%windir%\system32\regsvr32.exe /s %windir%\system32\wintrust.dll
%windir%\system32\regsvr32.exe /s %windir%\system32\initpki.dll
%windir%\system32\regsvr32.exe /s %windir%\system32\dssenh.dll
%windir%\system32\regsvr32.exe /s %windir%\system32\rsaenh.dll
%windir%\system32\regsvr32.exe /s %windir%\system32\gpkcsp.dll
%windir%\system32\regsvr32.exe /s %windir%\system32\sccbase.dll
%windir%\system32\regsvr32.exe /s %windir%\system32\slbcsp.dll
%windir%\system32\regsvr32.exe /s %windir%\system32\cryptdlg.dll
%windir%\system32\regsvr32.exe /s %windir%\system32\Urlmon.dll
%windir%\system32\regsvr32.exe /s %windir%\system32\Oleaut32.dll
%windir%\system32\regsvr32.exe /s %windir%\system32\msxml2.dll
%windir%\system32\regsvr32.exe /s %windir%\system32\Browseui.dll
%windir%\system32\regsvr32.exe /s %windir%\system32\shell32.dll
%windir%\system32\regsvr32.exe /s %windir%\system32\Mssip32.dll
%windir%\system32\regsvr32.exe /s %windir%\system32\atl.dll
%windir%\system32\regsvr32.exe /s %windir%\system32\jscript.dll
%windir%\system32\regsvr32.exe /s %windir%\system32\msxml3.dll
%windir%\system32\regsvr32.exe /s %windir%\system32\softpub.dll
%windir%\system32\regsvr32.exe /s %windir%\system32\wuapi.dll
%windir%\system32\regsvr32.exe /s %windir%\system32\wuaueng.dll
%windir%\system32\regsvr32.exe /s %windir%\system32\wuaueng1.dll
%windir%\system32\regsvr32.exe /s %windir%\system32\wucltui.dll
%windir%\system32\regsvr32.exe /s %windir%\system32\wups.dll
%windir%\system32\regsvr32.exe /s %windir%\system32\wups2.dll
%windir%\system32\regsvr32.exe /s %windir%\system32\wuweb.dll

net start bits
net start wuauserv
net start cryptsvc

wuauclt /detectnow

exit

3. Этот скрипт применяется в тех случаях, когда компьютер был недавно клонирован, или в тех, когда регистрации в WSUS у компьютера так и не произошло. Он отличается от предыдущего только предпоследней строчкой, в которой производится обнуление авторизации с перегенерацией идентификатора. Приведу только эту строчку:

wsus_resetaut_detect_manual.cmd

wuauclt.exe /resetauthorization /detectnow

AU_Clean_SID.cmd

@echo on
net stop wuauserv
REG DELETE "HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\WindowsUpdate" /v AccountDomainSid /f
REG DELETE "HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\WindowsUpdate" /v PingID /f
REG DELETE "HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\WindowsUpdate" /v SusClientId /f
net start wuauserv
wuauclt /resetauthorization /detectnow

5. Иногда, для того, чтобы все заработало нужно переустановить агента WSUS . Вначале нужно скачать latest Windows Update Agent , ну а затем установить соответствующую редакцию

для x32 версий Windows

windowsupdateagent30-x86.exe /wuforce

для x64 версий Windows

windowsupdateagent30-x64.exe /wuforce

Если вы счастливый обладатель Itanium – догадаетесь сами:-)

После установки агента нужно обязательно перезагрузиться.

6. Для “лечения” ошибок 0x80070005, т.е. ошибок доступа может пригодиться нижеприведенный скрипт. Он восстанавливает доступы для администраторов и системы к реестру и системным папкам.

Для выполнения этого скрипта понадобится майкрософтовская утилита subinacl.exe. Она входит в resource kit для Windows Server 2003, но пользоваться той версией, что входит туда не стоит, т.к. там неприятные ошибки. Следует скачать subinacl.exe версии 5.2.3790.1180 .

Restore_registry_and_system_permission.cmd

@echo off
REM Применять при ошибках 0x80070005 Windows Update
subinacl /subkeyreg HKEY_LOCAL_MACHINE /grant=administrators=f
subinacl /subkeyreg HKEY_CURRENT_USER /grant=administrators=f
subinacl /subkeyreg HKEY_CLASSES_ROOT /grant=administrators=f
subinacl /subdirectories %SystemDrive% /grant=administrators=f
subinacl /subkeyreg HKEY_LOCAL_MACHINE /grant=system=f
subinacl /subkeyreg HKEY_CURRENT_USER /grant=system=f
subinacl /subkeyreg HKEY_CLASSES_ROOT /grant=system=f
subinacl /subdirectories %SystemDrive% /grant=system=f

Все эти скрипты можно выполнять практически автоматически, в случае возникновения проблем. Если в результате проблема таки не решена, то приходится разбираться уже плотнее. И тут нам пригодится тот самый windowsupdate.log, который лежит в корне папки Windows. Если компьютер проблемный, то файл этот большого размера. Для простоты, желательно его удалить перед тем как запускать скрипты. Почти во всех скриптах предусмотрена команда его удаления, но не все так просто. Не смотря на остановку сервиса wuauserv, обычно, его продолжают держать открытые IE и т.п. Поэтому, есть хитрый способ. Запускаю

notepad.exe %windir%\windowsupdate.log

Выделяю весь текст, удаляю его и сохраняю вместо старого файла (не забыть в диалоге сохранения поменять тип файла на *.*, а то по умолчанию – *.txt)

Стоит заметить, что есть случаи, когда заставить клиента обновляться со wsus так и не получается. У меня есть прецеденты с парочкой Windows Server 2003 R2, которые мне побороть так и не удалось. Поэтому я их обновляю через интернет:-)

Свежие операционные системы типа Windows 7, Windows 2008 иногда “заводятся” с трудом. Для таких случаев, эмпирическим путем, был найден алгоритм типа:
1. Обновляемся первый раз с сайта microsoft с обновлением агента
2. Потом обновляем агента уже локально
3. А потом все начинает работать

Надеюсь, что плоды наших трудов кому-нибудь помогут.

Для простоты, выкладываю все эти скрипты в уже готовом виде: