Connect-WSMan

Подключается к службе удаленного управления Windows на удаленном компьютере.

Синтаксис

Connect-WSMan
       [-ApplicationName <String>]
       [[-ComputerName] <String>]
       [-OptionSet <Hashtable>]
       [-Port <Int32>]
       [-SessionOption <SessionOption>]
       [-UseSSL]
       [-Credential <PSCredential>]
       [-Authentication <AuthenticationMechanism>]
       [-CertificateThumbprint <String>]
       [<CommonParameters>]
Connect-WSMan
       [-ConnectionURI <Uri>]
       [-OptionSet <Hashtable>]
       [-Port <Int32>]
       [-SessionOption <SessionOption>]
       [-Credential <PSCredential>]
       [-Authentication <AuthenticationMechanism>]
       [-CertificateThumbprint <String>]
       [<CommonParameters>]

Описание

Этот командлет доступен только на платформе Windows.

Connect-WSMan Командлет подключается к службе WinRM на удаленном компьютере и устанавливает постоянное подключение к удаленному компьютеру. Этот командлет можно использовать в контексте поставщика WSMan для подключения к службе WinRM на удаленном компьютере. Однако его также можно использовать для подключения к службе удаленного управления Windows на удаленном компьютере перед изменением поставщика WSMan. Удаленный компьютер отображается в корневом каталоге поставщика WSMan.

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

Сведения об отключении службы WinRM на удаленном компьютере см. в командлете Disconnect-WSMan .

Примеры

Пример 1. Подключение на удаленный компьютер

PS C:\> Connect-WSMan -ComputerName "server01"
PS C:\> cd wsman:
PS WSMan:\>
PS WSMan:\> dir

WSManConfig: Microsoft.WSMan.Management\WSMan::WSMan

ComputerName                                  Type
------------                                  ----
localhost                                     Container
server01                                      Container

Эта команда создает подключение к удаленному компьютеру server01.

Командлет Connect-WSMan обычно используется в контексте поставщика WSMan для подключения к удаленному компьютеру, в данном случае — на компьютере server01. Однако этот командлет можно использовать для установки соединения с удаленными компьютерами перед изменением поставщика WSMan. Эти подключения отображаются в списке ComputerName .

Пример 2. Подключение на удаленный компьютер с помощью учетных данных Администратор istrator

PS C:\> $cred = Get-Credential Administrator
PS C:\> Connect-WSMan -ComputerName "server01" -Credential $cred
PS C:\> cd wsman:
PS WSMan:\>
PS WSMan:\> dir

WSManConfig: Microsoft.WSMan.Management\WSMan::WSMan

ComputerName                                  Type
------------                                  ----
localhost                                     Container
server01                                      Container

Эта команда создает подключение к удаленной системе server01 с использованием учетных данных учетной записи администратора.

Первая команда использует командлет Get-Credential для получения учетных данных Администратор istrator, а затем сохраняет их в переменной$cred. Get-Credential запрашивает пароль имени пользователя и пароля в диалоговом окне или в командной строке в зависимости от параметров системного реестра.

Вторая команда использует параметр Credential для передачи учетных данных, хранящихся в $cred Connect-WSMan. Connect-WSManзатем подключается к удаленной системе server01 с помощью учетных данных Администратор istrator.

Пример 3. Подключение на удаленный компьютер через указанный порт

PS C:\> Connect-WSMan -ComputerName "server01" -Port 80
PS C:\> cd wsman:
PS WSMan:\>
PS WSMan:\> dir

WSManConfig: Microsoft.WSMan.Management\WSMan::WSMan
ComputerName                                  Type
------------                                  ----
localhost                                     Container
server01                                      Container

Эта команда создает подключение к удаленному компьютеру server01 через порт 80.

Пример 4. Подключение на удаленный компьютер с помощью параметров подключения

PS C:\> $a = New-WSManSessionOption -OperationTimeout 30000
PS C:\> Connect-WSMan -ComputerName "server01" -SessionOption $a
PS C:\> cd wsman:
PS WSMan:\> dir

WSManConfig: Microsoft.WSMan.Management\WSMan::WSMan
ComputerName                                  Type
------------                                  ----
localhost                                     Container
server01                                      Container

В этом примере создается подключение к удаленному компьютеру server01 с помощью параметров подключения, определенных в команде New-WSManSessionOption .

Первая команда используется New-WSManSessionOption для хранения набора параметров параметров подключения в переменной $a . В этом случае для параметров сеанса задано время ожидания подключения в размере 30 секунд (30 000 миллисекунд).

Вторая команда использует параметр SessionOption для передачи учетных данных, хранящихся в переменнойConnect-WSMan$a. Connect-WSMan Затем подключитесь к удаленному компьютеру server01 с помощью указанных параметров сеанса.

Параметры

-ApplicationName

Указывает имя приложения в соединении. Значение по умолчанию для параметра ApplicationName — WSMAN. Полный идентификатор для удаленной конечной точки имеет следующий формат:

<Transport>://<Server>:<Port>/<ApplicationName>

Например: http://server01:8080/WSMAN

Службы IIS, где размещен сеанс, перенаправляют запросы с этой конечной точки в заданное приложение. Значение по умолчанию (WSMAN) подходит для большинства задач. Он предназначен для использования в ситуации, когда много компьютеров устанавливают удаленное подключение к одному компьютеру, на котором выполняется Windows PowerShell. В данном случае для повышения эффективности в службах IIS размещены веб-службы для управления (WS-Management).

