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

Выполнить команду удаленно на компьютере с Windows

У меня есть экземпляр Windows Server 2008 на Amazon EC2 (облачная вычислительная платформа Amazon, которая предоставляет виртуальные машины в облаке). У него внешний IP-адрес, и у меня есть учетная запись администратора на коробке. Я хотел бы выполнить удаленную загрузку этого экземпляра, т.е. я хочу запускать команды для загрузки, установки и настройки приложений на нем, и все это без необходимости входить в систему ни разу. Кроме того, я не могу использовать psexec на исходном компьютере.

Я понял, как это сделать с удаленным компьютером, присоединенным к домену, с помощью WMI. Однако я НЕ смог сделать для удаленного компьютера на EC2. Вот некоторые конкретные ограничения:

  1. Удаленный компьютер не является частью моего домена, поэтому нет Kerberos
  2. На удаленном компьютере нет сертификата, которому я доверяю, или наоборот

Я уверен, что столкнулся с некоторыми ограничениями авторизации / доверия. Есть ли способ запустить одну команду на пульте дистанционного управления, учитывая, что у меня есть права администратора? Я не привязан к использованию WMI, но мне нужно как-то запускать команду. Похоже, это должна быть решенная проблема.

Я использую Windows на EC2 и могу делать многое из того, о чем вы говорите - вы правы, эта проблема решена. Лучшее решение, предлагаемое поставщиками управления облаком в настоящее время для Windows, IMHO, это RightScaleпоследнее дополнение для поддержки Windows.

Я использую БЕСПЛАТНУЮ учетную запись разработчика RightScale, и они позволяют вам делать именно то, о чем вы говорите выше. Это небольшой сдвиг в традиционном управлении Windows. У них есть концепция Chef Recipes (или скриптов), которые загружаются экземплярами и запускаются во время загрузки. Это скрипт, который вы можете использовать для настройки / установки программного обеспечения. На самом деле это очень привлекательный и удивительно мощный инструмент. Если вы не хотите использовать каких-либо поставщиков управления облаком, таких как Rightscale, Scalr.net или Kaavo и т. Д., Я бы предложил запустить собственный сервер Chef или использовать аналогичные инструменты (Puppet, CfEngine и т. Д.) И использовать их для настройки и развертывания вашего облака. экземпляры. Последние новости шеф-повара релиз поддерживает клиентов Windows.

Если вы просто ищете быстрого выигрыша для удаленного выполнения команд с ноутбука / настольного компьютера на облачный экземпляр, то вы можете просто установить Windows Management Framework, которая поставляется с Powershell 2.0. Используя Powershell 2.0, вы можете выдавать удаленные команды («Invoke-Command», очень похоже на ssh) и заставлять его выполнять практически все, что вы хотите, на вашем экземпляре - отдельные строчные команды или целые сценарии. Аутентификация довольно проста без домена Windows. Вам просто нужно создать пользователя с правами администратора на рабочем столе с тем же именем пользователя и паролем, что и ваш экземпляр, и Invoke-Command будет работать.

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

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

Есть несколько руководств по восстановлению образов AMI. Вот один из Amazon: http://docs.amazonwebservices.com/AWSEC2/latest/UserGuide/index.html?creating-an-ami-windows.html