У меня проблемы с администрированием экземпляра Windows 2k8 Server SP2 (размещенного на EC2) с помощью PowerShell из моего клиента Windows 7. Когда я пытаюсь бежать:
Invoke-Command {Get-Service} -ComputerName ec2-184-73-111-34.compute-1.amazonaws.com
Я получаю следующую ошибку:
Не удалось подключиться к удаленному серверу, появляется следующее сообщение об ошибке: Клиент WinRM не может завершить операцию в течение указанного времени. Убедитесь, что имя машины допустимо и доступно по сети, а исключение брандмауэра для службы удаленного управления Windows включено. Для получения дополнительных сведений см. Раздел справки about_Remote_Troubleshooting.
На сервере у меня есть: (1) Подключено по RDP (сервер доступен) и (2) запущен Enable-PSRemoting
На моем клиенте у меня есть: (1) Добавлен экземпляр EC2 в TrustedHosts
Я также пробовал запустить указанную выше команду на сервере с полностью отключенным брандмауэром Windows, но это тоже не решило проблему. Я также подтвердил, что для удаленного управления Windows существует исключение брандмауэра.
Учебник, на который я ссылался: http://blogs.iis.net/thomad/archive/2010/08/12/managing-windows-amazon-ec2-machines-remotely-with-powershell.aspx
На EC2 вам нужно открыть порт 5985, порт удаленного взаимодействия WinRM по умолчанию в вашей группе безопасности, чтобы вы могли подключиться к экземпляру со своего IP-адреса.
На экземпляре в облаке выполните:
winrm quickconfig -quiet
На вашей рабочей станции:
set-item wsman:\localhost\Client\TrustedHosts -value "*" -force
Invoke-Command {Get-Service} -ComputerName <hostname> -Credential administrator
И это должно вас подтолкнуть.
Обе эти машины должны находиться в одном домене. Я не понимаю, как вам это удалось. «На моем клиенте я: (1) Добавил экземпляр EC2 в TrustedHosts». не хватает. Вам нужно будет добавить сервер EC2 в свой наземный домен или сделать так, чтобы сервер EC2 был контроллером домена для этого клиента Windows7.
Другой подход к «управлению» этим сервером EC2 с земли - использование PsExec.exe из набора утилит Microsoft «SysInternals». Вы найдете эту жемчужину в их наборе бесплатных инструментов «PsTools». Итак, на подходящем для вас сайте загрузки Microsoft найдите PsTools и PsExec.
PsExec позволяет удаленно управлять машинами, находящимися за пределами вашего домена.
Тот факт, что RDP разрешен, не означает, что другие службы разрешены. Вы должны разрешить доступ к портам на целевом системном порту по порту с помощью ec2-authorize. Какой порт использует PowerShell для связи с целевой системой? Вы авторизовали этот порт?