Type:String
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-Authentication

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

  • Basic— Базовая схема, в которой имя пользователя и пароль отправляются в виде четкого текста на сервер или прокси-сервер.
  • Default — используйте метод проверки подлинности, реализованный протоколом WS-Management. Это значение по умолчанию.
  • Digest — Дайджест — это схема ответа на вызов, которая использует строку данных, указанную сервером, для задачи.
  • Kerberos — клиентский компьютер и сервер взаимно проходят проверку подлинности с помощью сертификатов Kerberos.
  • Negotiate — Согласование — это схема ответа на вызовы, которая ведет переговоры с сервером или прокси-сервером, чтобы определить схему, используемую для проверки подлинности. Например, значение этого параметра позволяет согласованию определить, используется ли протокол Kerberos или NTLM.
  • CredSSP — Используйте проверку подлинности поставщика поддержки безопасности учетных данных (CredSSP), которая позволяет пользователю делегировать учетные данные. Этот параметр предназначен для команд, которые выполняются на одном удаленном компьютере, но собирают данные или выполняют дополнительные команды на других удаленных компьютерах.

Внимание

CredSSP делегирует учетные данные пользователя с локального компьютера на удаленный компьютер. Это повышает угрозу безопасности при работе в удаленном режиме. Если удаленный компьютер скомпрометирован, то передаваемые на него учетные данные могут быть использованы для управления сетевым сеансом.

Type:AuthenticationMechanism
Aliases:auth, am
Accepted values:None, Default, Digest, Negotiate, Basic, Kerberos, ClientCertificate, Credssp
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-CertificateThumbprint

Задает цифровой сертификат с открытым ключом (X509) учетной записи пользователя, который располагает разрешением для выполнения этого действия. Введите отпечаток сертификата.

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

Чтобы получить отпечаток сертификата, используйте Get-Item команду Get-ChildItem или команду на диске Windows PowerShell Cert.

Type:String
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-ComputerName

Задает имя компьютера, для которого требуется выполнить операцию управления. Значение может быть полным доменным именем, NetBIOS-именем или IP-адресом. Используйте имя локального компьютера, используйте localhost или используйте точку (.), чтобы указать локальный компьютер. Локальный компьютер используется по умолчанию. Если удаленный компьютер находится в другом домене по отношению к пользователю, необходимо использовать полное имя домена. Можно передать значение этого параметра в командлет.

Type:String
Aliases:cn
Position:0
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-ConnectionURI

Указывает конечную точку соединения. Строка имеет следующий формат:

<Transport>://<Server>:<Port>/<ApplicationName>

Следующая строка представляет собой правильно отформатированное значение для этого параметра:

http://Server01:8080/WSMAN

Значение URI должно быть указано полностью.

Type:Uri
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-Credential

Указывает учетную запись пользователя с разрешением на выполнение этого действия. По умолчанию используется текущий пользователь. Введите имя пользователя, например User01, Domain01\User01или User@Domain.com. Или введите объект PSCredential , например один, возвращенный командлетом Get-Credential . При вводе имени пользователя этот командлет запрашивает пароль.

Type:PSCredential
Aliases:cred, c
Position:Named
Default value:None
Required:False
Accept pipeline input:True
Accept wildcard characters:False

-OptionSet

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

В следующем примере демонстрируется синтаксис, который передает значения 1, 2 и 3 для параметров a, b и c:

-OptionSet @{a=1;b=2;c=3}

Type:Hashtable
Aliases:os
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-Port

Указывает порт, используемый при подключении клиента к службе удаленного управления Windows. Если транспортом является HTTP, порт по умолчанию равен 80. Если транспортом является HTTPS, порт по умолчанию равен 443.

При использовании HTTPS в качестве транспорта значение параметра ComputerName должно соответствовать общему имени (CN) сертификата сервера. Но если параметр SkipCNCheck указан в составе параметра SessionOption, то общее имя сертификата сервера может отличаться от имени узла сервера. Параметр SkipCNCheck следует использовать только для доверенных компьютеров.

Type:Int32
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-SessionOption

Определяет расширенные параметры для сеанса WS-Management. Введите объект SessionOption, создаваемый с помощью командлетаNew-WSManSessionOption. Чтобы получить дополнительные сведения о доступных параметрах, введите Get-Help New-WSManSessionOption.

Type:SessionOption
Aliases:so
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-UseSSL

Указывает, что для подключения к удаленному компьютеру используется протокол SSL. По умолчанию SSL не используется.

WS-Management шифрует все содержимое Windows PowerShell, передаваемое по сети. Параметр UseSSL позволяет задать дополнительную защиту HTTPS вместо HTTP. Если протокол SSL недоступен в порту, используемом для установки соединения, и вы указываете этот параметр, команда завершается с ошибкой.

Type:SwitchParameter
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

Входные данные

None

Невозможно передать объекты в этот командлет.

Выходные данные

None

Этот командлет не возвращает выходные данные.

Примечания

Вы можете выполнять команды управления или запрашивать данные управления на удаленном компьютере без создания сеанса WS-Management. Это можно сделать с помощью параметров Invoke-WSManAction ComputerName иGet-WSManInstance. При использовании параметра ComputerName Windows PowerShell создает временное соединение, используемое для одной команды. После выполнения команды соединение закрывается.