Столкнулся с неожиданными трудностями при удаленных подключениях к Windows по WMI. Постоянно получал "ОШИБКА. Описание: Отказано в доступе. Код ошибки: 80070005" При этом все учетные данные, настройки firewall и т.д. были на 100% верны. Где-то сразу все работало, как надо, а где-то ни в какую не получалось удаленно подключиться к Windows 10 по WMI.
Научиться настраивать MikroTik с нуля или систематизировать уже имеющиеся знания можно на углубленном онлайн-курcе по администрированию MikroTik. Автор курcа – сертифицированный тренер MikroTik Дмитрий Скоромнов. Более 40 лабораторных работ по которым дается обратная связь. В три раза больше информации, чем в MTCNA.
Введение
WMI - Windows Management Instrumentation, инструмент для управления Windows. В том числе поддерживает удаленную работу. С его помощью, к примеру, удобно мониторить Windows системы. Так как WMI встроен в саму систему, нет необходимости ставить что-то дополнительно. Базовые метрики можно собирать сразу же.
Для работы по WMI используется свой язык запросов WMI Query Language (WQL), который немного похож на SQL, так как является его разновидностью. Пример работы с WMI можно посмотреть прямо в командной строке Windows:
wmic computersystem get totalphysicalmemory
Вы получите информацию в байтах о доступной оперативной памяти компьютера.
Ошибка WMI 80070005 Отказано в доступе
Запросы по WMI можно делать по сети. Выглядит это примерно следующим образом:
wmic /user:"win10-kvm\zerox" /node:"10.20.1.53" computersystem get totalphysicalmemory
win10-kvm\zerox | учетная запись на целевом компьютере в формате домен или имя компьютера и сам пользователь |
10.20.1.53 | адрес компьютера в виде ip или имени |
Очень часто вы можете получить вот такую ошибку при запросе WMI по сети. Далее рассказываю, как ее продиагностировать и исправить.
Разрешение удаленных вызовов по WMI
Первым делом вам надо локально убедиться, что WMI в принципе работает. Выше я уже показал пример с оперативной памятью. Так что прежде чем настраивать удаленные запросы, проверьте, работает ли все локально.
Далее необходимо проверить, какой тип сетевого соединения у вас установлен. Если общедоступная сеть, то WMI удаленно работать не будет, даже если вы настроите или отключите фаервол.
Вам необходимо сменить тип сети на Частная. Для этого идем в Параметры -> Сеть и Интернет -> Состояние. Открываем свойства сетевого соединения.
Выбираете сетевой профиль - Частные.
Должно получиться в итоге вот так:
В разных версиях Windows 10 изменение типа сети с общедоступной на частную выглядит по-разному. Даже сейчас, проверяя статью, я в двух разных системах вижу 2 разных способа. Пункты меню в Параметрах постоянно меняются. Каждый раз как Коломбо вынужден искать новое расположение старых настроек. Ума не приложу, зачем Microsoft это делает. Вот так меняется тип сети в одной из других версий:
После того, как изменили профиль сети на частный, открывайте командную строку с правами администратора и выполните в ней команду:
winrm quickconfig
На все заданные вопросы отвечайте положительно. Если до этого тип сети не изменили, то данная команда отработает с ошибкой: Исключение брандмауэра WinRM не будет работать, поскольку одно из сетевых подключений, установленных для этого компьютера, является общим. Измените тип сетевого подключения либо на доменное, либо на частное и повторите попытку.
Что делать в этом случае, вы знаете. Если все прошло успешно, то теперь удаленный вызов WMI завершится удачно:
wmic /user:"win10-kvm\user" /node:"10.20.1.53" computersystem get totalphysicalmemory
Заключение
На этом все по удаленному запуску команд WMI и возможных ошибок в этом деле. Во время отладки имеет смысл смотреть журнал безопасности Windows. Если вдруг вы перепутаете учетную запись системы, в логе четко будет видно, что авторизация не проходит. Если же по логу видно, что авторизация верна, а WMI удаленно не отрабатывает, значит проблемы именно с ним.
На углубленном курсе "Архитектура современных компьютерных сетей" вы с нуля научитесь работать с Wireshark и «под микроскопом» изучите работу сетевых протоколов. На протяжении курса надо будет выполнить более пятидесяти лабораторных работ в Wireshark.
Добрый день! Может, подскажете по WMI?
Бьюсь третий день, пока результата нет.
На нескольких серверах не работают команды wmic, причем, только локально
выглядит это так:
C:\Windows\system32>wmic computersystem get totalphysicalmemory
ОШИБКА.
Описание: Ошибка.
Причем, если к нему же обратиться по сети, все ок
PS C:\Users\Rmg> wmic /user:"usk\welk" /node:"srv14" computersystem get totalphysicalmemory
Введите пароль:********
TotalPhysicalMemory
4293910528
Все что нашел про восстановление репозиториев и перерегистрацию библиотек проделал безуспешно. VMIDiag прогонял, сравнивал с рабочей системой, криминала не нашел. Подозреваю что-то с правами или связкой с DCOM, но пока не докопался, может встречалось похожее? Причем, таких серверов обнаружилось несколько как 2012 так и 2016. Как-то не нужно было и не знал что есть проблема а теперь вот вылезла внезапно.
Сам себе и отвечаю, проблема локализована, как найду решение, отпишусь, пока сделал костыль :)
В неинтерактивном режиме winrm можно настроить вот так: https://ru.stackoverflow.com/a/949971/191416
Спасибо за статью. Помогла с доступом к 10ке.
В дополнение к Вашей статье - Вариант управления компьютером на Windows из-под консоли Linux https://habr.com/ru/post/181103/
Владимир, наткнулся на твой сайт случайно, при поиске информации про CentOS,
вопрос не относится к теме, но все же задам его тебе.
Более 10 лет проработал в тех поддержке, грубо говоря эникейщиком, но теперь наконец то твердо для себя решил освоить системное администрирование.
Сейчас полно курсов, где ребята обещают сделать из тебя девопса за год, но я к этому отношусь скептически.
вопроса по сути два:
1) не поздно ли начинать в 35 лет?
2) с чего начать? с никсов или изучения сетевого оборудования?
По курсам у меня есть заметка - https://serveradmin.ru/kursy-po-it-lichnaya-rekomendacziya/
А вот еще одна на тему подхода к обучению - https://t.me/srv_admin/651
Там будут ответы на твои вопросы. Начать надо с того, что определиться, что тебе ближе и чем ты хочешь заниматься. От этого уже и плясать. А так, все возможно, если ты реально хочешь развиваться. 35 лет это еще не возраст, когда можно ставить на себе крест. Такого возраста вообще не существует. Все зависит от настроя и целеполагания.
Мне даже немного смешно читать, про 35 лет :) Это же возраст с максимальными возможностями, когда человек знает, что хочет и умеет трудиться. В этом возрасте все по плечу. Мне самому 36 и я чем только не занимаюсь. Постоянно учусь, осваиваю новое - воспитание детей, стройка, IT, блогерство и т.д.
Владимир, здравствуйте!
А командлет Enable-PSRemoting для этих же целей не подойдёт? Я у себя в доменной среде им время от времени пользуюсь, но вне домена применять не доводилось.
Даже не знаю, не слышал о нем. Надо будет проверить.
Отпишитесь потом, если не затруднит:)