Устранение проблем с доступом к WMI на удаленных компьютерах

Правила для межсетевого экрана
Настройка встроенного межсетевого экрана для Windows Vista
Настройка встроенного межсетевого экрана для Windows XP
Устранение ошибки "Нет доступа"
Диагностика соединения для WMI

 

Перед чтением основной статьи попробуйте устранить основные типичные проблемы с доступом.

- Для Vista и старше: Отключите Remote UAC, настройте файервол.

- Для XP: Настройте файервол.

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

Устранение типовых проблем с доступом

Для сбора информации на удалённых компьютерах программа использует технологию WMI (Windows Management Instrumentation) - универсальное средство управления компьютерной системой. В большинстве случаев дополнительной настройки удаленных компьютеров в корпоративных сетях не требуется (при наличии домена и прав администратора). Однако, в целях безопасности доступ к WMI может быть по умолчанию ограничен на части компьютеров. Если не получается считать информацию с компьютеров по WMI, то требуется провести настройки прав доступа и политики безопасности.

ВНИМАНИЕ! Домашние версии ОС Windows не предназначены для работы в корпоративной сети и не поддерживают удалённое выполнение запросов WMI.

Если компьютер включен в сеть и имеются права администратора, то, как правило, возникают следующие типовые ошибки:

  1. Ошибка соединения
  2. Причина возникновения ошибки чаще всего заключается в отсутствии настроек, разрешающих удаленное соединение. Службы, через которые работает WMI, не запущены либо попытки соединения по WMI блокируются межсетевым экраном (firewall). Для устранения ошибки необходимо провести предварительные проверки и настроить межсетевой экран (firewall).
  3. Ошибка доступа
  4. Данная ошибка возникает при отсутствии прав на запуск DCOM - доступ непосредственно к WMI, а также при неправильно введенной учетной записи. Для устранения ошибки требуется провести настройки UAC и CIMOM для Windows Vista и более поздних версий, а также настроить DCOM.
  5. WMI поврежден.
  6. Иногда случается так, что после установки одного из обновлений Windows WMI перестает работать на сервере или рабочей станции. Если данные не собираются на каком-то компьютере даже локально (при наличии прав администратора), то скорее всего WMI поврежден. Необходимо восстановить WMI на компьютере, где он не работает. Инструкция по восстановлению WMI.

Предварительные проверки

Несмотря на то, что компьютер включен и отвечает на ICMP запросы (Ping), для соединения по WMI этого может быть недостаточно и выдается сообщение. Для работы WMI необходим запуск служб DCOM и RPC, а также разрешение их удаленной работы.

Проверьте запущены ли службы DCOM (dcomlaunch) и RPC (RpcSs).

Если у Вас используется сторонний (не встроенный) межсетевой экран (firewall), то его настройка производится в соответствии с его документацией. Правила указаны ниже. Настройки межсетевого экрана (firewall) производятся на удаленном компьютере и зависят от версии ОС.

- Для Vista и более поздних версий

- Для Windows XP

Если используется не встроенный межсетевой экран (firewall), то его настройка производится в соответствии с документацией на него. Для работы DCOM на удаленном компьютере откройте порты 135 и 445, а также добавьте модули ПО в список исключений (основной модуль программы и collect.exe ) на локальном компьютере.

Правила для межсетевого экрана

Правила, необходимые для работы на удаленном компьютере:

  1. Для настройки 135-го порта DCOM: модуль - %systemroot%\system32\svchost.exe, сервис - rpcss, действие - разрешить, protocol - TCP, локальный порт 135 (то же самое для порта 445).
  2. Для сервиса WMI: направление - входящие, программа -%systemroot%\system32\svchost.exe, сервис - winmgmt, действие - разрешить, протокол - TCP, локальный порт - любой.
  3. Настройка входящих соединений для обратных вызовов с удаленного компьютера: направление - входящие, программа - %systemroot%\system32\wbem\unsecapp.exe, действие - разрешить.
  4. Настройка исходящих команд WMI (winmgmt): направление - исходящие, программа - %systemroot%\system32\svchost.exe, служба - winmgmt, действие - разрешить, протокол - TCP, локальный порт - любой.

Настройка встроенного межсетевого экрана (firewall) для Windows Vista и более поздних версий Windows

  1. На "Панели управления" перейдите на вкладку "Система и безопасность", откройте "Брандмауэр Windows".
  2. Откройте диалог по ссылке "Разрешить запуск программы или компонента через Брандмауэр Windows".
  3. Установите галочку для "Инструментарий управления WMI".

Аналогичные действия можно выполнить при помощи команды:

netsh advfirewall firewall set rule group="windows management instrumentation (wmi)" new enable=yes

Чтобы провести детальную настройку правил, используйте следующие команды:

  1. Для открытия 135-го порта DCOM
  2. netsh advfirewall firewall add rule dir=in name="DCOM" program=%systemroot%\system32\svchost.exe service=rpcss action=allow protocol=TCP localport=135

  3. Настройка исключений для сервиса WMI (winmgmt)
  4. netsh advfirewall firewall add rule dir=in name ="WMI" program=%systemroot%\system32\svchost.exe service=winmgmt action = allow protocol=TCP localport=any

  5. Настройка входящих соединений для обратных вызовов с удаленного компьютера
  6. netsh advfirewall firewall add rule dir=in name ="UnsecApp" program=%systemroot%\system32\wbem\unsecapp.exe action=allow

  7. Настройка исходящих команд WMI (winmgmt)
  8. netsh advfirewall firewall add rule dir=out name ="WMI_OUT" program=%systemroot%\system32\svchost.exe service=winmgmt action=allow protocol=TCP localport=any

Настройка встроенного межсетевого экрана (firewall) для Windows XP

Разрешение удаленного администрирования

  1. Выберите в меню "Пуск" пункт "Выполнить", введите команду "gpedit.msc" и нажмите кнопку "".
  2. Последовательно разверните узлы "Корень консоли", "Конфигурация компьютера", "Административные шаблоны", "Сеть", "Сетевые подключения", "Брандмауэр Windows" и "Профиль домена".
  3. Правой кнопкой мыши щелкните элемент "Брандмауэр Windows: Разрешать исключения "Элемент управления WMI" и выберите пункт "Свойства".
  4. Выберите вариант "Включен" и нажмите кнопку "ОК".

Можно попробовать также ввести команду:

netsh firewall set service RemoteAdmin enable

Эта строка позволяет разрешить в брандмауэре Windows порты, необходимые для работы удаленного администрирования и WMI. Однако, это может повлечь негативные последствия для безопасности компьютера. Поэтому рекомендуется прописывать адрес компьютера администратора при выполнении команды (чтобы только он мог подключаться):
netsh firewall set service RemoteAdmin enable custom IP-адрес/маска_администратора

Прочитать подробнее об этой проблеме

Открытие порта DCOM

Перед тем как открывать порты в брандмауэре Windows, убедитесь, что в групповой политике включен параметр "Брандмауэр Windows": "Разрешать локальные исключения для портов". Для этого выполните следующие действия:
  1. Выберите в меню "Пуск" пункт "Выполнить", введите команду "gpedit.msc" и нажмите кнопку "".
  2. Последовательно разверните узлы "Корень консоли", "Конфигурация компьютера", "Административные шаблоны", "Сеть", "Сетевые подключения", "Брандмауэр Windows" и "Профиль домена".
  3. Правой кнопкой мыши щелкните элемент "Брандмауэр Windows: Разрешать локальные исключения для портов" и выберите пункт "Свойства".
  4. Выберите вариант "Включен" и нажмите кнопку "ОК".

Модели DCOM сопоставлен TCP-порт 135. Открыть порт можно, выполнив из командной строки следующую команду:

netsh firewall add portopening TCP 135 DCOM_TCP135

Второй способ

Настроить исключения для портов можно с помощью параметра "Брандмауэр Windows: Задать исключения портов".

  1. Нажмите кнопку "Пуск" и выберите пункт "Панель управления".
  2. Дважды щелкните значок "Брандмауэр Windows" и откройте вкладку "Исключения".
  3. Нажмите кнопку "Добавить порт".
  4. В поле "Имя" введите "DCOM_TCP135", а в поле "Номер порта" введите "135".
  5. Выберите вариант порт "ТСР" и нажмите кнопку "ОК".
  6. Нажмите кнопку "ОК".
  7. Попробуйте также открыть порт 445.

Добавление приложения в список исключений брандмауэра Windows.

