PDA

Показать полную графическую версию : [решено] Удаленное выключение ПК


The_Immortal
16-10-2016, 17:16
Всех приветствую!

Возникла задача выполнения команды (выключение машины) удаленно без задействования PsExec (т.к. он ни в какую работать не хочет) и не используя в скрипте каких-либо ожиданий. Решение через telnet в ручном режиме срабатывает, поэтому погуглив, наткнулся на утилиту plink.exe, которая работает с telnet.

Пробую делать так:
plink.exe -telnet server.com < todo.txt

todo.txt:user
qwerty
shutdown -s -t 0Но это не срабатывает.

В чем может быть проблема?


Спасибо!


P.S. Что-то я даже не могу врубиться как посмотреть, что там вообще происходит... Вызываю в cmdplink.exe -telnet server.com < todo.txt > res.txt, но res получается пустым.

Казбек
16-10-2016, 18:25
и не используя в скрипте каких-либо ожиданий »
Типа такого:
plink 192.168.1.3 -l root –pw DS_PASSWORD poweroff

Будет расцениваться как ожидание??

The_Immortal
16-10-2016, 18:30
Казбек, указанные Вами параметры (-l -pw) насколько мне известны применимы лишь к SSH. У меня же telnet.

В любом случае я попробовал и получил: FATAL ERROR: Network error: Connection timed out

Казбек
16-10-2016, 18:45
указанные Вами параметры (-l -pw) насколько мне известны применимы лишь к SSH. »

Да, вы правы.
3.8.3.6 -m: read a remote command or script from a file

The -m option performs a similar function to the ‘Remote command’ box in the SSH panel of the PuTTY configuration box (see section 4.18.1). However, the -m option expects to be given a local file name, and it will read a command from that file.

