none
Как найти неподключившиеся компьютеры RRS feed

  • Вопрос

  • Добрый день!

    Абсолютно случайно заметили, что присутствует компьютер в сети, который не получал обновления WSUS.

    Подскажите, как проще всего определить, какие компьютеры в домене испытывают трудности при подключении к WSUS, кроме как ручное сравнение :) ?

    21 июня 2010 г. 13:32

Ответы

  • Из бесплатного и хорошего - Анализатор Microsoft Baseline Security Analyzer
    • Помечено в качестве ответа Bafff 24 июня 2010 г. 6:00
    21 июня 2010 г. 15:54
    Модератор
  • с NAPом ещё не сталкивался, в очереди на изучение, но думаю это слишком мощный инструмент для моей простой задачи.

    А с отчётами всё понятно - я на них и любовался, абсолютно уверенный, что вижу все свои рабочие станции и сервера в отчётах, а оказалось, что не все...

    Как "воркэраунд"- в следующий раз к GPO WSUS'a буду добавлять обязательный старт службы Автоматического обновления + периодическое сканировани собственной подсети с помощью MBSA

    • Помечено в качестве ответа Bafff 24 июня 2010 г. 6:00
    23 июня 2010 г. 13:44
  • [reflection.assembly]::LoadWithPartialName("Microsoft.UpdateServices.Administration") 
    $wsus = [Microsoft.UpdateServices.Administration.AdminProxy]::GetUpdateServer("krnd-file", $false)
    $WSUScomps = $wsus.GetComputerTargets()
    $WSUSCompNames = $WSUScomps | ForEach { $_.FullDomainName.ToUpper() }
    $ADcomps = (new-object System.DirectoryServices.DirectorySearcher([ADSI]"LDAP://ou=computers,dc=firma,dc=net","(&(objectCategory=computer)(!userAccountControl:1.2.840.113556.1.4.803:=2))")).findAll() 
    $ADCompNames = $ADcomps | ForEach {$_.GetDirectoryEntry().dNSHostName.ToString().ToUpper()}
    $NoWSUSCompNames = $ADCompNames | Where { $WSUSCompNames -notcontains $_ } | Sort-Object $NoWSUSCompNames | echo > c:\WSUS.txt
    Наверное, где-то описался... Вот финальная версия вашего скрипта. Спасибо, работает! Узнал много нового о сети :)
    • Помечено в качестве ответа Bafff 24 июня 2010 г. 13:04
    24 июня 2010 г. 12:10

