none
WSUS через proxy (SQUID) RRS feed

  • Вопрос

  • Есть Windows 2008 Standard. На ней - WSUS 3.0 SP2. Выход в инет - через SQUID, для запросов к доменам .microsoft.com - доступ без авторизации. Всё работает со времён вот ЭТОЙ ТЕМЫ.

    Поставили сервер Windows 2012 Standard. На него поставили WSUS 3.0 SP2. Выход в инет тот же, с тем же параметрами. Этот сервер синхронизируется с сайтом microsoft.com нормально, показывает обновления. Я одобряю нужные, далее в консоли WSUS вижу, что WSUS хочет закачать 10 обновлений общим объёмом 6 Гиг. Но... не качает их. И, при этом, на squid'е не видно обращений за обновлениями (синхронизация есть, а обновления не качает).

    Естественно, на обоих серверах в БД прописано BitsDownloadPriorityForeground = 1.

    При этом, когда старый WSUS не качал обновления, я по bitsadmin /list /allusers видет задания за закачку. На 2012 теперь команда bitsadmin /list /allusers говорит, что заданий нет:

    C:\Program Files\Far Manager>bitsadmin /list /allusers
    
    BITSADMIN version 3.0 [ 7.6.9200 ]
    BITS administration utility.
    (C) Copyright 2000-2006 Microsoft Corp.
    
    BITSAdmin is deprecated and is not guaranteed to be available in future versions of Windows.
    Administrative tools for the BITS service are now provided by BITS PowerShell cmdlets.
    
    Listed 0 job(s).
    

    Как бы это полечить? Есть мысли?


    Сергей Панченко

    17 января 2013 г. 12:13

Ответы

  • Неожиданное решение было найдено в ЭТОЙ СТАТЬЕ:

    Заходим в "Параметры", в "Источник обновления и прокси-сервер" на закладке "Прокси-сервер" СНИМАЕМ галку "Использовать учетные данные пользователя для подключения к прокси-серверу". Всё, после этого начал качать обновления.

    Кстати, WinHTTP proxy я сбросил командой "netsh winhttp reset proxy". Работает и без этого.


    Сергей Панченко

    • Помечено в качестве ответа Daemon-GTC 18 января 2013 г. 5:47
    18 января 2013 г. 5:47

