如何从 Linux 机器远程关闭 Windows XP 机器?

Han*_*etz 4 windows rpc

为了测试目的,我在连接到本地网络的虚拟机中运行了 Windows XP。测试是远程完成的。完成后,我想从 Linux 机器远程关闭它们。

ETA:请注意,Windows 机器运行 XP Home,因此没有安全/组策略。

对于相同设置中的 Linux 系统,我执行以下操作:

#> ssh root@linux-vm123 'shutdown -h now';
Run Code Online (Sandbox Code Playgroud)

对于 Windows 系统,我应该能够做到:

#> net rpc SHUTDOWN -I xx.xx.xx.xx -f -U user%pwd
Run Code Online (Sandbox Code Playgroud)

但这给了我以下错误:

Could not connect to server xx.xx.xx.xx
The username or password was not correct.
Connection failed: NT_STATUS_LOGON_FAILURE
Run Code Online (Sandbox Code Playgroud)

用户是管理员,帐户设置了密码。我需要在 Windows 系统上设置什么吗?

ETA:有没有一种方法可以只测试登录,即不发送可能需要其他权限或设置的关闭命令?

Han*_*etz 8

Windows XP Home 不允许通过访客帐户以外的网络登录。所以你必须首先启用它。

这给了我一个新错误,告诉我不允许使用“登录类型”。登录类型是“代码 3”,我发现它的意思是“网络登录”。激活文件共享解决了这个问题,但我不知道为什么。

当然,Guest 是不允许关机的,所以这个账号必须加到 Administrators 组中(这当然严重违反了任何安全准则,但请记住,这完全是本地的,都在我的办公桌下并留在那里) ) 通过在 shell 中发出以下命令:

net localgroup Administrators Guest /ADD
Run Code Online (Sandbox Code Playgroud)

而且那么,你会发现,在RPC关机命令似乎需要上似乎是由远程注册表服务,这是不是在XP家庭可提供目标命名管道WinReg项。所以,目前,我没有远程关机。

应该注意的是,XP Home 并不是要在受管理的专业网络中工作,但我选择的系统是根据我在目标机器上的预期测试,而不是我想要使用的。但是,net/rpcclient 联机帮助页中的注释会非常友好...