4

Я пытаюсь подключиться к серверу Windows 2012 из Ubuntu.

winexe --user <USER> --password <SERVER> //SERVER cmd.exe 

работает просто отлично.

Тем не мение,

winexe --user <USER> --password <SERVER> //SERVER powershell.exe`

просто висит.

Он отображает:

Windows PowerShell
Copyright (C) 2012 Microsoft Corporation. All rights reserved.

но после этого он просто зависает и не реагирует на нажатия клавиш.

Есть ли параметр, который мне нужно передать в powershell, чтобы он работал в интерактивном режиме или что-то еще?

РЕДАКТИРОВАТЬ

Если я запускаю приведенную выше команду через strace, она, похоже, ждет, пока сервер отправит что-то обратно.

epoll_wait(4, {}, 1, 10)                = 0
epoll_wait(4, {}, 1, 10)                = 0
epoll_wait(4, {}, 1, 10)                = 0

4 ответа4

0

Пытаться

winexe --interactive=1 --user<USER> --password <SERVER> //SERVER powershell.exe

0

Powershell кажется "программой Windows Gui", которая пытается взаимодействовать с рабочим столом. Очевидно, что это невозможно, если подключен удаленно (возможно, в Windows XP). Чтобы быть интерактивным и подключить вход PowerShell к стандартному вводу, используйте «-Command -».

Который позволяет PowerShell взаимодействовать с STDIN. Вы можете вводить команды и видеть вывод, но вы не получаете подсказку от powershell.

0

Winexe звучит довольно устаревшим и не заявляет о поддержке Windows Server 2008 и более новых версий Windows.

PowerShell вышел с открытым исходным кодом, вы можете скачать пакеты Ubuntu 14.04 и 16.04 .deb с GitHub:
https://github.com/PowerShell/PowerShell

После установки вы можете удаленно подключиться к компьютеру под управлением Windows Server 2012 с помощью командлета Enter-PSSession PowerShell.

0

Самый простой способ - запустить команду напрямую, используя одинарные кавычки. Например, перечисление процессов может быть сделано следующим образом:

winexe -U "Domain\PC-Name" //IP Address 'powershell.exe Get-Process'

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .