如何使用本地计算机帐户作为 PSExec 的凭据

Posted

技术标签:

【中文标题】如何使用本地计算机帐户作为 PSExec 的凭据【英文标题】:How can I use a local computer account as the credentials for PSExec 【发布时间】:2018-03-23 12:46:23 【问题描述】:

我正在开发一些我计划与 Bamboo 一起用于部署的部署 PowerShell 脚本。在这些 PowerShell 脚本中,我想在本地网络上的远程计算机上运行命令。我想使用 Invoke-Command 并使用远程计算机的本地管理员帐户作为凭据,如下所示;

Invoke-Command -ComputerName DevBox -Credential DevBox\Administrator -ScriptBlock  ... 

但是,当我运行脚本时,我收到此错误消息;

[DevBox] Connecting to remote server DevBox failed with the following error 
message : WinRM cannot process
the request. The following error with errorcode 0x80090311 occurred while 
using Kerberos authentication: We can't sign
you in with this credential because your domain isn't available. Make sure 
your device is connected to your
organization's network and try again. If you previously signed in on this 
device with another credential, you can sign
in with that credential.

Invoke-Command 不能与远程计算机的本地管理员帐户一起使用。

我可以使用 PSExec,它可以正常工作,但如果可能的话,我更喜欢使用 Invoke-Command。

我已使用远程计算机桌面上的 Enable-PSRemoting –Force 验证了 WinRM 已安装并在远程计算机上运行。

有什么想法吗?

【问题讨论】:

你能在这里发布确切的错误信息吗 我编辑了我的原始帖子以包含错误消息。 您的远程计算机是否在同一个域下?您是否在各自的远程计算机上使用具有本地管理员权限的帐户? 远程计算机是域连接的。我正在使用远程计算机的本地管理员组中的帐户 【参考方案1】:

如果这行代码在脚本中,请尝试单独执行命令并 您应该从提升的 PowerShell 会话中执行命令。

【讨论】:

我正在使用提升的 PowerShell 会话。

以上是关于如何使用本地计算机帐户作为 PSExec 的凭据的主要内容,如果未能解决你的问题,请参考以下文章

将凭据添加到与本地系统帐户不同的帐户

您可以强制“本地”GUI 登录到 Windows 10 上的远程计算机吗?

在Ansible中,凭据附加到Active Directory的计算机被拒绝

如何使用 psexec 向远程计算机上启动的 cmd.exe 提供多个命令

如何使用 REST API 从服务帐户凭据创建访问令牌?

MSF实现RID劫持和MSF实现PsExec执行命令