Домой Устройство ПК Службы удаленного управления windows winrm не выполняется. Удаленное управление Windows с помощью WinRM. Включение удаленного управления

Службы удаленного управления windows winrm не выполняется. Удаленное управление Windows с помощью WinRM. Включение удаленного управления

Прочитано: 839

Я опишу процесс, каким образом можно централизованно активировать и настроить службу Windows Remote Management (WinRM) на всех целевых компьютерах с помощью Group Security Policy . Windows Remote Management – это специальный сервис, позволяющий администраторам получить возможность удаленного доступа и управления клиентскими и серверными ОС Windows.

Возьмем обычный ПК с Windows 7, который включен в домен, и на котором не активирована функция Windows Remote Management . В командной строке введем следующую команду:

Запустим командную строку с правами администратора.

Должно появиться следующее сообщение об ошибке, свидетельствующее о том, что WRM не установлен:

WSMan Fault. The client cannot connect to the destination specified in the request. Error number: – 2144108526 0?80338012

Если нужно настроить WinRM вручную на отдельной системе, достаточно набрать команду:

winrm quickconfig

Это я рассмотрел вариант установки на единичную рабочую станцию.

В том случае, если нужно настроить WinRM на группе компьютеров, то можно воспользоваться специальными параметрами групповой политики. Создадим групповую политику на контейнер где располагаются рабочие станции. Конфигурация компьютера — Политики — Административные шаблоны -> Компоненты Windows – Удаленное управление Windows . Активируем следующие параметры:

Клиент службы удаленного управления Windows.

Служба удаленного управления Windows

В разделе IPv4 filter укажем * , что означает, что компьютер может принимать подключения (а значит и управляющие команды) откуда угодно.

Далее в разделе Конфигурация компьютера – Политики — Административные шаблоны – Компоненты Windows – Удаленная оболочка Windows

Активируем пункт:

Разрешить доступ к удаленной оболочке – Включена

Управлять способом запуска служб можно из следующего раздела групповых политик: Конфигурация компьютера – Политики — Конфигурация Windows — Параметры безопасности — Системные службы.

Открыть службу «Служба удаленного управления Windows (WM-Management) и произвести настройки ниже, см. скриншот.

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

WinRM enumerate winrm/config/listener

Удостоверимся, что тип запуска службы WinRM задан в автоматический. Хотя по факту тип запуска «автоматический с задержкой», т.к. по умолчанию для службы WinRM задана задержка запуска (параметр DelayedAutoStart=1 в ветке HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\services\WinRM).

После применения групповой политики, данной системой можно управлять удаленно с помощью команд WinRS. Следующая команда откроет командную строку, запущенную на удаленной системе:

winrs –r:<имя_компьютера> cmd

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

В моем случаем тестовая машина называется alektest4

winrs -r:alektest4 cmd

Навигация по записям

Используйте прокси ((заблокировано роскомнадзором, используйте vpn или proxy)) при использовании Telegram клиента.

· Комментариев нет

Введение

WinRM и WinRS являются нововведением в Windows Vista, Windows Server 2003 R2, Windows Server 2008 (и Server 2008 Core). Это новые мощные средства командной строки, предлагающие системным администраторам улучшенные возможности удаленного управления и удаленного выполнения программ на машинах с Windows. Однако, их нужно сперва включить, кроме того, вам потребуется некоторое время на изучение их функциональности. Вам повезло: в этой статье есть все, что потребуется вам для того, чтобы начать использовать эти средства прямо сегодня!

Что такое Windows Remote Management (WinRM) (Удаленное управление Windows)?

