Вы здесь

Удаленное управление компьютером Windows из командной строки

Аватар пользователя sanglyb
Опубликовано вт, 15/03/2016 - 22:32 пользователем sanglyb

Приветствую. Иногда возникают задачи когда нужно что-либо сделать на удаленном компьютере, при этом либо нет возможности подключиться по RDP, например, если вдруг сервер сильно загружен, и ему не хватит ресурсов для запуска терминальной сессии (да да, у меня такое встречалось, не сказать что часто, но бывало smiley). Либо из командной строки задачу сделать быстрее. Ну или еще как вариант, если нужно что то сделать скрытно, в том случае если пользователь в момент когда это нужно сделать работает за компьютером. Пользователям Linux с этим гораздо проще, у них есть ssh. Но и в Windows есть возможность подключаться, с позволения сказать, в командную строку.

В общем и целом на помощь к нам приходят утилиты SysInternals, а именно - pstools, а еще конкретнее - psexec из этого набора утилит. Скачать это добро можно ]]>здесь]]>.

После того как скачали, нужно эти утилиты разархивировать куда-нибудь. Я обычно на диске C: создаю папку ps, что бы удобнее было добираться до утилит. Установки они не требуют. Для того что бы подключиться к удаленному компьютеру в командной строке набираем:

c:\ps\PsExec.exe \\192.168.1.114 -u domain\user -p password cmd

За место cmd можно например запустить какой-нибудь батник или другую команду.

Видео по теме:

 

Поделитесь статьей с друзьями в соц. сетях, возможно, она будет им полезна.


Если вам помогла статья, вы можете >>отблагодарить автора<<


Комментарии

Спасибо за статью, очень полезно.
А вы можете подсказать какие нибудь варианты выключить компьютер удаленно, например с работы или из другого города надо выключить или перезагрузить какой нибудь комп из своей домашней локальной сети (возможно ли это сделать из командной строки или по ssh, не поднимая vpn).
Заранее спасибо, если найдете время ответить.

Компьютеры которые нужно выключать, как я понимаю виндовые?

Если есть возможность подключиться по ssh к домашней сети, то самое простое сделать туннель, и подключиться по RDP или VNC и выключить в графическом режиме. Еще, если подключение по SSH осуществляется к компьютеру на который можно посавить samba, то после ее установки можно выключить/перезагрузить командой:

#выключение:
net rpc -S адрес_комьюптера -U имя_пользователя shutdown -t 1 -f
#перезагрузка:
net rpc -S адрес_компьютера -U имя_пользователя shutdown -r -t 1 -f

Если нет возможности подключиться по SSH, то можно пробросить порт RDP или VNC на роутере и подключиться к ним.

Если ваш провайдер выдает серый IP, то по SSH подключиться не выйдет, и порты пробросить то же, тогда можно подключиться при помощи TeamViewer или AmmyyAdmin.

подскажите пожалуйста...подключился к другому компьютеру через psexec \\PC2 -u MiniMouse -p 1256 cmdи нужно скажем открыть на другом компьютере файл C:\Users\Public\1.txt в командной строке с того компьютера с которого подключаюсь подтверждаю команду не открывается! а непосредственно на подключенном открывается ПОЧЕМУ?  

Программы открываются, просто в нулевой сессии, а не в пользовательской, и соответсвенно окон пользователь не видит.

Если нужно запустить программу в пользовательской сессии то нужно добавить параметры -i номер сеанса, -s. Соответвественно нужно запускать программу напрямую, минуя cmd, либо запускать cmd с параметрами.

Номер сенса можно узнать командой:

quser /server:PC2

либо

quser username

В итоге команда с psexec будет иметь примерно такой вид, где 3 - номер сеанса:

c:\PsExec.exe \\PC2 -u user -p pass -i 3 -s notepad c:/1.txt

Спасибо большое за ваш ответ!хотел бы отметить что номер сеанса не обязательно вводить (по крайней мере если сеанс один - опытным путём определил)c:\PsExec.exe \\PC2 -u user -p pass -i -d -s notepad c:/1.txt-d ещё добавил к вашей команде что бы можно было не дожидаться завершения работы командыВ общем работает! ...

Оставить комментарий