PSexec未使用提供的用户名和密码连接到计算机


13

我正在尝试使用以下命令从Win 7计算机连接到Win2k8R2计算机:

psexec \ MACHINE_NAME_HERE -u MACHINE_NAME_HERE \ Administrator -p PASSWORD_HERE记事本

当我尝试这个时,我收到错误消息:

无法访问MACHINE_NAME_HERE访问被拒绝。

我尝试省略-p并手动输入密码,但是仍然存在相同的问题。

当我检查要尝试访问的计算机时,我在安全事件查看器中看到管理员登录成功,因此我知道用户名密码正确,并且该计算机正在接受我的登录,但是我也注意到它尝试也可以使用我的域帐户登录,该域帐户不在远程计算机的管理员列表中。如果我将域帐户添加到远程计算机,则一切正常,但是在这种情况下,它无法达到目的,有时,当域上没有该帐户时,我需要能够在计算机上运行命令。

机器也设置为使用简单模型进行共享和安全性。


1
我认为简单文件共享将阻止使用psexec所需的Admin $共享。尝试关闭简单文件共享。如果要与桌面进行交互,也可以尝试使用-i开关。
explunit

Answers:


26

这是因为psexec在尝试以其他用户身份执行命令之前仍尝试使用本地凭据访问ADMIN $共享。根据此线程,您可以在执行psexec之前缓存凭据:

cmdkey.exe /add:MACHINE_NAME_HERE /user:MACHINE_NAME_HERE\Administrator /pass:PASSWORD_HERE 
psexec.exe \\MACHINE_NAME_HERE -i notepad
cmdkey.exe /delete:MACHINE_NAME_HERE

我添加了-i,因为您在此处指定了运行记事本。如果没有-i,则记事本将处于闲置状态,而不会进行任何交互。另外,请记住,当您使用-u时,psexec将以纯文本形式发送密码。


+1今天对我有帮助:-)
Kin Shah 2015年

Lxocram于2015年10月15日在Sysinternals线程中的最后一条消息表明,指定\\ localhost可以解决此问题。我不知道根本原因,但是使用\\ localhost对我有用。
鳗鱼ghEEz

\\localhost在我的案例(PsExec.exe \\localhost -u B580\Admin -i -h regedit.exe)中没有解决问题-发生相同的错误,并且出现了额外的消息Couldn't access localhost:
AntonK
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.