Я не ручаюсь за свой совет, но в сети пишут, что для таких целей годно использовать Telnet Scripting Tool: автоматизация telnet-сессий (http://blog.openquality.ru/telnet-scripting/)

[SOLVED] Remote shutdown for Win users (http://xpenology.com/forum/viewtopic.php?f=2&t=1325)


Ограничившись plink.exe, я считаю, что осуществить задуманное вами невозможно.

The_Immortal
16-10-2016, 19:19
Казбек, Ограничившись plink.exe, я считаю, что осуществить задуманное вами невозможно. »Вроде как можно (http://forum.oszone.net/post-1086600.html#post1086600), но у меня почему-то не получается...

Iska
16-10-2016, 20:09
т.к. он ни в какую работать не хочет »
А банальный shutdown.exe?

telnet я бы стал использовать только в изолированной сети.

The_Immortal
16-10-2016, 21:44
Iska, банальный shutdown.exe »Пардон, а как сиё запускать от имени определенного пользователя? И разве роутер пропустит такое?
Или, быть может, я Вас не так понял...

без задействования PsExec (т.к. он ни в какую работать не хочет) »Поясню почему не хочет. Для работы PsExec нужно наличие функционирующего SMB (общего доступа к папкам). У меня роутер ни в какую не хочет извне предоставлять доступ к общим папкам. Внутри сети - пожалуйста, извне - фигушки.

Iska
16-10-2016, 22:11
Пардон, а как сиё запускать от имени определенного пользователя? »
ПКМ или Shift-ПКМ, запуск от имени… Или runas.

И разве роутер пропустит такое?
Или, быть может, я Вас не так понял... »
Похоже, что это я не понимаю, что у Вас. Между Вами и удалённой машиной нет вообще никакой связи, окромя глобальной сети?

У меня роутер ни в какую не хочет извне предоставлять доступ к общим папка. Внутри сети - пожалуйста, извне - фигушки. »
И не должен. Вы же не хотите наружу «светить» ресурсами?!

Ну, а VPN как-нибудь организовать и через него в локальную сеть ходить не пробовали?

The_Immortal
16-10-2016, 23:22
Iska, runas. »А как в runas указать пароль, не подскажите? Что-то не могу додумать.

Между Вами и удалённой машиной нет вообще никакой связи, окромя глобальной сети? »Именно так.

И не должен. Вы же не хотите наружу «светить» ресурсами?! »Вообще не хочу.

Ну, а VPN как-нибудь организовать и через него в локальную сеть ходить не пробовали? »Идея, но ради одного shutdown'а делать VPN? Средства не оправдывают цель в данном случае :)

Казбек
16-10-2016, 23:26
The_Immortal,

How do I add a password to a batch file to automatically authenticate? (http://superuser.com/questions/521278/how-do-i-add-a-password-to-a-batch-file-to-automatically-authenticate)

Iska
17-10-2016, 00:18
Идея, но ради одного shutdown'а делать VPN? Средства не оправдывают цель в данном случае »
А «голым» telnet'ом светить наружу лучше? Ну, ставьте TeamViewer или что-нибудь аналогичное, подключайтесь и «гасите ручками».

The_Immortal,
How do I add a password to a batch file to automatically authenticate? »
Токмо без /savecred.

Nordek
17-10-2016, 06:37
Возникла задача выполнения команды (выключение машины) удаленно »
Запустите командную строку от имени администратора, затем используйте следующее:
net use \\имя_компьютера /user:имя_пользователя пароль && shutdown -s -f -t 0 -m \\имя_компьютера


Пример:
net use \\my_pc /user:user 12345 && shutdown -s -f -t 0 -m \\my_pc
или
net use \\192.168.0.10 /user:user 12345 && shutdown -s -f -t 0 -m \\192.168.0.10

The_Immortal
17-10-2016, 08:32
Iska, А «голым» telnet'ом светить наружу лучше? »Не лучше, соглашусь.ставьте TeamViewer или что-нибудь аналогичное»Сиё решение известно, но это не есть автоматизированный подход :)

runas »Похоже, что shutdown не хочет работать с удаленной машиной. Пытаюсь делать так:
runas /user:The_Immortal "shutdown -r -f -t 0 -m \\server.com"Далее запрашивается пароль для указанного пользователя, я ввожу правильный пароль и получаю:1326: Неверное имя пользователя или пароль.Единственное, пользователя The_Immortal на машине, откуда запускается runas, нету. Но не думаю, что это важно. Видимо, проблема в другом.


Nordek, подскажите, пожалуйста, а действие shutdown'а неразделимо связано c монтированием диска удаленной машины? Как-то я о таком вообще не знал =/
В любом случае:У меня роутер ни в какую не хочет извне предоставлять доступ к общим папкам. Внутри сети - пожалуйста, извне - фигушки. »

Да и, прислушавшись к уважаемому Iska, я осознал, что telnet/SMB - это чреватые решения. Заглянул в лог роутера после открытия telnet'а:
Oct 17 08:21:43telnetd
the maximum session count (4) reached, disconnecting ::ffff:121.187.173.101.
Oct 17 08:21:56telnetd
Syslog: last message repeated 8 times.
Oct 17 08:21:56telnetd
the maximum session count (4) reached, disconnecting ::ffff:178.158.138.81.
Oct 17 08:21:57telnetd
Syslog: last message repeated 9 times.
Oct 17 08:21:58telnetd
the maximum session count (4) reached, disconnecting ::ffff:121.187.173.101.
Oct 17 08:24:07telnetd
the maximum session count (4) reached, disconnecting ::ffff:5.225.59.105.
Oct 17 08:24:09telnetd
Syslog: last message repeated 9 times.
Oct 17 08:25:43telnetd
the maximum session count (4) reached, disconnecting ::ffff:2.180.26.60.
Oct 17 08:25:48telnetd
Syslog: last message repeated 2 times.
Oct 17 08:27:01telnetd
the maximum session count (4) reached, disconnecting ::ffff:134.196.46.86.
Oct 17 08:28:41telnetd
Syslog: last message repeated 18 times.
Oct 17 08:29:55telnetd
the maximum session count (4) reached, disconnecting ::ffff:103.217.85.154.
Oct 17 08:30:10telnetd
Syslog: last message repeated 9 times.
Oct 17 08:30:44telnetd
the maximum session count (4) reached, disconnecting ::ffff:191.177.78.227.
Oct 17 08:30:50telnetd
Syslog: last message repeated 9 times.И так постоянно. Рано или поздно ведь навредят :)


Эх, как-то я обнадежился насчет рабочего решения относительно shutdown'а, а не всё так просто :(

Iska
17-10-2016, 10:12
Единственное, пользователя The_Immortal на машине, откуда запускается runas, нету. Но не думаю, что это важно. Видимо, проблема в другом. »
А Вы попробуйте завести его там под тем же паролем.

The_Immortal
17-10-2016, 10:14
Iska, увы, это бесмысленно, т.к. клиенский компьютер находится под доменом, соответственно имена (полные имена пользователей) совпадать не будут, т.к. имя домена и компьютера в моем случае совпадать не может.

Iska
17-10-2016, 10:25
The_Immortal, тогда тем более без разговоров Вам нужен поверх глобальной сети закрытый тоннель до той локальной сети.

The_Immortal
17-10-2016, 10:40
Iska, преодолев лень, организовал PPTP :) И... Вы не поверите, проблема не решается! :)

Поясню. Да, теперь у меня есть доступ к компьютеру из локальной сети через VPN. НО! Я подсоединяюсь к cерверу (компьютер, к которому происходит подключение) абсолютно из другой (доменной) сети. Сервер ничего не знает про учетную запись mydomain\user (с которой идет подключение), соответственно у этого пользователяправ-то нет ни на что, в том числе на shutdown.

Ага, возвращаясь к баранчикам, можно использовать telnet, где будет указываться необходимый пользователь. А telnet хрен автоматизируешь...

PsExec тоже не работает:Отказано в доступеВидимо, ему для запуска нужна шара admin$, которая опять-таки недоступна...

Красота =\ Или я как всегда опять что-то не додумал?..

Nordek
17-10-2016, 11:27
а действие shutdown'а »Нужно произвести идентификацию входа, только потом команду перезагрузки.

The_Immortal
17-10-2016, 11:43
Nordek, а как быть в моем случае тогда, не подскажите?

подсоединяюсь к cерверу (компьютер, к которому происходит подключение) абсолютно из другой (доменной) сети. Сервер ничего не знает про учетную запись mydomain\user (с которой идет подключение), соответственно у этого пользователяправ-то нет ни на что, в том числе на shutdown. »



UPD: что-то я перетрудился. PsExec успешно срабатывает и в моей ситуации (при соединении через VPN). Просто задается нужный пользователь и всё.

Всем спасибо! И особенно уважаемому Iska за здраво наставленный путь! :)




© OSzone.net 2001-2012