我正在尝试使用以下命令从 Win 7 计算机连接到 Win2k8R2 计算机:
psexec \此处机器名称-u此处机器名称\管理员-p此处密码记事本
当我尝试此操作时,我收到错误消息:
无法访问 MACHINE_NAME_HERE 访问被拒绝。
我尝试省略 -p 并手动输入密码,但同样的问题仍然存在。
当我检查尝试访问的计算机时,我在安全事件查看器中看到管理员登录成功,因此我知道用户名密码正确,并且计算机正在接受我的登录,但我还注意到它还尝试使用我的域帐户登录,该帐户不在远程计算机的管理员列表中。如果我将域帐户添加到远程计算机,则一切都会正常,但在这种情况下,它违背了目的,有时我需要能够在域中没有的计算机上运行命令。
该机器也设置为使用简单模型进行共享和安全。
答案1
这是因为 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 将以明文形式发送密码。