Назад | Перейти на главную страницу

Ошибка удаленного выполнения Powershell на EC2

Я пытаюсь использовать удаленное выполнение PowerShell на сервере EC2. Я включил удаленное управление Windows на сервере и настроил WRM с помощью -quickconfigure.

Однако при запуске примера:

$Cred=Get-Credential Invoke-Command -Authentication Negotiate -Credential $Cred -ComputerName <servername>.eu-west-1.compute.amazonaws.com -ScriptBlock {Get-Culture}

Я получаю сообщение об ошибке:

Не удалось подключиться к удаленному серверу, появляется следующее сообщение об ошибке: Клиент WinRM не может завершить операцию в течение указанного времени. Убедитесь, что имя машины допустимо и доступно по сети, а исключение брандмауэра для службы удаленного управления Windows включено. Для получения дополнительных сведений см. Раздел справки about_Remote_Troubleshooting. + CategoryInfo: OpenError: (:) [], PSRemotingTransportException + FullyQualifiedErrorId: PSSessionStateBroken

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

Примечание: мне известно об инструменте PSExec.

Сервер и клиент не обязательно должны находиться в одном домене, однако сообщение об ошибке, которое вы получаете, мне кажется, указывает не на ошибку аутентификации, а просто на базовую ошибку сети. Существуют ли брандмауэры между вами и сервером WinRM, которые могут препятствовать этому обмену данными? Можете ли вы использовать telnet для порта 5985 на сервере WinRM? 5985 - это порт HTTP, который WinRM использует в 2008 R2.

edit: Также обратите внимание, что вам нужно будет добавить сервер WinRM в список TrustedHosts на вашем клиенте, но я не думаю, что вы дошли до этого момента.