Меню Рубрики

Настройка winrm windows server 2012 r2

Удаленный доступ по WinRM через PowerShell для неадминистраторов

По умолчанию для удаленного подключения к компьютеру с помощью PowerShell (PowerShell Remoting) нужны права администратора. В этой статье мы покажем, как с помощью группы безопасности, групповой политики и изменения дескриптора сессии PoSh, предоставить права на подключение через PowerShell Remoting (WinRM) для рядовых пользователей без прав администратора.

При попытке создать сессию PowerShell с удаленным компьютером из-под обычного пользователя (Enter-PSSession msk-server1) появляется ошибка доступа:

Enter-PSSession : Connecting to remote server msk-server1 failed with the following error message : Access is denied.

Удаленный доступ к WinRM и группа Remote Management Users

Проверим стандартные разрешения для сессии PoSh:

(Get-PSSessionConfiguration -Name Microsoft.PowerShell).Permission

Как мы видим, доступ разрешен для следующих встроенных групп:

  • BUILTIN\Administrators — AccessAllowed,
  • BUILTIN\Remote Management Users — AccessAllowed

Таким образом, чтобы пользователь мог удаленно подключаться через WinRM, ему достаточно состоять во встроенной локальной группе безопасности администраторов или Remote Management Users (группа создается в системе, начиная с версии PowerShell 4.0, имеющегося по умолчанию в Windows 8 / Windows Server 2012 и выше). Данная группа также предоставляется доступ к ресурсам WMI через управляющие протоколы (например, WS-Management)

Нужного пользователя можно включить в группу через оснастку управления компьютером:

net localgroup «Remote Management Users» /add aapetrov2

В том случае, если подобный доступ нужно предоставить на множестве компьютеров, можно воспользоваться групповой политикой. Для этого назначьте GPO на нужные компьютеры, и политике Computer Configuration -> Windows Settings -> Security Settings -> Restricted Groups добавьте новую групп у Remote Management Users и включим в нее учетные записи или группы, которым нужно предоставить доступ к WinRM.

После включения пользователя в группу Remote Management Users, он сможет создавать удаленную сессию PowerShell с помощью Enter-PSSession или запускать команды с помощью Invoke-Command. Права пользователя в данной сессии будут ограничены его правами на машине.

Проверьте, заработало ли удаленное подключение.

Дескриптор безопасности сессии PowerShell

Еще один способ быстро дать пользователю права на использование PowerShell Remoting без включения его в локальную группу безопасности Remote Management Users заключается в модификации дескриптора безопасности текущей сессии Microsoft.PowerShell на локальном компьютере. Этот способ позволит быстро временно (до следующей перезагрузки) предоставить отдельному пользователю права на удаленное подключение через PowerShell.

Следующая команда открывает лист текущих разрешений:

Set-PSSessionConfiguration -Name Microsoft.PowerShell -showSecurityDescriptorUI

В данном диалоговом окне нужно добавить пользователя или группу и предоставить ему права Execute (Invoke) .

После сохранения изменений система запросит подтверждение на перезапуск службы WinRM.

В том случае, если нужно изменить дескриптор безопасности автоматизировано (без GUI), придется сначала внести изменения вручную, а потом получить текущий дескриптор доступа в формате SDDL.

(Get-PSSessionConfiguration -Name «Microsoft.PowerShell»).SecurityDescriptorSDDL

В нашем примере, команда вернула дескриптор

Затем можно использовать данную SDDL строку для предоставления доступа к PowerShell на любом другом сервере.

$SDDL = “O:NSG:BAD:P(A;;GA;;;BA)(A;;GXGR;;;S-1-5-21-2373142251-3438396318-2932294317-23761992)(A;;GA;;;RM)S:P(AU;FA;GA;;;WD)(AU;SA;GXGW;;;WD)”
Set-PSSessionConfiguration -Name Microsoft.PowerShell -SecurityDescriptorSddl $SDDL

Удаленное управление Hyper-V также требует прав WinRM

В Windows 10 /Windows Server 2016 для удаленного подключения к серверу Hyper-V с помощью Hyper-V Manager стал использоваться протокол PowerShell Remoting. Таким образом, по умолчанию удаленные пользователи без прав администратор не смогут управлять сервером Hyper-V, даже при наличии разрешений в Hyper-V.

При попытке подключиться к серверу Hyper-V с компьютера Windows 10 под обычным пользователем появится ошибка.

An error occurred while attempting to connect to server “server1”, Check that the Virtual Machine Management service is running and that you are authorized to connect to the server

Чтобы разрешить удаленное подключение к консоли достаточно аналогично добавить пользователя Hyper-V в локальную группу Remote Management Users.

Источник

Как активировать Windows Remote Management с помощью групповой политики

В этой статье, я попытаюсь рассказать, каким образом можно централизованно активировать и настроить службу Windows Remote Management (WinRM) на всех целевых компьютерах с помощью групповой политики. Напомню, что Windows Remote Management – это специальный сервис, позволяющий администраторам получить возможность удаленного доступа и управления клиентскими и серверными ОС Windows (и, думаю, если вы ранее пользовались набором утилит Microsoft Sysinternals PSTools, то WRM должен вам понравиться).
Возьмем обычный ПК с Windows 7, который включен в домен, и на котором не активирована функция Windows Remote Management. В командной строке введем следующую команду:


, должно появиться следующее сообщение об ошибке, свидетельствующее о том, что WRM не установлен:
WSMan Fault. The client cannot connect to the destination specified in the request. Error number: — 2144108526 0x80338012

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

В том случае, если нужно настроить WinRM на группе компьютеров, то можно воспользоваться специальными параметрами групповой политики. Интересующая нас политика находится в разделе: Computer Configuration -> Policies -> Windows Components -> Windows Remote Management (WinRM) -> WinRM Service. Нужно активировать следующие параметры:
• Allow automatic configuration of listeners
• Allow Basic Authentication


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

Затем в разделе Computer Configuration -> Policies -> Windows Components -> Windows Remote Shell активируем пункт:
• Allow Remote Shell Access

И, наконец, нужно задать тип запуска у службы Windows Remote Service в «Автоматический» (Automatically). Напомню, что управлять способом запуска служб можно из следующего раздела групповых политик: Computer Configuration -> Windows Settings -> Security Settings ->System Services.

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


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

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

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

Источник

Настройка WinRM на Windows Server

Article Index
Настройка WinRM на Windows Server
Настройка WinRM
Настройка WinRM с использованием HTTPS
Заключение
All Pages

Бывают случаи, когда требуется выполнить какую-либо команду на сервере локально (например, сконфигурировать iSCSI Initiator). Подключаться для этого через Remote Desktop и запускать cmd — неудобно, использовать Telnet — небезопасно, ставить на сервер демона ssh — не. хочется.

Специально для таких случаев, Microsoft, начиная с Windows Server 2003 R2, снабдила администраторов новым средством управления — Windows Remote Management (WinRM), позволяющим удаленно выполнять команды, используя стандартные средства ОС, и обеспечивая при этом должный уровень безопасности.

Вам даже не придется устанавливать дополнительных программ и компонентов — все, что называется, включено:

В качестве примера я рассмотрю процесс настройки WinRM на Windows Server 2008. Эта процедура никак не отличается от настройки WinRM, например, на Windows Vista или Hyper-V Server.

Проще всего WinRM настроить можно, используя режим быстрой конфигурации, набрав в CMD:

winrm quickconfig

и ответив утвердительно (‘y‘) на вопрос о создании нового объекта-listener’а, прослушающего порт TCP 80, и использующего протокол HTTP для коммуникаций между клиентом и сервером.

И все, сервером можно управлять удаленно, используя команду:

,где — имя или IP адрес сервера, к которому осуществляется подключение;
— удаленная команда, которую требуется выполнить.

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

winrs -r: -u: -p:

, а заодно, как советует появившееся сообщение, добавить сервер в список доверенных узлов, либо использовать более надежный протокол для коммуникации (HTTPS).

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

winrm set winrm/config/client @ [, ]»>

После настройки вы можете получить информацию о существующих listener’ах с помощью команды:

winrm enumerate winrm/config/listener

Удалить существующий listener можно следующим образом:

winrm delete winrm/config/listener?Address=*+Transport=HTTPS

Настройка WinRM с использованием HTTPS

В ряде случаев вам может потребоваться создать надежный канал для безопасной пересылки команд между клиентом и сервером. Для этого можно использовать HTTPS.

Однако, для создания listener’а с поддержкой HTTPS вам потребуется цифровой сертификат, который можно запросить у доверенного Центра Сертификации, либо воспользоваться различными утилитами по созданию самоподписанных (самозаверенных) сертификатов, например, Makecert, входящей в состав Windows SDK. Скачать Makecert отдельно можно отсюда.

Для создания самоподписанного серитификата выполните следующую команду:

makecert -a sha1 -r -pe -n «CN= » -eku 1.3.6.1.5.5.7.3.1 -ss my -sr localmachine -sky Exchange -sp «Microsoft RSA SChannel Cryptographic Provider» -sy 12 -m 12

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

Сертификат с закрытым ключем будет создан и помещен в хранилище сертификатов локального компьютера. Добавьте его к доверенным корневым сертификатам:

certutil -addstore root cert.cer

Теперь просмотрите хранилище сертификатов, найдите там требуемый сертификат и запишите его Thumbprint (Cert Hash):

certutil -store my

Наконец, можно приступать к созданию HTTPS listener. Введите команду:

winrm create winrm/config/Listener?Address=*+Transport=HTTPS @ «;CertificateThumbprint=» «;Port=» «>

,где — имя, которое указывается при обращении к серверу
— Thumbprint, который вы узнали на предыдущем шаге (без пробелов).
— порт, на который будет подключаться клиент (TCP 443 по-умолчанию).

Если на сервере включен брандмауэр Windows, не забудьте добавить правило:

netsh advfirewall firewall add rule name=»allow WinRM on 4443″ protocol=TCP dir=in localport=4443 action=allow

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

После выполнения всех шагов, вы, наконец, получите возможность удаленного выполнения команд:

Обратите внимание, что в случае использования нестандартного порта, вам потребуется специально его указать. Чтобы не делать этого каждый раз, вы можете изменить стандартный порт, который клиент использует при подключении по HTTPS, с помощью команды:

winrm set winrm/config/client/DefaultPorts @

Заключение

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

Источник

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *

  • Настройка windows в режиме аудита
  • Настройка windows агента zabbix
  • Настройка windows xp под mach3
  • Настройка windows vista настройка wifi
  • Настройка windows vista business