远程Powershell权限仅限于计算机


8

我无法在远程服务器上执行Powershell脚本,而只能在当前计算机上执行-请帮助。

运行以下脚本以提供远程服务器上的临时目录的列表,使用我的凭据从其他计算机运行到同一服务器,但是不适用于我的计算机上的任何用户。

Invoke-Command -ComputerName <server_name> -Credential (Get-Credential) -ScriptBlock { Get-ChildItem "D:\temp" } 

我收到以下错误:

[server_name]连接到远程服务器server_name失败,并显示以下错误消息:登录失败:用户名未知或密码错误。有关更多信息,请参见about_Remote_Troubleshooting帮助主题。+ CategoryInfo:OpenError :(服务器名称:字符串)[],PSRemotingTransportException + FullyQualifiedErrorId:LogonFailure,PSSessionStateBroken

  • 是的,有ad:驱动器。
  • 是的,有一个临时目录
  • 是的,我的凭据很好-我可以将桌面远程连接到服务器,并且可以在其他计算机上成功执行脚本。

我正在运行Powershell 3-从http://www.microsoft.com/zh-cn/download/details.aspx?id=34595下载,并且已成功安装。

在笔记本电脑上调用$ PsVersionTable可以给我以下信息:

名称值
---------

WSManStackVersion 3.0
PSCompatibleVersions {1.0,2.0,3.0}
序列化版本1.1.0.1
BuildVersion 6.2.9200.16398
PSVersion 3.0
CLRVersion 4.0.30319.586
PSRemotingProtocolVersion 2.2

我正在运行Windows 7,并且服务器正在运行Windows2003。我知道Powershell 3在Windows 2003 Server上不能很好地运行,但是上面的命令在其他客户端计算机上可以成功执行,因此不要认为这是一个问题。

有任何想法吗?


你可以Enter-PSSession在那台机器上使用吗?
Tanner Faulkner

运行指向服务器的Enter-PSSession,我得到“ WinRM无法处理该请求。使用Kerberos身份验证时发生以下错误:找不到计算机<server_name> ...”,但它可用。
2013年

远程进入并Enable-PSRemoting -force再次运行;在我看来,WinRM似乎是个问题。
Tanner Faulkner

我已经尝试过了(只是一次),但是没有运气。我可以运行另一台机器上的命令到同一台服务器,但这样我还在想这是在客户端...一些如何:-(
WestDiscGolf

@WestDiscGolf-如果可以的话,我会重新映像客户端。听起来像没有更多知识的客户端配置,我们将很难解决。
Ramhound

Answers:


6

因此,在进行了进一步的诊断测试(登录到另一台计算机上运行它,引导到同一台笔记本电脑上的另一个OS安装)之后,它归结为需要运行以下命令:

Set-Item WSMan:\localhost\Client\TrustedHosts -value * 

另外,在做进一步调查时,我发现此站点可以帮助其他人解决远程Powershell问题(发布以供参考)。


0

我假设您在Windows Server 2003中使用PowerShell v2.0,并且您也在服务器上启用了WINRM 2.0。在这种情况下,PowerShell v3.0 WINRM应该连接到Window Server 2003。

确保按照“ WestDiscGolf”说明中所述在服务器上运行Enable-PSRemoting。另外,您需要检查Windows 7客户端中的防火墙规则以确保。

再试一次。:)

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.