Windows Remote Management (сокращенно WinRM) – это новая удобная служба удаленного управления для Windows Server 2003 R2, Windows Vista и Windows Server 2008. WinRM — это «серверный» компонент этого приложения удаленного управления, а WinRS (Windows Remote Shell – удаленная среда Windows) – это «клиент» для WinRM, которые запускается на удаленном компьютере, пытаясь удаленно управлять сервером WinRM. Однако должен заметить, что на ОБОИХ компьютерах должен быть установлен и включен WinRM, чтобы WinRS мог работать и получать информацию об удаленной системе. WinRM основан на стандартах Web Services for Management (службы для управления) (WS-Management). Это означает, что WinRM использует протокол HTTP (порт 80) и запросы SOAP для выполнения работы. Это хорошо тем, что запросы HTTP легко пересылать через брандмауэр. Из этого вытекают хорошее и плохое следствия: с одной стороны, так проще будет управлять удаленным компьютером через Internet, но, с другой стороны, злоумышленнику проще удаленно атаковать этот же компьютер. Еще одно небольшое преимущество использования порта 80 в том, что нет необходимости открывать другие порты на сервере, если входящие HTTP соединения уже были разрешены.

Согласно утверждениям Microsoft, WinRM представляет собой «Новое средство от Microsoft для установления основанного на стандартах API для системного управления». Так что, если вы ранее и не были заинтересованы в изучении таких средств, мне кажется, тот факт, что «это новый стандарт Microsoft» делает его достойным изучения.

Возможно, вы уже знакомы с базой данных Windows Management Instrumentation (WMI) (Инструментарий управления Windows). Но, на всякий случай, скажу, что эта база данных содержит всевозможную информацию об аппаратном и программного обеспечении компьютера. Почти каждое приложение, управляющее системой Windows, опускается не уровень базы данных WMI для выполнения всех административных задач на данном ПК.

WinRM будет использовать базу данных WMI для выполнения задач, аналогичных тем, которые вы, возможно, выполняли с помощью других программных средств вроде VBScript. Преимущество WinRM в том, что он использует HTTP(порт 80), как я уже говорил, кроме того, есть даже специальный код, позволяющий WinRM разделять входящие соединения на порт 80 с компонентом IIS, который уже, возможно, работает с этим портом.

WinRM поддерживает различные типы аутентификации для предотвращения выполнения кем угодно административных задач на ваших клиентах и серверах. Конечно, вам необходимо помнить, что, включая WinRM, вы открываете еще один путь для атакования вашей системы. Однако, как я для любого открытого порта, если аутентификация и шифрование установлены как следует, можно считать, что вы приняли все разумные меры предосторожности.

Производитель вашего ПО, управляющего системой, возможно, уже запланировали использовать WinRM в следующих выпусках своего ПО, так что вы, возможно, уже используете WinRM через другие приложения. Однако вы можете использовать этот компонент и собственноручно, с помощью команды winrm.cmd . С этим средством CLI вы можете очень просто извлекать информацию из базы данных WMI для любой решаемой вами задачи.

Как вы увидите ниже, WinRM обладает интерфейсом командной строки с множеством параметров. Справочная информация о WinRM будет вам показана даже в том случае, когда он не включен на вашей системе.

Рисунок 1: параметры командной строки WinRM

Как включать и использовать WinRM?

Если вы используете Windows 2008 Server, WinRM уже установлен, но не включен по умолчанию. Это хорошая предосторожность. Самый простой способ проверить, включен ли WinRM и запущен ли на вашей машине, это перейти к командной строке и набрать:

winrm enumerate winrm/config/listener

Если вы не получаете ответа, значит, WinRM не запущен. Для настраивания WinRM на автоматический запуск и разрешение удаленного доступа используйте команду winrm quickconfig , например:

C:\Users\Administrator> winrm quickconfig WinRM is not set up to allow remote access to this machine for management. The following changes must be made: Create a WinRM listener on HTTP://* to accept WS-Man requests to any IP on this machine. Make these changes ? y WinRM has been updated for remote management. Created a WinRM listener on HTTP://* to accept WS-Man requests to any IP on this machine. C:\Users\Administrator> После настройки quickconfig, я перезапустил команду перечисления со следующими результатами: C:\Users\Administrator> winrm e winrm/config/listener Listener Address = * Transport = HTTP Port = 80 Hostname Enabled = true URLPrefix = wsman CertificateThumbprint ListeningOn = 10.253.15.98, 127.0.0.1, ::1, fe80::5efe:10.253.15.98%11, fe80::9583:2148:e1ef:6444%10 C:\Users\Administrator>

Теперь я знаю, что WinRM включен.

