psexec:“访问被拒绝”?

psexec:“访问被拒绝”?

受到我上一个问题的启发这里,我一直在尝试使用 PSExec。

目标是从一台 WindowsXP 机器上运行另一台 WindowsXP 机器上的一些相当简单的脚本/程序,由于 PowerShell 2 还不能在 XP 上进行远程处理,PSexec 似乎可以很好地解决我的问题。

但是,除了“访问被拒绝”错误之外,我什么也没得到。

以下是我迄今为止尝试过的方法:

我有一对 WindowsXP MCE 机器,它们在没有服务器或域控制器的工作组中联网。

我已经关闭了两台机器上的“简单文件共享”。

在安全策略下,网络访问:本地帐户的共享和安全模型设置为经典,而不是两台机器的访客。

每台计算机都有一个管理员用户,我知道该用户的密码。:)

有了这些,像“ > psexec \\otherComputer -u adminUser cmd”这样的命令会提示输入密码(就像它应该的那样),然后退出:

Couldn't access otherComputer:
Access is denied.

因此,此时我转向社区。我在这里缺少什么步骤?

答案1

将以下注册表 DWORD 添加到远程计算机应该可以解决问题。

reg add HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\system /v LocalAccountTokenFilterPolicy /t REG_DWORD /d 1 /f

答案2

问题解决了。

事实证明,默认情况下,Windows 不允许您使用密码为空的用户帐户进行远程登录。为了尝试 PSExec,我将目标计算机上管理员帐户的密码更改为零,以为这样可以减少所需的输入量。事实证明,这是我的问题,一旦我重新输入密码,一切都会正常。

然而,这引发了另一项调查 - 如果有人想使用带有空密码的 PSExec,那么您需要执行以下操作(无论如何,在 Windows XP MCE 下):

  • 在控制面板中,打开管理工具。
  • 打开本地安全策略。
  • 导航至本地策略 -> 安全选项
  • 将“帐户:限制本地帐户使用空白密码仅用于控制台登录”更改为已禁用

答案3

我认为 PSEXEC 依赖于能够打开 ADMIN$ 共享,因此请使用相同的凭据进行检查,

net use \\otherComputer\ADMIN$ /user:otherComputer\adminUser *

答案4

我在非提升权限的命令提示符下运行 PSExec 时遇到了此错误(在 Windows 7 上)。从提升权限的命令提示符下运行该命令可修复此问题。

相关内容