Board logo

标题: 如何shutdown让对方的机器在不登陆的情况下关机 [打印本页]

作者: czweb     时间: 2010-4-22 07:45    标题: 如何shutdown让对方的机器在不登陆的情况下关机

如题,有办法让对方的机器在不登陆的情况下实现关机吗
作者: HAT     时间: 2010-4-22 22:29
“对方的机器”是谁的机器?
作者: czweb     时间: 2010-4-26 09:02
就是远程机器
作者: rs369007     时间: 2010-4-27 09:21
似乎要修改对方机子的设置,还要知道用户名和密码。一般是不允许远程关机的
作者: yishanju     时间: 2010-4-27 11:34
远程的机器又是谁的机器?
任何操作都必须要有权限。
作者: czweb     时间: 2010-4-28 01:37


  Quote:
Originally posted by rs369007 at 2010-4-27 09:21:
似乎要修改对方机子的设置,还要知道用户名和密码。一般是不允许远程关机的

要设置哪里,我就是管理呀
作者: czweb     时间: 2010-4-28 01:39


  Quote:
Originally posted by yishanju at 2010-4-27 11:34:
远程的机器又是谁的机器?
任何操作都必须要有权限。

比如说同事的机器吧,
我就是域管理员

因为域环境,开机后都是等待登陆状态,假如没有登陆到桌面,如何实现远程关机
作者: yishanju     时间: 2010-4-28 08:34
shutdown 命令和psexec.exe
作者: rs369007     时间: 2010-4-28 10:12
要不自己装个后门,一键搞定
作者: yishanju     时间: 2010-4-28 11:00
默认设置下,不关闭默认共享的情况下,管理员身份是可以用shutdown命令在局域内关机
作者: HAT     时间: 2010-4-28 15:09
shutdown /m
作者: czweb     时间: 2010-4-28 18:14


  Quote:
Originally posted by yishanju at 2010-4-28 08:34:
shutdown 命令和psexec.exe

shutdown 命令和psexec.exe

这两个命令我都知道,psshutdown.exe也不行,请试过的朋友发言。远程的机器在进入桌面后是可以关机的,这个我知道

注意看,远程的机器是在登陆界面下,我要在我的机器上关他的机器。要实现这种情况
作者: czweb     时间: 2010-4-28 18:15


  Quote:
Originally posted by yishanju at 2010-4-28 11:00:
默认设置下,不关闭默认共享的情况下,管理员身份是可以用shutdown命令在局域内关机

注意看,远程的机器是在登陆界面下,我要在我的机器上关他的机器。要实现这种情况

默认共享是有的,权限也是有的
作者: czweb     时间: 2010-4-28 18:16


  Quote:
Originally posted by HAT at 2010-4-28 15:09:
shutdown /m

常试过才有发言权,你试过我说的情况下吗
作者: HAT     时间: 2010-4-28 21:30    标题: Re 14 楼

你认为域连这点功能都没有吗?
作者: yishanju     时间: 2010-4-28 23:39
悲剧的楼主。强大的SHUTDOWN是可以远程关机的
悲剧。
作者: rs369007     时间: 2010-4-29 11:14
版主权威受质疑了哈。以前我也试过用lansee远程管理,shutdown别人主机,百试百灵,现在前天弄了下,似乎没任何反应。
作者: rs369007     时间: 2010-4-29 11:24
shutdown 使用这两个端口
TCP    172.16.35.95:2416      172.16.35.12:445       SYN_SENT
TCP    172.16.35.95:2417      172.16.35.12:139       SYN_SENT
作者: czweb     时间: 2010-4-29 12:51


  Quote:
Originally posted by HAT at 2010-4-28 21:30:
你认为域连这点功能都没有吗?

不懂,什么意思,你试过登陆状态下关对方的机器吗
作者: czweb     时间: 2010-4-29 12:55
看看吧
附件 1: 1.GIF (2010-4-29 12:55, 9.4 K,下载次数: 2)



作者: rs369007     时间: 2010-4-29 13:01
刚测又试了下

比如我输入 shutdown -s -m \\172.16.35.12 -t 60 (这是我们寝室一台闲置台式机,172.16.35.95是我的主机ip)

查看了这台主机的连接变化

TCP    172.16.35.12:445       172.16.35.95:2586      ESTABLISHED
过一小段时间
变成----
TCP    172.16.35.12:135       172.16.35.95:2588      TIME_WAIT
这说明shutdown 企图和172.16.35.12主机在端口 135 建立连接时,被对方强制断开了连接,这极有可能是杀毒软件和虽被退出,但的相关服务任在起作用,强行断开了连接。而查看services.msc,里面躺着的杀毒软件服务任在运行。同时对方的来宾账户并没启用。所以我认为可能是这两个原因或其中之一导致了shutdown 远程主机失败。同时应该关闭windows内置防火墙