Все ответы

  • системный прокси прописан?

    netsh winhttp set proxy proxy-server="http=myproxy;https=sproxy:88" bypass-list="*.foo.com"


    Не забывайте отмечать поcты как ответы, а также помечать полезные сообщения!

    • Предложено в качестве ответа Mikas 17 января 2013 г. 21:42
    17 января 2013 г. 21:42
  • Нет, на обоих машинах ничего не прописано:

    C:\Program Files\Far Manager>netsh winhttp show proxy
    
    Текущие параметры WinHTTP прокси.
    
        Прямой доступ (без прокси-сервера).


    На проблемном WSUS попробовал установить, получил вот так:

    C:\Program Files\Far Manager>netsh winhttp show proxy
    
    Текущие параметры WinHTTP прокси.
    
        Прокси-сервер:   http=squid.test.local:3128
        Список обхода:  .test.local

    Перезапустил службы BITS и WSUS. Ничего не поменялось, всё равно не качает обновления. Кстати, и до, и после изменения в SoftwareDistribution.LOG идут вот такие сообщения:

    2013-01-17 15:33:20.656 UTC     Info    WsusService.9   EventLogEventReporter.ReportEvent       EventId=364,Type=
    Error,Category=Synchronization,Message=Ошибка при загрузке файла содержимого. Причина: Значение не попадает в ожидаемый диапазон. Исходный файл: /msdownload/update/software/crup/2012/11/windows8-rt-kb2758246-v2-x64-express_4607ee36bef793a6a7aa60202adc11a0f6adccb9.cab Конечный файл: C:\Program Files\Update Services\WsusData\WsusContent\B9
    \4607EE36BEF793A6A7AA60202ADC11A0F6ADCCB9.cab.
    2013-01-17 15:33:20.671 UTC     Info    WsusService.9   ContentSyncAgent.ContentSyncSPFireStateMachineEvent     ContentSyncAgent firing Event: FileDownloadFailed for Item: e90f012e-e8cf-4d51-9ab1-ee2793273a36
    2013-01-17 15:33:20.718 UTC     Info    WsusService.9   ContentSyncAgent.WakeUpWorkerThreadProc Processing Item:
    19783bc3-c1a1-4a2b-8606-f119e21e1b8f, State: 10
    2013-01-17 15:33:20.750 UTC     Error   WsusService.9   ContentSyncAgent.SetProxySettings       Значение не попадает в ожидаемый диапазон.
       в Microsoft.UpdateServices.ServerSync.ContentSyncAgent.SetProxySettings(IBitsJob job)
       в Microsoft.UpdateServices.ServerSync.ContentSyncAgent.Download(String& step, String& fileRemotePath, String&
    fileLocalPath, FileNeededByContentAgent file, IBitsJob& jobCreated)
       в Microsoft.UpdateServices.ServerSync.ContentSyncAgent.WakeUpWorkerThreadProc()
       в System.Threading.ExecutionContext.RunInternal(ExecutionContext executionContext, ContextCallback callback, O
    bject state, Boolean preserveSyncCtx)
       в System.Threading.ExecutionContext.Run(ExecutionContext executionContext, ContextCallback callback, Object st
    ate, Boolean preserveSyncCtx)
       в System.Threading.ExecutionContext.Run(ExecutionContext executionContext, ContextCallback callback, Object st
    ate)
       в System.Threading.ThreadHelper.ThreadStart()
    
    ....


    Это было до установки прокси, теперь стало так:

    2013-01-18 03:36:43.826 UTC     Error   WsusService.24  ContentSyncAgent.Download       File windows8-rt-kb276109
    4-x64.psf: ActualState: 10; Step: ResumeJob; Message: System.ArgumentException: Значение не попадает в ожидаемый диапазон.
       в Microsoft.UpdateServices.ServerSync.ContentSyncAgent.SetProxySettings(IBitsJob job)
       в Microsoft.UpdateServices.ServerSync.ContentSyncAgent.Download(String& step, String& fileRemotePath, String&
    fileLocalPath, FileNeededByContentAgent file, IBitsJob& jobCreated)
       в Microsoft.UpdateServices.ServerSync.ContentSyncAgent.Download(String& step, String& fileRemotePath, String&
    fileLocalPath, FileNeededByContentAgent file, IBitsJob& jobCreated)
       в Microsoft.UpdateServices.ServerSync.ContentSyncAgent.WakeUpWorkerThreadProc()
       в System.Threading.ExecutionContext.RunInternal(ExecutionContext executionContext, ContextCallback callback, O
    bject state, Boolean preserveSyncCtx)
       в System.Threading.ExecutionContext.Run(ExecutionContext executionContext, ContextCallback callback, Object st
    ate, Boolean preserveSyncCtx)
       в System.Threading.ExecutionContext.Run(ExecutionContext executionContext, ContextCallback callback, Object st
    ate)
       в System.Threading.ThreadHelper.ThreadStart()

    На прокси сервере видно, что этот компьютер ходил на сайт microsoft.com только за синхронизацией (которую я сделал после перезапуска служб):

    1358480181.889  64363 192.168.x.105 TCP_MISS/200 8922 CONNECT fe1.update.microsoft.com:443 - DIRECT/157.55.60.56 -
    1358480278.231 140383 192.168.x.105 TCP_MISS/200 76078 CONNECT statsfe1.update.microsoft.com:443 - DIRECT/157.55.133.2

    Сходил, как видно, успешно. Да и сам WSUS сказал, что успешно синхронизировался.

    Похоже, что разница, всё же, в BITS. На машине с 2008 он работает как-то иначе, чем на машине с 2012. Проблема в том, что "ЗНАЧЕНИЕ НЕ ПОПАДАЕТ В ОЖИДАЕМЫЙ ДИАПАЗОН". Чего ему не хватает, не пойму?...

    PS. В eventlog'е со стороны WSUS тоже только одна ошибка:

    Ошибка при загрузке файла содержимого. Причина: Значение не попадает в ожидаемый диапазон. Исходный файл: /msdownload/update/v5/eula/officexpeula_trk.txt Конечный файл: C:\Program Files\Update Services\WsusData\WsusContent\CA\037E2B248994F7959ED0D770CFE429BA64DC4DCA.txt.

    Сергей Панченко



    • Изменено Daemon-GTC 18 января 2013 г. 4:04
    18 января 2013 г. 3:56
  • Неожиданное решение было найдено в ЭТОЙ СТАТЬЕ:

    Заходим в "Параметры", в "Источник обновления и прокси-сервер" на закладке "Прокси-сервер" СНИМАЕМ галку "Использовать учетные данные пользователя для подключения к прокси-серверу". Всё, после этого начал качать обновления.

    Кстати, WinHTTP proxy я сбросил командой "netsh winhttp reset proxy". Работает и без этого.


    Сергей Панченко

    • Помечено в качестве ответа Daemon-GTC 18 января 2013 г. 5:47
    18 января 2013 г. 5:47