Перед добавлением программ в список исключений брандмауэра Windows убедитесь, что в групповой политике включен параметр "Брандмауэр Windows: Разрешать локальные исключения для программ".
  1. Выберите в меню "Пуск" пункт "Выполнить". Введите команду "gpedit.msc" и нажмите кнопку .
  2. Последовательно разверните узлы "Корень консоли", "Конфигурация компьютера", "Административные шаблоны", "Сеть", "Сетевые подключения", "Брандмауэр Windows" и "Профиль домена".
  3. Правой кнопкой мыши щелкните элемент "Брандмауэр Windows: Разрешать локальные исключения для программ" и выберите пункт "Свойства".
  4. Выберите вариант "Включен" и нажмите кнопку ОК.

Чтобы добавить клиентское приложение в список исключений брандмауэра Windows, выполните из командной строки следующую команду:
netsh firewall add allowedprogram путь_к_программе\NetworkInventoryExplorer.exe NetworkInventoryExplorer ENABLE

Второй способ

Настроить исключения для портов можно с помощью параметра "Брандмауэр Windows: Задать исключения для программ":

  1. Нажмите кнопку "Пуск" и выберите пункт "Панель управления".
  2. Дважды щелкните значок "Брандмауэр Windows" и откройте вкладку "Исключения".
  3. Нажмите кнопку "Добавить программу".
  4. Найдите NetworkInventoryExplorer.exe в папке программы (в "Program Files") и нажмите кнопку ОК.
  5. Нажмите кнопку ОК.

Устранение ошибки <Нет доступа>

Настройки для Vista и более поздних версий Windows

Начиная с Windows Vista появился контроль учетных записей пользователя (UAC). Для доступа по WMI необходимо отключить удаленный контроль учетный записей.

  1. Откройте редактор реестра.
  2. Нажмите "Пуск" - "Выполнить", введите Regedit.exe.
  3. Перейдите на ветку
  4. <HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\system\>
  5. Создайте параметр LocalAccountTokenFilterPolicy типа DWORD и пропишите значение равным "1". Иногда требуется перезагрузка.

Настройки CIMOM

Для компьютеров в одном домене или с доверительными отношениями между доменами это значение менять не следует!

Для компьютеров не из домена, между которыми нет доверительных отношений, потребуется изменить в реестре значение DWORD параметра

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\WBEM\CIMOM\AllowAnonymousCallback

0 - запрет обратных вызовов

1 - разрешает обратные вызовы. Нужно установить значение равное "1"

Настройки для Windows XP

  1. Для Windows XP не включена классическая модель доступа к ресурсам.
  2. Если на удалённом компьютере в локальных политиках безопасности стоит модель "Сетевой доступ - модель совместного доступа и безопасности - гостевая", измените модель на "Классическую (обычную)".
    Настроить данный параметр безопасности можно, открыв соответствующую политику и развернув дерево консоли следующим образом:

    Панель управления\Администрирование\Локальная политика безопасности\Параметры безопасности\Локальные политики\Параметры безопасности\Сетевой доступ - модель совместного доступа и безопасности -> Классическая.

    По умолчанию "Гостевая" модель включена в Windows XP Professional, <Классическая> - в семействе Windows Server 2003 и на компьютерах Windows XP Professional, присоединенных к домену.

  3. Для Windows XP при использовании пустых паролей могут возникнуть проблемы с подключением, если на удалённом компьютере в локальных политиках безопасности включен параметр "Учётные записи: ограничить использование пустых паролей для консольного ввода" (включено по умолчанию в Windows XP SP2).
  4. Откажитесь от пустых паролей, либо отключите это ограничение. Настроить данный параметр безопасности можно, открыв соответствующую политику и развернув дерево консоли следующим образом:

    Панель управления\Администрирование\Локальная политика безопасности\Параметры безопасности\Локальные политики\Параметры безопасности\Учётные записи: ограничить использование пустых паролей для консольного ввода -> Отключить.

Настройки DCOM