Кстати, если вы хотите отключить WinRM, нужно использовать такую команду:

winrm delete winrm/config/listener?IPAdress=*+Transport=HTTP

Для использования WinRM все узлы, взаимодействующие с ним, должны быть членами того же домена, что и узел с WinRM. Если в вашем случае это не так, рекомендую ознакомиться с различными сценариями безопасности в статье ‘Remotely managing your Server Core using WinRM and WinRS‘.

Что такое WinRS и как его использовать?

WinRS – это аббревиатура для Windows Remote Shell (удаленная среда Windows). С WinRS вы можете делать удаленные запросы на машины с Windows, на которых запущен WinRM. Однако не забывайте, что на вашей машине также необходимо запускать WinRM для работы с WinRS.

Как вы видите на диаграмме ниже, winrs представляет собой полнофункциональное средство командной строки с огромным количеством справочной информации по работе и ним.

Рисунок 2: параметры командной строки WinRS

Одним из самых обычных способов использования WinRS является выполнение команд на удаленной машине. Конечно же, это взаимодействие происходит с помощью протокола HTTP (порт 80) (по умолчанию).

Ниже представлен пример использования WinRS: я выполнил команды на узле localhost. Я запустил две команды: ‘ ‘ver ‘ и ‘dir C: ‘. В каждом случае в ответ была получена адекватная информация.

Рисунок 3: демонстрация команд WinRS

Итоги

WinRM и WinRS представляют собой очень мощные новые средства, о которых системные администраторы Windows просто обязаны узнать. Подумайте о возможностях удаленного управления с WinRM/WinRS! Вы можете устанавливать программы, изменять настройки, решать проблемы (конечно, если проблема не в сетевом взаимодействии). Вы можете пойти дальше и соединить WinRS со скриптом для выполнения этих задач на нескольких компьютерах. Кроме того, помните, что вне зависимости от того, используете ли вы эти средства или нет, ваше ПО, управляющее системой, скоро будут их использовать так или иначе.

www.windowsnetworking.com


Смотрите также:

Readers Comments (Комментариев нет)

Exchange 2007

Если вы хотите прочитать предыдущие части этой серии статей, перейдите по ссылкам: Проведение мониторинга Exchange 2007 с помощью диспетчера System ...

Введение В этой статье из нескольких частей я хочу показать вам процесс, который недавно использовал для перехода с существующей среды Exchange 2003 ...

Если вы пропустили первую часть этой серии, пожалуйста, прочтите ее по ссылке Использование инструмента Exchange Server Remote Connectivity Analyzer Tool (Часть...

Если вы пропустили предыдущую часть этой серии статей, перейдите по ссылке Мониторинг Exchange 2007 с помощью диспетчера System Center Operations ...

Для всех ОС, даже для XP.

Для меня там, кроме собственно, PowerShell 2.0, основное это WinRM. В приложении к PowerShell это просто способ выполнять команды на удалённом компе.

Вот как это сделать:
0. Поставить Windows Management Framework Core

1. Для конфигурирования winrm, на той машине, которая будет сервером:
1.1 зайти в cmd.exe (я пытался сделать это из-под ISE, но оно не работает с интерактивными консольными программами)
1.2 запустить winrm qc
1.3 ответить Y на вопрос об изменениях

2. Теперь можно в PowerShell ISE на клиентской машине нажать иконку с изображением терминала, набрать имя сервера и учетную запись, потом ввести пароль и работать с привычным ISE на удалённой машине.

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

P.S. переслал сообщение от анонимуса:

«Здравствуйте! Требуется помощь, т.к. сам способа решения не нашел;)). В общем, проблема такая - не знаю как связаться с автором одного из топиков.. Данная статья подтолкнула меня на знакомство с сетевыми возможностями powershell. При настройке данной возможности на пк с Windows XP SP3 возникла проблема - выскочила ошибка следующего содержания:

PS C:\Documents and Settings\Administrator> winrm qc
WinRM is not set up to receive requests on this machine.
The following changes must be made:

Start the WinRM service.

Make these changes ? y

WinRM has been updated to receive requests.

WinRM service started.
WSManFault
Message = Access is denied.

Error number: -2147024891 0x80070005
Access is denied.
PS C:\Documents and Settings\Administrator>
**********************************************************************
Я долго-долго искал пути решения данной проблемы в Интернете, но всё никак - ничего путного найти не мог. В общем,
Для решения данной проблемы следует зайти в Пуск->Администрирование ->Локальная политика безопасности (Local Security Settings - secpol.msc) -> Параметры безопасности (Security option) -> Ищем «Сетевой доступ: модель совместного доступа и безопасности для локальных учетных записей» (Network Access: Sharing and security model for local accounts) -> изменяем политику на «Обычная -...» (Classic -...) -> Перезагружаемся и всё - проблеме конец!

Огромная просьба, отправьте это сообщение автору данного топика, т.к. я не могу этого сделать самостоятельно. Пускай он это разместит, т.к. русскоязычной части населения сети Интернет это очень сильно упростит поиск решения данной проблемы. Проблема довольно широко распространена! Но мною была замечена только на Windows XP. (Все проверялось на виртуальной машине с чистой системой). Заранее огромно спасибо!»

Windows Remote Management — это служба удаленного управления Windows. Под этим общим названием скрываются сразу два инструмента, которые позволяют пользователю . В отличие от двух предыдущих инструментов Windows( и ), которые позволяли видеть происходящее на удаленном компьютере на своем экране и манипулировать удаленным компьютером с помощью мыши и клавиатуры, данные два инструмента кардинально отличаются от них. Инструменты, которые входят в службу Windows Remote Management, позволяют управлять компьютером одними командами. Эти команды выполняются либо в командной строке, либо в Windows Power Shell. Единственный отклик об управлении - ответ оболочки о выполнении команды. Вы во многом в слепую отправляете команды на удаленный компьютер и получаете односложные ответы о том, выполнена она или нет. Минимум удобств. Но для администрирования компьютеров это самое то.

Активация Windows Remote Management

Под Windows Remote Management скрываются две команды, которые позволяют выполнять команды на удаленном компьютере. Эти команды, как уже говорилось, принадлежат двум разным оболочкам: командная строка Windows и Windows Power Shell. Думаю, все знакомы с командной строкой Windows. Ну, а Power Shell это инструмент, который призван заменить устаревшую командную строку. С первого взгляда, эти инструменты очень похожи. Но на деле Power Shell стоит выше командной строки, которая не претерпевела серьезных изменений уже очень давно. Именно в связи с этим ему и приготовили замену.

Для возможности удаленного управления компьютером средствами Windows Remote Management, целевой компьютер необходимо должным образом настроить. Для этого на целевом компьютере необходимо выполнить команду(в окне командной строки Windows):

winrm quickconfig

Данная команда включает и настраивает отложенный автоматический запуск службы Windows Remote Management(кстати, для можно так же использовать инструмент Службы), а так же настраивает соответствующие исключения для , которые необходимо для правильного функционирования этих инструментов.

Но выполнение данной команды недостаточно. Чтобы удаленные подключения стали возможными, компьютер, с которого будет вестись удаленное управление, должен стать доверенным для целевого компьютера. Дело облегчается, если оба этих компьютера находятся в одном домене — в таком случае, оба компьютера взаимодоверенные. Если же нет, то необходимо внести удаленный компьютер в список доверенных компьютеров, либо по его , либо по имени компьютера(что довольно серьезно осложняется в условиях Глобальной сети).

winrm set winrm/config/client @{TrustedHosts=«имя или IP-адрес удаленного компьютера»}

Такую команду необходимо использовать на удаленном компьютере, указав адрес того компьютера, с которого будут отправляться команды на выполнение.

Удаленное управление с помощью Windows Remote Management

Ну и наконец-то пришло время познакомится с самими командами для удаленного управления. В среде командной строки такую возможность дает команда

winrs

а в среде Power Shell — команда

Синтаксис данных команд Вы можете увидеть в самих средах, если вызовите справку по данным командам. Я же приведу только общий вид таких команд:

icm имя_компьютера {любая команда}
winrs -r: Имя_компьютера -u: имя_пользователя Любая_команда

