about_Remote_Requirements
Краткое описание
Описывает требования к системе и требования к конфигурации для выполнения удаленных команд в PowerShell.
Подробное описание
В этом разделе описываются требования к системе, требования пользователей и требования к ресурсам для установления удаленных подключений и выполнения удаленных команд в PowerShell. Он также содержит инструкции по настройке удаленных операций.
Примечание.
Некоторые командлеты получают объекты из подключений RPC удаленных компьютеров или сеансов WMI для удаленных подключений. Они не используют инфраструктуру удаленного взаимодействия PowerShell. Требования в этом документе не применяются к этим командлетам.
Чтобы найти командлеты с параметром ComputerName, но не используйте удаленное взаимодействие PowerShell, ознакомьтесь с описанием параметра ComputerName командлетов.
Требования к системе
В удаленном взаимодействии с Windows PowerShell используется удаленное управление Windows (WinRM), которое предоставляется Windows Management Framework (WMF). Чтобы запустить удаленные сеансы в PowerShell, локальные и удаленные компьютеры должны иметь следующее:
- Windows PowerShell 3.0 или более поздней версии
- Microsoft платформа .NET Framework 4 или более поздней версии
- Удаленное управление Windows 3.0 или более поздней версии
Для запуска удаленных сеансов в Windows PowerShell 2.0 локальные и удаленные компьютеры должны иметь следующие возможности:
- Windows PowerShell 2.0 или более поздней версии
- Microsoft платформа .NET Framework 2.0 или более поздней версии
- Удаленное управление Windows 2.0
Для полной поддержки следует использовать WMF 5.1. Дополнительные сведения о поддержке WMF см. в разделе Windows Management Framework (WMF).
Вы можете создать удаленный сеанс между компьютером под управлением Windows PowerShell 2.0 и новой версией PowerShell. Однако функции, работающие только в новых версиях PowerShell, такие как возможность отключения и повторного подключения к сеансам, доступны только в том случае, если оба компьютера работают под управлением Windows PowerShell 3.0 и более поздних версий.
Чтобы найти номер версии установленной версии PowerShell, используйте автоматическую $PSVersionTable
переменную.
PowerShell 7 и выше также поддерживает удаленное взаимодействие PowerShell по протоколу SSH. Удаленное взаимодействие PowerShell по протоколу SSH позволяет подключаться к любому узлу Windows, macOS или Linux под управлением SSH. Дополнительные сведения см. в статье о удаленном взаимодействии PowerShell по протоколу SSH.
Разрешения пользователей
Чтобы создать удаленные сеансы и запустить удаленные команды, по умолчанию текущий пользователь должен быть членом группы Администратор istrator на удаленном компьютере или предоставить учетные данные администратора. В противном случае произойдет сбой команды.
Разрешения, необходимые для создания сеансов и выполнения команд на удаленном компьютере, устанавливаются конфигурацией сеанса. Конфигурация сеанса определяет параметры конфигурации конечной точки подключения на удаленном компьютере. В частности, дескриптор безопасности в конфигурации сеанса определяет, кто имеет доступ к конфигурации сеанса и кто может использовать его для подключения.
Дескрипторы безопасности в конфигурациях сеансов по умолчанию, Microsoft.PowerShell и Microsoft.PowerShell32 разрешают доступ только к членам группы Администратор istrators.
Члены группы Администратор istrator на компьютере могут определить, кто имеет разрешение на удаленное подключение к компьютеру, изменив дескрипторы безопасности в конфигурациях сеансов по умолчанию или создав новые конфигурации сеансов с различными дескрипторами безопасности. Пользователи могут использовать параметр *-PSSession
ConfigurationName командлетов для подключения к разным конечным точкам.
Дополнительные сведения о конфигурациях сеансов см. в разделе about_Session_Configurations.
Сетевые расположения Windows
Начиная с Windows PowerShell 3.0 Enable-PSRemoting
командлет может включить удаленное взаимодействие на клиентских и серверных версиях Windows.
На серверах Windows с частными сетями и сетями домена Enable-PSRemoting
командлет создает правила брандмауэра, разрешающие неограниченный удаленный доступ. Он также создает правило брандмауэра для общедоступных сетей, которое разрешает удаленный доступ только с компьютеров в одной локальной подсети. Это правило брандмауэра локальной подсети включено по умолчанию в версиях сервера Windows в общедоступных сетях, но Enable-PSRemoting
применяет правило в случае изменения или удаления.
В клиентских версиях Windows с частными сетями и сетями домена создаются правила брандмауэра, Enable-PSRemoting
разрешающие неограниченный удаленный доступ.
Чтобы включить удаленное взаимодействие в клиентских версиях Windows с общедоступными сетями, используйте параметр SkipNetworkProfileCheck командлета Enable-PSRemoting
. Этот параметр создает правило брандмауэра, которое разрешает удаленный доступ только с компьютеров в той же локальной подсети.
Чтобы удалить ограничение локальной подсети для общедоступных сетей и разрешить удаленный доступ из всех расположений в клиентских и серверных версиях Windows, используйте Set-NetFirewallRule
командлет в модуле NetSecurity . Выполните следующую команду:
Set-NetFirewallRule -Name "WINRM-HTTP-In-TCP-PUBLIC" -RemoteAddress Any
Примечание.
Имя правила брандмауэра может отличаться для разных версий Windows. Используется Get-NetFirewallRule
для просмотра списка правил. Перед включением правила брандмауэра просмотрите параметры безопасности в правиле, чтобы убедиться, что конфигурация подходит для вашей среды.
В Windows PowerShell 2.0 на серверах Windows создаются правила брандмауэра Enable-PSRemoting
, разрешающие удаленный доступ во всех сетях.
В Windows PowerShell 2.0 в клиентских версиях Windows Enable-PSRemoting
создаются правила брандмауэра только в частных и доменных сетях. Если сетевое расположение является общедоступным, Enable-PSRemoting
завершается ошибкой.
Запуск от имени администратора
для следующих операций удаленного взаимодействия требуются привилегии Администратор istrator:
- Установка удаленного подключения к локальному компьютеру. Это обычно называется сценарием "loopback".
- Управление конфигурациями сеансов на локальном компьютере.
- Просмотр и изменение параметров WS-Management на локальном компьютере. Это параметры в узле LocalHost диска WSMAN.
Вы должны запустить PowerShell с параметром "Запуск от имени администратора", даже если вы являетесь членом группы Администратор istrators на локальном компьютере.
При запуске Windows PowerShell из другой программы, например cmd.exe
, используйте параметр запуска от имени администратора , чтобы запустить программу.
Настройка компьютера для удаленного взаимодействия
Компьютеры под управлением любой поддерживаемой версии Windows могут устанавливать удаленные подключения и запускать удаленные команды в PowerShell без какой-либо конфигурации. Однако для получения удаленных подключений необходимо включить удаленное взаимодействие PowerShell на компьютере.
Windows Server 2012 и более новые выпуски Windows Server включены для удаленного взаимодействия PowerShell по умолчанию. Если параметры изменены, можно восстановить параметры по умолчанию, выполнив Enable-PSRemoting
командлет.
По умолчанию функции удаленного взаимодействия PowerShell поддерживаются службой WinRM, которая является реализацией протокола веб-служб для управления (WS-Management). При включении удаленного взаимодействия PowerShell измените конфигурацию WS-Management по умолчанию и добавьте конфигурацию системы, которая позволяет пользователям подключаться к WS-Management.
Чтобы настроить PowerShell для получения удаленных команд, выполните следующие действия.
- Запустите PowerShell с помощью параметра "Запуск от имени администратора ".
- В командной строке введите следующий текст:
Enable-PSRemoting
.
Чтобы убедиться, что удаленное взаимодействие настроено правильно, выполните тестовую команду, например следующую команду, которая создает удаленный сеанс на локальном компьютере.
New-PSSession
Если удаленное взаимодействие настроено правильно, команда создает сеанс на локальном компьютере и возвращает объект, представляющий сеанс.
Id Name ComputerName State ConfigurationName
-- ---- ------------ ----- -----
1 Session1 localhost Opened Microsoft.PowerShell
Если команда завершается ошибкой, см. about_Remote_Troubleshooting.
Общие сведения о политиках
При удаленной работе используется два экземпляра PowerShell, один на локальном компьютере и один на удаленном компьютере. В результате работа влияет на политики Windows и PowerShell как на локальных, так и на удаленных компьютерах.
Перед подключением и установкой подключения политики на локальном компьютере применяются. При использовании подключения политики на удаленном компьютере применяются.
См. также
PowerShell