Настройки DCOM в Windows Vista не изменились и настраиваются также как и для Windows XP.

  1. Включение DCOM
  2. По умолчанию параметр должен быть включен, но лучше проверить его значение.

    В разделе реестра HKLM\SOFTWARE\MICROSOFT\OLE должно быть установлено значение EnableDCOM равным "Y".

  3. Разрешение на удаленный запуск DCOM
    • Выберите в меню "Пуск" пункт "Выполнить", введите команду "DCOMCNFG" и нажмите кнопку "".
    • В диалоговом окне "Службы компонентов" последовательно разверните узлы "Службы компонентов", "Компьютеры" и "Мой компьютер".
    • На панели инструментов нажмите кнопку "Настройка моего компьютера". Появится диалоговое окно "Мой компьютер".
    • В диалоговом окне "Мой компьютер" перейдите на вкладку "Безопасность СОМ".
    • В разделе "Разрешения на запуск и активацию" нажмите кнопку "Изменить ограничения".
    • Если требуемое имя пользователя или группы отсутствует в списке "Группы или пользователи", в диалоговом окне "Разрешение на запуск" выполните следующие действия.
      1. В диалоговом окне "Разрешение на запуск" нажмите кнопку "Добавить".
      2. В диалоговом окне "Выбор: Пользователи, Компьютеры или Группы" добавьте нужное имя пользователя или группы в поле "Введите имена выбираемых объектов" и нажмите кнопку "".
    • В диалоговом окне "Разрешение на запуск" выделите в списке "Группы или пользователи" пользователя или группу. В списке "Разрешения для пользователя" в столбце "Разрешить" установите флажок у записи "Удаленный запуск" и нажмите кнопку "".
  4. Настройка прав доступа к DCOM
    • Запустите Dcomcnfg в консоли;
    • Перейдите к узлу "Службы компонентов/Компьютеры/Мой компьютер";
    • Из контекстного меню вызовите диалог "Свойства";
    • Перейдите на вкладку "Безопасность COM";
    • Проверьте права доступа.

  5. Проверьте свойства безопасности элемента управления WMI
    • В меню "Пуск" - "Выполнить" введите wmimgmt.msc. Будет открыт Элемент управления WMI (локальный).
    • Через контекстное меню по правой кнопки мыши выберите пункт меню "Свойства".
    • Перейдите на вкладку "Безопасность".
    • Выберите элемент "Root".
    • Нажмите кнопку "Безопасность". В появившемся списке найдите пользователя или группу пользователей, от имени которой будет производиться подключение.
    • Включите галочку "Включить удаленно", а также "Включить учетную запись".

Диагностика соединения по WMI

Вы можете протестировать службу WMI на наличие ошибок. Сделать это можно двумя способами.

Первый способ:

  1. В папке "System32\wbem\" есть программа wbemtest.exe. Запустите её.
  2. В окне "Пространство имен"  нужно ввести: \\<имя компьютера>\root\cimv2 (например, \\SKLAD-13\root\cimv2).
  3. В поля "Пользователь"  и "Пароль" введите данные своей учётной записи с правами администратора на удаленном ПК. Желательно попробовать ввести оба варианта Domain name \ username и просто username в качестве логина. Тестовая программа попытается соединиться и выдаст код ошибки. Пришлите его нам по email, мы его проанализируем и попытаемся диагностировать проблему.

Второй способ:

  1. Скачайте с нашего официального сайта утилиту для диагностики WMI (https://www.10-strike.com/tools/wmidiag.zip).
  2. Запустите файл WMDiag.vbs.
  3. На экране откроется окно с предупреждением о том, что программа не будет выдавать никаких окон в течение нескольких минут. Нажмите "ОК".
  4. Подождите 3-4 минуты. После окончания тестирования откроется файл с отчетом. Пожалуйста, сохраните следующие файлы:
    c:\Documents and Settings\<user>\local settings\Temp\wmdiag_*.log
    c:\Documents and Settings\<user>\local settings\Temp\wmdiag_*.txt
    c:\Documents and Settings\<user>\local settings\Temp\wmdiag_*.csv

    Запакуйте их в один архив и отправьте нам для диагностики.

  5. Что еще можно посмотреть:
    Настройка WMI на удаленных ПК через групповые политики
    Расшифровка ошибок при опросе WMI
    Посмотреть часто-задаваемые вопросы (FAQ)

 

Программа "10-Страйк: Инвентаризация Компьютеров" - удаленный опрос и инвентаризация ПК предприятия по сети. Создание отчетов по "железу" и ПО, мониторинг изменений, обнаружение проблем, оповещение администратора. Легко установить и настроить. Возьмите свой парк компьютеров под контроль!

Скачайте бесплатную 30-дневную версию прямо сейчас и попробуйте.

 

Ссылки по теме: