Як запустити машини VMWare або будь-яку іншу програму дистанційно на вікнах за допомогою ssh?


0

У мене є хороша 8-ядерна машина Windows 7, де я розгорнув кілька віртуальних машин на робочій станції VMWare. Я хочу мати можливість запускати віртуальну машину віддалено, виконуючи щось на зразок "vmrun -T ws H: VMWare VM1 VM1.vmx nogui". Можна припустити, що завжди є користувач, який увійшов у хост, і він завжди один і той же.

Команда виконується локально, але проблема полягає в тому, що я намагаюся запустити її віддалено.

Виконувати це з ssh з cygwin неможливо, тому що якимось чином vmrun потребує доступу до локального екрану, який, на мою думку, неможливий у ssh у cygwin, оскільки він працює як служба Windows. Я знаю, що я можу написати пару додатків, щоб обійти проблему, одну з яких було запущено під час входу користувача, а інший викликається віддаленим користувачем, який надсилає команди до першого за допомогою IPC. У мене є сильне відчуття, що хтось вже написав таке додаток, тому мені не потрібно витрачати час на винахід колеса.

Я не думаю, що інші способи комунікації, які покладаються на повноваження Windows, є достатньо безпечними, тому я вважаю за краще не використовувати такі інструменти, як psexec, які можна легко понюхати і розшифрувати за допомогою таблиць веселки (у мене немає сервера радиуса). А може, я помиляюся і вони дійсно безпечні?

Відповіді:


0

Я роблю це все час, використовуючи Cygwin ssh Щоб перенести вперед до 3389. Тоді ви можете перетворити RDP у вашу робочу станцію (яка знаходиться на туннелі ssh, щоб уникнути вашої турботи про повноваження вікон), запустити робочу станцію VM, відтворити і віртуальні машини, які ви хочете, і вийти.


Так, це рішення, яке я використовую в даний час, але краще уникати його, оскільки його не можна записати. У мене є 8 віртуальних машин, і було б дуже здорово, щоб вони могли запускатися послідовно.
Adam Ryczkowski

0

Ви можете виконати команду віддалено досить легко PsExec. Звичайно, він працює на механізмах автентифікації Windows.


0

Нарешті, я знайшов рішення, яке мені найбільше підходить:

Справа в тому не до запустити sshd як службу Windows, але з персонального запуску користувача (можливо, як приховане вікно). Це все. Єдиний трюк тут полягає в тому, що мені потрібно запустити його як підвищений процес.

Щоб запустити cygwin sshd в інтерактивному режимі в Windows 7, необхідно виконати такі дії. (Я припускаю, що cygwin встановлюється на C:\cygwin, і що він містить openssh пакет):

  1. Встановіть sshd служби в аплеті "Адміністрування" для служб "Ручне запуск" або "Вимкнено"
  2. Отримайте право власності C:\cygwin\var\empty папки
  3. (необов'язково - для налагодження) Переконайтеся, що під час запуску /usr/bin/sshd -D Під підвищеним запрошенням cygwin ви отримаєте ssh доступ до вашого хосту.
  4. (необов'язково - для налагодження) Переконайтеся, що під час запуску C:\cygwin\bin\run -p C:\cygwin\bin /usr/sbin/sshd -D з піднятого командного рядка ви все одно отримаєте такий же доступ, як у пункті 3. Пам'ятайте, щоб вбити sshd.exe після цього за допомогою менеджера завдань.
  5. Створіть нове завдання, яке запускає цю команду під підвищеними обліковими даними відразу після входу. Подивитися цей потік форуму, щоб побачити, як це зробити
  6. Увійдіть з ssh у віддалений хост і запустіть vmrun -T ws start ... команду, як ви це робите локально, і все працює, як очікувалося.

Я сподіваюся, що це допоможе тим з вас, хто воліє дотримуватися авторизації ssh для виконання адміністративних завдань.

Зауважте, що для того, щоб він працював, користувачеві необхідно фактично увійти в хост (я вважаю, що краще це робити в інтерактивному режимі (тобто не через rdp), але я не перевірив цю теорію) тому це рішення найкраще підходить для домашньої мережі / мережі малого офісу, і, можливо, він не підходить для виділеного сервера, якщо ви не налаштуєте його за допомогою "autologon" (але автолог має власні проблеми безпеки, які можуть легко компенсувати переваги відключення $ ADMIN частка)

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.