一下在对方机子配置
1,我运行---msconfig.msc  在启动项里取消杀毒软件自启动项,并且在杀毒软件设置里配置不开机自启动。

2,接着运行services.msc 确保Remote Procedure Call (RPC) 相关服务开启

3,运行gpedit.msc 在计算机配置”—“Windows 设置”—“安全设置”—“本地策略”—“用户权利指派”。中添加guest用户。并在控制面板中,用户账户中启用来宾账户

4,关闭对方内置防火墙

现在再在cmd窗口 执行 shutdown -s -m \\172.16.35.12 -t 60

对方机子出现了关机窗口(没有登录进入桌面前)--------shutdown 成功执行!

(其实进入欢迎界面系统服务基本已经加载完毕,如果shutdown能够成功,这时---没有登录,也就一定能够成功)

[ Last edited by rs369007 on 2010-4-29 at 13:27 ]
作者: czweb     时间: 2010-4-29 13:07


  Quote:
Originally posted by yishanju at 2010-4-28 23:39:
悲剧的楼主。强大的SHUTDOWN是可以远程关机的
悲剧。

什么悲剧啊,看我的回帖
对方的机器在这个状态下
附件 1: 2副本.gif (2010-4-29 13:07, 35.86 K,下载次数: 2)



作者: rs369007     时间: 2010-4-29 13:08
用netstat -abn 可以看到 445 端口运行的组件时标注为[system]

而135端口有如下模块:
  C:\WINDOWS\system32\TcpIpDog0.dll
  C:\WINDOWS\system32\RPCRT4.dll
  c:\windows\system32\rpcss.dll
  C:\WINDOWS\system32\svchost.exe
  C:\WINDOWS\system32\ADVAPI32.dll
  [svchost.exe]

所以是不是可以认为445端口只是一个系统级的监听端口,但是并不真正负责建立有效连接,而真正负责与shutdown建立起有效连接的是135端口上这些组件
作者: czweb     时间: 2010-4-29 15:06
知道以上老大们为什么测试说可以,我不行,应为我测试的远程机器是64位xp,以上各位都测的32系统吧

有测试环境的试试,真的不行。发现一个奇怪现象,远程机器进入屏保待机状态,竟然可以成功执行关机。说明屏保执行了某个系统程序激活这个功能

[ Last edited by czweb on 2010-4-29 at 15:07 ]
作者: HAT     时间: 2010-4-29 16:58    标题: Re 24 楼

当屏保有密码的时候,也能关机吗?
作者: czweb     时间: 2010-4-29 17:16


  Quote:
Originally posted by HAT at 2010-4-29 16:58:
当屏保有密码的时候,也能关机吗?

那里来的密码,就是长时间不登陆,系统不久待机状态了吗
作者: rs369007     时间: 2010-4-29 18:31
你要能关闭别人计算机,得要先连接到别人电脑,建立tcp连接,就是shutdown 要通过本机某个端口向远程主机某个指定端口(445+135)发起连接,而监听在这个端口上的服务受到连接请求后,判断是否接受连接,并执行发过来的指令。

而一般135+445是打开的(netstat -an 查看本地打开的端口),说明执行shutdown的组件是在正常运行的。

可能是shutdown发起过来的连接不符合远程主机的规则限制,而被对方down掉了。所以应该是针对对方的系统环境看看是不是有什么规则限制了shutdown的访问活动。

64bit和32bit这个应该不是问题,windows向来注重系统的向下兼容的。
作者: rs369007     时间: 2010-4-29 18:35


  Quote:
Originally posted by rs369007 at 2010-4-29 13:01:
TCP    172.16.35.12:445       172.16.35.95:2586      ESTABLISHED
过一小段时间
变成----
TCP    172.16.35.12:135       172.16.35.95:2588      TIME_WAIT

tcp状态:time_wait代表主动发起socket连接关闭的一方等待对方回应,这段测试正说明是对方主动down掉了发起过来的连接。或者说此主机某项配置屏蔽了对shutdown的正常回应。使shutdown 显示无法找到网络路径,而其实对方一直在线,并且通过上面看到这个连接某种意义上已经建立起来,只是被最终屏蔽掉了。

这是针对我们寝室几台电脑测试我的一点看法。

[ Last edited by rs369007 on 2010-4-29 at 18:43 ]
作者: HAT     时间: 2010-4-29 22:23    标题: Re 26 楼

长时间不登陆、待机、屏保,三者之间没有必然的联系。
作者: qzwqzw     时间: 2010-4-30 10:43
可以使用下面的命令试试
shutdown -m \\远程机 -s -f -t 1

加上/f开关可能会终止掉正在运行的程序