Все ответы

  • Из бесплатного и хорошего - Анализатор Microsoft Baseline Security Analyzer
    • Помечено в качестве ответа Bafff 24 июня 2010 г. 6:00
    21 июня 2010 г. 15:54
    Модератор
  • Для проверки соответствия компьютера определенным требованиям есть NAP http://technet.microsoft.com/en-us/network/bb545879.aspx

    Потом в WSUS есть система отчетов: можно отслеживать какие компьютеры подключаются к WSUS и получают обновления.


    Сазонов Илья http://www.itcommunity.ru/blogs/sie-wl/
    22 июня 2010 г. 6:02
    Модератор
  • Спасибо сегодня опробую ваш совет на своей сети.

    Просто думал, что может быть уже существует общеизвестные скрипты, которые сверяют скажем БД WSUS и ip подсеть в которой содержатся рабочие станции или проверяют на способ запуска службы Автоматического обновления

     

    p.s. только я не получаю уведомления о новых ответах?

    23 июня 2010 г. 13:39
  • с NAPом ещё не сталкивался, в очереди на изучение, но думаю это слишком мощный инструмент для моей простой задачи.

    А с отчётами всё понятно - я на них и любовался, абсолютно уверенный, что вижу все свои рабочие станции и сервера в отчётах, а оказалось, что не все...

    Как "воркэраунд"- в следующий раз к GPO WSUS'a буду добавлять обязательный старт службы Автоматического обновления + периодическое сканировани собственной подсети с помощью MBSA

    • Помечено в качестве ответа Bafff 24 июня 2010 г. 6:00
    23 июня 2010 г. 13:44
  • Просто думал, что может быть уже существует общеизвестные скрипты, которые сверяют скажем БД WSUS и ip подсеть в которой содержатся рабочие станции или проверяют на способ запуска службы Автоматического обновления


    Посмотрите пример у меня в блоге http://www.itcommunity.ru/blogs/sie-wl/archive/2009/07/30/73285.aspx
    Сазонов Илья http://www.itcommunity.ru/blogs/sie-wl/
    24 июня 2010 г. 6:06
    Модератор
  • Так это именно то, что я хотел!!! Точнее, наверное я как то вполглаза читал вашу статью, а потом, когда появилась задача - никак не мог её найти и подумал, что мне показалось что такое уже кто-то реализовывал.

    Спасибо за наводку!
    Я просто очень слабо разбираюсь в скриптомании, тем более в PS. У меня стоит PowerShell 2.0

    я создал такой скрипт

     

    [reflection.assembly]::LoadWithPartialName("Microsoft.UpdateServices.Administration") 
    $wsus = [Microsoft.UpdateServices.Administration.AdminProxy]::GetUpdateServer("krnd-file", $false)
    $WSUScomps = $wsus.GetComputerTargets()
    $WSUSCompNames = $WSUScomps | ForEach { $_.FullDomainName.ToUpper() }
    $ADcomps = (new-object System.DirectoryServices.DirectorySearcher([ADSI]"LDAP://ou=Computers,ou=krnd,dc=firma,dc=net","(&(objectCategory=computer)(!userAccountControl:1.2.840.113556.1.4.803:=2))")).findAll() 
    $ADCompNames = $ADcomps | ForEach {$_.GetDirectoryEntry().dNSHostName.ToString().ToUpper()}
    $NoWSUSCompNames = $ADCompNames | Where { $WSUSCompNames -notcontains $_ }
    но результат пустой. Я что-то неправильно делаю? Если не сложно подскажите :)

     

    24 июня 2010 г. 9:38
  • Выполняйте команды последовательно и смотрите результаты.
    Сазонов Илья http://www.itcommunity.ru/blogs/sie-wl/
    24 июня 2010 г. 9:51
    Модератор
  • [reflection.assembly]::LoadWithPartialName("Microsoft.UpdateServices.Administration") 
    $wsus = [Microsoft.UpdateServices.Administration.AdminProxy]::GetUpdateServer("krnd-file", $false)
    $WSUScomps = $wsus.GetComputerTargets()
    $WSUSCompNames = $WSUScomps | ForEach { $_.FullDomainName.ToUpper() }
    $ADcomps = (new-object System.DirectoryServices.DirectorySearcher([ADSI]"LDAP://ou=computers,dc=firma,dc=net","(&(objectCategory=computer)(!userAccountControl:1.2.840.113556.1.4.803:=2))")).findAll() 
    $ADCompNames = $ADcomps | ForEach {$_.GetDirectoryEntry().dNSHostName.ToString().ToUpper()}
    $NoWSUSCompNames = $ADCompNames | Where { $WSUSCompNames -notcontains $_ } | Sort-Object $NoWSUSCompNames | echo > c:\WSUS.txt
    Наверное, где-то описался... Вот финальная версия вашего скрипта. Спасибо, работает! Узнал много нового о сети :)
    • Помечено в качестве ответа Bafff 24 июня 2010 г. 13:04
    24 июня 2010 г. 12:10
  • Просто думал, что может быть уже существует общеизвестные скрипты, которые сверяют скажем БД WSUS и ip подсеть в которой содержатся рабочие станции или проверяют на способ запуска службы Автоматического обновления


    Посмотрите пример у меня в блоге http://www.itcommunity.ru/blogs/sie-wl/archive/2009/07/30/73285.aspx
    Сазонов Илья http://www.itcommunity.ru/blogs/sie-wl/

    Спасибо за скрипт и его подробное толкование. Оказался очень полезен, т.к. столкнулся с такой-же проблемой.
    Не игнорируйте встроенную справку, читайте ее и большинство вопросов будет решено гораздо быстрее.
    26 апреля 2011 г. 6:28