- Windows Remote Management на службе системного администратора.
- Управляем службами Windows с помощью PowerShell
- ПОЛУЧАЕМ СТАТУС СЛУЖБЫ
- ПОЛУЧАЕМ СТАТУС СЛУЖБЫ НА УДАЛЕННЫХ КОМПЬЮТЕРАХ
- ОСУЩЕСТВЛЯЕМ ФИЛЬТРАЦИЮ (ИСПОЛЬЗУЯ WHERE-OBJECT)
- ЗАВИСИМЫЕ СЛУЖБЫ
- Настройка удаленного управления в диспетчер сервера Configure remote Management in Server Manager
- Включение и отключение удаленного управления Enabling or disabling remote management
Windows Remote Management на службе системного администратора.
Я опишу процесс, каким образом можно централизованно активировать и настроить службу Windows Remote Management (WinRM) на всех целевых компьютерах с помощью Group Security Policy. Windows Remote Management – это специальный сервис, позволяющий администраторам получить возможность удаленного доступа и управления клиентскими и серверными ОС Windows.
Возьмем обычный ПК с Windows 7, который включен в домен, и на котором не активирована функция Windows Remote Management. В командной строке введем следующую команду:
Запустим командную строку с правами администратора.
WinRM enumerate winrm/config/listener
, должно появиться следующее сообщение об ошибке, свидетельствующее о том, что 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
Управляем службами Windows с помощью PowerShell
Начинаем серию переводов, посвященную управлению службами Windows с помощью PowerShell 2.0 и 3.0.
В данном посте будут рассмотрены следующие вопросы управления службами Windows:
- Получаем статус службы на локальном компьютере
- Получаем статус службы на удаленном компьютере
- Осуществляем фильтрацию служб (например, остановленные службы)
- Зависимые службы
Обозначим начальные условия: Вы работаете под Windows 7 и выше и у Вас имеются права администратора. Все команды рекомендуются выполнять в лабораторной или виртуальной среде, перед тем, как применять в “полевых условиях”.
ПОЛУЧАЕМ СТАТУС СЛУЖБЫ
Давайте начнем с того, что просто получим статус всех служб, запущенных на локальном компьютере. Используем для этого командлет Get-Service.
PowerShell, как правило, не чувствителен к регистру. Вывод приведен на скриншоте ниже.
Каждая строка представляет собой объект службы (service object).Каждый сервисный объект, как правило, имеет свои свойства. Вы можете открыть их, просто передав эти объекты в другую команду, Get-Member.
Результаты приведены на скриншоте ниже.
Параметр Typename сверху говорит о том, что за объект перед нами; в данном случае это System.ServiceProcess.ServiceController. На скриншоте также обведены свойства объекта. Это атрибуты, которые описывают этот тип объекта. Хотя большинство из них не используются при отображении по умолчанию, вы можете использовать их, если вы их знаете.
Например, нам интересно посмотреть информацию только о Windows Update. Через Get-Service получим информацию только о некоторых ее свойствах.
Как я узнал, что могу напечатать имя службы? Посмотрел с помощью Get-Service.
PS C:\> help get-service
Вы можете получить полную справочную информацию, напечатав:
Информацию о службе можно получить по ее имени или даже начальным буквам имени.
Или если вам удобнее работать с отображаемыми именами, используйте параметр –Displayname.
Я должен использовать имя параметра, чтобы PowerShell воспринимал значения в качестве отображаемого имени, а не фактического имени службы. Команда будет выглядеть так:
Параметр –Name можно не печатать.
ПОЛУЧАЕМ СТАТУС СЛУЖБЫ НА УДАЛЕННЫХ КОМПЬЮТЕРАХ
До этого нас интересовало получение информации о статусе служб на локальном компьютере. Однако управление службами осуществляется на удаленных компьютерах. Если посмотреть справку по Get-Service, то можно увидеть наличие у этого командлета параметра –Computername. В данном случае подключение к удаленным компьютерам осуществляется без включения функции удаленного управления PowerShell. Если вы можете управлять службами, используя инструменты командной строки (sc.exe или консоль управления Service Manager), вы можете использовать PowerShell. Давайте взглянем на пример:
Любая команда, которую я демонстрировал, можно использовать для передачи удаленному компьютеру. Даже нескольким компьютерам, если у вас есть соответствующие права на удаленном компьютере. Если вы используете PowerShell v3, то можно легко выбрать одну службу на множестве компьютеров.
Для наглядности представления отформатируем вывод.
Тот же самый результат, но в PowerShell v2.
ОСУЩЕСТВЛЯЕМ ФИЛЬТРАЦИЮ (ИСПОЛЬЗУЯ WHERE-OBJECT)
Фильтрация служб осуществляется с помощью командлета Where-Object (where – сокращение для командлета). Все, что нам нужно от PowerShell в этом случае, так это получить только те службы, у которых статус равен “stopped”.
PowerShell получает информацию обо всех службах и передает их (с помощью “|”) в следующую команду, которая осуществляет просмотр каждого объекта. Если свойство статуса объекта равно “stopped”, она остается в конвейере (pipeline), в противном случае она из него исключается. В конце выражение PowerShell отображает те объекты, которые остались в конвейере.
Результаты приведены ниже.
Теперь давайте попробуем найти одну службу на нескольких машинах. Вывод отформатируем в таблицу.
Мы даже можем комбинировать запрос отдельных служб с их фильтрацией.
Эта команда находит все службы на компьютере CHI-DC03, которые начинаются с ‘WIN’, но отображает только те, которые запущены.
Также можно сгруппировать объекты по свойству статуса (status property).
Переменная $dc03 является объектом GroupInfo.
Свойство Group представляет собой коллекцию связанных служб.
Написанное выше проще понять, если взглянуть на скриншот.
Что касается меня, то я бы предпочел использовать хеш-таблицу.
Теперь каждое имя представляет собой свойство в хеш-таблице. Если у вас имеется опыт работы с PoweShell, вы, возможно, подумываете сделать сделующее:
Однако ничего не произойдет. Потому что свойство Status является просто перечислением (enumeration) для [System.ServiceProcess.ServiceControllerStatus] .NET клас и такие свойства, как Running и Stopped представляют собой целые числа. PowerShell осуществляет конвертацию, чтобы представить в более наглядной форме.
В чем суть параметра –AsString, на мой взгляд, достаточно очевидно. Теперь работать с хеш-таблицей стало проще.
Следующей задачей на повестке дня является проверка зависимостей сервера (server dependencies).
Требуемые службы
PowerShell позволяет просто получить статус всех служб, которые требуется для данной службы, даже на удаленном компьютере.
Параметр –RequiredServices передаст объект в конвейер для каждой требуемой службы. Вы можете даже пойти дальше и проверить требуемые службы для работы данной службы.
Параметр –Computername командлета Get-Service возьмет вывод, но только для тех объектов, у которых есть объект свойство Computername – именно поэтому я использую хеш-таблицу с Select-Object. Как мы видим проблем со службой DNS на компьютере CHI-DC03 нет.
ЗАВИСИМЫЕ СЛУЖБЫ
Мы можем сделать то же самое с зависимыми службами. Если таковых не имеется, в конвейер ничего передано не будет.
Требуемые и зависимые службы также являются частью каждого объекта службы.
А пока Вы можете получить все зависимости для всех служб, следующая команда
Это не даст вам особо полезную информацию, поэтому я рекомендую осуществлять запрос по конкретным службам. Команда работает гораздо лучше PowerShell v3.
Результаты видны на скриншоте ниже.
Чтобы получить подобные результаты в PowerShell v2, вам придется передать имена компьютеров (computernames) в Get-Service.
В следующей статье будет рассмотрен запуск, остановка и перезапуск служб.
Конец перевода.
Настройка удаленного управления в диспетчер сервера Configure remote Management in Server Manager
Область применения. Windows Server (Semi-Annual Channel), Windows Server 2016, Windows Server 2012 R2, Windows Server 2012 Applies To: Windows Server (Semi-Annual Channel), Windows Server 2016, Windows Server 2012 R2, Windows Server 2012
В Windows Server можно использовать диспетчер сервера для выполнения задач управления на удаленных серверах. In Windows Server, you can use Server Manager to perform management tasks on remote servers. удаленное управление включено по умолчанию на серверах под управлением Windows Server 2016. remote management is enabled by default on servers that are running Windows Server 2016. Чтобы удаленно управлять сервером с помощью диспетчер сервера, необходимо добавить сервер в пул серверов диспетчер сервера. To manage a server remotely by using Server Manager, you add the server to the Server Manager server pool.
Диспетчер сервера можно использовать для управления удаленными серверами, на которых работают старые версии Windows Server, но для полного управления этими старыми операционными системами необходимо выполнить следующие обновления. You can use Server Manager to manage remote servers that are running older releases of Windows Server, but the following updates are required to fully manage these older operating systems.
Чтобы управлять серверами под управлением Windows Server версии более ранних, чем Windows Server 2016, установите следующее программное обеспечение и обновления, чтобы сделать более старые выпуски Windows Server управляемыми с помощью диспетчер сервера в Windows Server 2016. To manage servers that are running Windows Server releases older than Windows Server 2016, install the following software and updates to make the older releases of Windows Server manageable by using Server Manager in Windows Server 2016.
Операционная система Operating System | Необходимое программное обеспечение Required Software | Управляемость Manageability |
---|---|---|
Windows Server 2012 R2 или Windows Server 2012 Windows Server 2012 R2 or Windows Server 2012 | — Платформа .NET Framework 4,6 — .NET Framework 4.6 — Windows Management Framework 5,0. — Windows Management Framework 5.0. В Windows Server 2012 R2, Windows Server 2012 и Windows Server 2008 R2 поставщики инструментарий управления Windows (WMI) загрузить обновления для пакета управления Microsoft Management Framework 5,0 (WMI). The Windows Management Framework 5.0 download package updates Windows Management Instrumentation (WMI) providers on Windows Server 2012 R2 , Windows Server 2012 , and Windows Server 2008 R2 . Обновленные поставщики WMI позволяют диспетчер сервера собираются сведения о ролях и компонентах, установленных на управляемых серверах. The updated WMI providers let Server Manager collect information about roles and features that are installed on the managed servers. До применения обновления серверы, работающие под управлением Windows Server 2012 R2, Windows Server 2012 или Windows Server 2008 R2, имеют состояние управляемости недоступно. Until the update is applied, servers that are running Windows Server 2012 R2 , Windows Server 2012 , or Windows Server 2008 R2 have a manageability status of Not accessible. — Обновление для повышения производительности, связанное с статьей базы знаний 2682011 , больше не требуется на серверах под управлением windows Server 2012 R2 или windows Server 2012. — The performance update associated with Knowledge Base article 2682011 is no longer necessary on servers that are running Windows Server 2012 R2 or Windows Server 2012 . | |
Windows Server 2008 R2 Windows Server 2008 R2 | — Платформа .NET Framework 4,5 — .NET Framework 4.5 — Windows Management Framework 4,0. — Windows Management Framework 4.0. Windows Management Framework 4,0 downloads Package Updates инструментарий управления Windows (WMI) (WMI) providers in Windows Server 2008 R2. The Windows Management Framework 4.0 download package updates Windows Management Instrumentation (WMI) providers on Windows Server 2008 R2 . Обновленные поставщики WMI позволяют диспетчер сервера собираются сведения о ролях и компонентах, установленных на управляемых серверах. The updated WMI providers let Server Manager collect information about roles and features that are installed on the managed servers. До применения обновления серверы, работающие под управлением Windows Server 2008 R2, имеют состояние управляемости недоступно. Until the update is applied, servers that are running Windows Server 2008 R2 have a manageability status of Not accessible. — Обновление производительности, связанное с статьей базы знаний 2682011 , позволяет диспетчер сервера собираются данные производительности с Windows Server 2008 R2. — The performance update associated with Knowledge Base article 2682011 lets Server Manager collect performance data from Windows Server 2008 R2 . | |
Windows Server 2008 Windows Server 2008 | — Платформа .NET Framework 4 — .NET Framework 4 — Windows Management Framework 3,0 Windows Management Framework 3,0 downloads Package Updates инструментарий управления Windows (WMI) (WMI) providers in Windows Server 2008. — Windows Management Framework 3.0 The Windows Management Framework 3.0 download package updates Windows Management Instrumentation (WMI) providers on Windows Server 2008 . Обновленные поставщики WMI позволяют диспетчер сервера собираются сведения о ролях и компонентах, установленных на управляемых серверах. The updated WMI providers let Server Manager collect information about roles and features that are installed on the managed servers. Пока обновление не будет применено, серверы, работающие под управлением Windows Server 2008, имеют состояние управляемости недоступно. Проверьте более ранние версии запуска Windows Management Framework 3,0. Until the update is applied, servers that are running Windows Server 2008 have a manageability status of Not accessible — verify earlier versions run Windows Management Framework 3.0. — Обновление производительности, связанное с статьей базы знаний 2682011 , позволяет диспетчер сервера собираются данные производительности с Windows Server 2008. — The performance update associated with Knowledge Base article 2682011 lets Server Manager collect performance data from Windows Server 2008 . |
подробные сведения о добавлении серверов в рабочих группах для управления и управления удаленными серверами с компьютера рабочей группы, на котором работает диспетчер сервера, см. в разделе Добавление серверов в Диспетчер сервера. for detailed information about how to add servers that are in workgroups to manage, or manage remote servers from a workgroup computer that is running Server Manager, see add Servers to Server Manager.
Включение и отключение удаленного управления Enabling or disabling remote management
В Windows Server 2016 удаленное управление включено по умолчанию. In Windows Server 2016, remote management is enabled by default. Перед тем как подключиться к компьютеру под управлением Windows Server 2016 удаленно с помощью диспетчер сервера, на конечном компьютере должен быть включен диспетчер сервера удаленное управление, если оно было отключено. Before you can connect to a computer that is running Windows Server 2016 remotely by using Server Manager, Server Manager remote management must be enabled on the destination computer if it has been disabled. В процедурах данного раздела описано, как отключить удаленное управление и как его вновь включить, если оно было отключено. The procedures in this section describe how to disable remote management, and how to re-enable remote management if it has been disabled. В консоли диспетчер сервера состояние удаленного управления для локального сервера отображается в области Свойства на странице локальный сервер . In the Server Manager console, the remote management status for the local server is displayed in the Properties area of the Local Server page.
Локальные учетные записи с правами администратора, за исключением встроенной учетной записи администратора, могут не иметь права на удаленное управление сервером, даже если удаленное управление включено. Local administrator accounts other than the built-in Administrator account may not have rights to manage a server remotely, even if remote management is enabled. Параметр реестра LocalAccountTokenFilterPolicy удаленного контроля учетных записей (UAC) должен быть настроен на разрешение локальных учетных записей группы администраторов, отличной от встроенной учетной записи администратора, для удаленного управления сервером. The remote User Account Control (UAC) LocalAccountTokenFilterPolicy registry setting must be configured to allow local accounts of the Administrators group other than the built-in administrator account to remotely manage the server.
В Windows Server 2016 диспетчер сервера полагается на службу удаленного управления Windows (WinRM) и распределенную модель объектов (DCOM) для удаленного взаимодействия. In Windows Server 2016, Server Manager relies on Windows remote Management (WinRM) and the Distributed component Object model (DCOM) for remote communications. Параметры, которые управляются диалоговым окном Настройка удаленного управления , влияют только на части Диспетчер сервера и Windows PowerShell, которые используют WinRM для удаленного взаимодействия. The settings that are controlled by the Configure remote Management dialog box only affect parts of Server Manager and Windows PowerShell that use WinRM for remote communications. Они не влияют на части диспетчер сервера, использующие DCOM для удаленного взаимодействия. They do not affect parts of Server Manager that use DCOM for remote communications. Например, диспетчер сервера использует WinRM для взаимодействия с удаленными серверами под управлением Windows Server 2016, Windows Server 2012 R2 или Windows Server 2012, но использует DCOM для связи с серверами, работающими под управлением Windows Server 2008 и Windows Server 2008 R2, но не применяют обновления Windows Management framework 2008 или windows Management Framework 4,0 . For example, Server Manager uses WinRM to communicate with remote servers that are running Windows Server 2016, Windows Server 2012 R2, or Windows Server 2012, but uses DCOM to communicate with servers that are running Windows Server 2008 and Windows Server 2008 R2, but do not have the Windows Management Framework 4.0 or Windows Management Framework 3.0 updates applied. Консоль управления Microsoft (MMC) и другие средства управления прежними версиями используют DCOM. Microsoft Management Console (mmc) and other legacy management tools use DCOM. Дополнительные сведения об изменении этих параметров см. в разделе Настройка MMC или другого средства удаленное управление по протоколу DCOM этой статьи. For more information about how to change these settings, see To configure mmc or other tool remote management over DCOM in this topic.
Процедуры этого раздела можно выполнить только на компьютерах, работающих под управлением Windows Server. Procedures in this section can be completed only on computers that are running Windows Server. Вы не можете включить или отключить удаленное управление на компьютере под управлением Windows 10 с помощью этих процедур, так как клиентскую операционную систему нельзя управлять с помощью диспетчер сервера. You cannot enable or disable remote management on a computer that is running Windows 10 by using these procedures, because the client operating system cannot be managed by using Server Manager.
Чтобы включить удаленное управление WinRM, выберите одну из следующих процедур. To enable WinRM remote management, select one of the following procedures.