Надеюсь, Вы разберетесь в том, что имя_компьютера , имя_пользователя и любая_команда должны быть заменены на соответствующие Вашему желанию переменные. И тут нужно учесть тот момент, что эта самая любая команда должна принадлежать той оболочке, в которой происходит удаленной управление.

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

Я использую 2 средства удаленного выполнения консольных команд: PsExec и WinRM , у каждого из них есть свои преимущества.

PsExec

Одним из отличных решений поставленной в заголовке задачи является использование программы PsExec от великого Марка Руссиновича .

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

Если PsExec запускается от имени администратора, который входит в тот же домен, что и удаленны компьютер, то никаких учетных данных даже вводить не нужно. В противном случае, их можно указать в командной строке, либо PsExec сама их запросит. PsExec работает на ОС начиная с Windows 2000 и заканчивая 64-битным Windows Server 2008 R2.

Очень полезными в PsExec являются следующие возможности:

  • Выполнение команды на группе компьютеров . Пример: следующая команда позволяет принудительно применить самые свежие групповые политики:
    psexec @group.txt gpupdate /force
  • Выполнение команд от имени системной учетной записи . Пример: следующая команда заставит удаленную систему принудительно проверить обновления:
    psexec \\computer -s wuauclt /detectnow
  • Копирование выполняемой программы на удаленный компьютер перед выполнением . Пример: следующая команда позволит обновить членство данного компьютера в группе безопасности Active Directory (токен доступа) без перезагрузки:
    psexec \\computer -c -s klist.exe purge

Трудно переоценить пользу этой программы, если использовать скрипты и возможности консольных команд, встроенных в Windows.

Windows Remote Management

Изначально это была серверная технология для удаленного управления оборудованием, которая появилась в Windows Server 2003 R2 как часть компонента Hardware Management, но недавно Microsoft выпустили пакет Windows Management Framework, который включает в себя PowerShell 2.0 и WinRM 2.0 и устанавливается на клиентские ОС как обновление. Подробности можно прочитать в статье KB968929 .

Прелесть WinRM заключается в простоте развертывания в доменной среде через WSUS в качестве факультативного обновления ОС и мощи, которую даёт совместное с PowerShell применение.

Использование WinRM происходит через 2 команды.

winrm.cmd служит для конфигурирования настроек и диагностики клиента и сервера WinRM.

Для того, чтобы сервер WinRM начал принимать команды, должна быть запущена служба Windows Remote Management и произведена её начальная конфигурация. Используйте команду

winrm quickconfig на локальной машине, либо финт ушами
psexec -s \\servername winrm quickconfig по сети, используя PsExec от имени системной учетной записи.

Будет предложено автоматически запускать службу WinRM и разрешить уделенные подключения, соглашайтесь;)

Чтобы успешно подключаться к WinRM серверу (имеется в виду серверная часть, принимающая команды), не входящему в тот же домен, что и ваш клиентский компьютер, необходимо на клиенте этот целевой сервер добавить в «доверенный список» следующей командой:

winrm set winrm/config/client @{TrustedHosts="servername"} , где вместо servername можно указать IP-адрес, либо * (звёздочку).

Для пользователей Windows Vista и Windows 7, работающим не от имени встроенного администратора (обычно так и бывает), нужно выполнить следующую команду

reg add HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\System /v LocalAccountTokenFilterPolicy /t REG_DWORD /d 1 /f

По умолчанию, установлено ограничение на 5 одновременных соединений WinRM от клиента, для увеличения этого числа выполните команду

winrm s winrm/config/winrs @{MaxShellsPerUser="X"}

winrs.exe — клиент для отправки запросов к серверной части. Пример: следующая команда принудительно перезагрузит удаленную систему…

winrs -r:servername shutdown /r /t 0

В доменной среде при отправке команд используются учетные данные запустившего пользователя. Для посыла команд от имени другого пользователя используются ключи -u:user -p:pass. Пример: следующая команда очистит локальный кэш DNS-имён на удаленной системе

winrs -r:servername -u:user -p:pass ipconfig /flushdns

Новое на сайте

>

Самое популярное