Windows Server 2008 R2 上启用 PSRemoting 错误

Windows Server 2008 R2 上启用 PSRemoting 错误

无论是否使用 -Force 参数,在执行命令 Enable-PSSRemoting 时都会发生此错误

Set-WSManQuickConfig : More data is available.
At line:50 char:33
+           Set-WSManQuickConfig <<<<  -force
+ CategoryInfo          : InvalidOperation: (:) [Set-WSManQuickConfig],
InvalidOperationException + FullyQualifiedErrorId : 
WsManError,Microsoft.WSMan.Management.SetWSManQuickConfigCommand

我查看了此资源以寻求解决此问题的帮助http://www.howtogeek.com/117192/how-to-run-powershell-commands-on-remote-computers/以及其他一些。

但似乎我的解决方案不在其中。我检查了以管理员身份运行,检查了本地管理员是否被禁用或密码为空,还更新了有关 LocalAccountTokenFilterPolicy 的注册表项。将 trusthosts 设置为 *

这是在 Windows Server 2008 R2 SP1、ENU x64 上本地完成的

结果来自:winrm quickconfig,由@tony roth 建议

WSManFault
Message = More data is available.
Error number:  -2147024662 0x800700EA
More data is available.

结果来自:winrm enumerate winrm/config/listener

Listener
Address = *
Transport = HTTP
Port = 5985
Hostname
Enabled = true
URLPrefix = wsman
CertificateThumbprint
ListeningOn = 10.108.x.x, 127.0.0.1, ::1, x:0:5ef5:79fb:6b:3590:f593:f4eb, x::5efe:10.108.11.20%13, fe80::6b

:x:f593:f4eb%11,x::8418:7b59:e7ff:ccd4%12

结果来自:dir WSMan:\localhost\shell

AllowRemoteShellAccess    true
IdleTimeout               180000
MaxConcurrentUsers        5
MaxShellRunTime           2147483647
MaxProcessesPerShell      15
MaxMemoryPerShellMB       150
MaxShellsPerUser          5

结果来自:dir WSMan:\localhost\client

Name            Value                                        Type
----            -----                                        ----
NetworkDelayms            5000                               System.String
URLPrefix                 wsman                              System.String
AllowUnencrypted          false                              System.String
Auth                                                         Container
DefaultPorts                                                 Container
TrustedHosts              *                                  System.String

结果来自:Get-Item WSMan:\localhost\Service\RootSDDL

Name     Value                                                        Type
----     -----                                                        ----
RootSDDL O:NSG:BAD:P(A;;GA;;;BA)S:P(AU;FA;GA;;;WD)(AU;SA;GWGX;;;WD)   System.String

结果来自:Test-WsMan localhost

wsmid           : http://schemas.dmtf.org/wbem/wsman/identity/1/wsmanidentity.xsd
ProtocolVersion : http://schemas.dmtf.org/wbem/wsman/1/wsman.xsd
ProductVendor   : Microsoft Corporation
ProductVersion  : OS: 0.0.0 SP: 0.0 Stack: 2.0

这是在本地服务器上进行的,远程工作组客户端尚未参与此场景

答案1

刚刚在几个系统上遇到并解决了这个问题。在这个特定情况下,这两个系统不属于域,并且用户帐户不是原始的“管理员”帐户,而是一个较新的帐户,该帐户也是本地管理员组的成员。

解决方案来自我偶然发现的以下博客文章:本地计算机拒绝 WinRM 访问简而言之,从命令提示符(以管理员身份启动)运行以下命令:

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

之后,以管理员身份重新启动 Powershell 提示符并重新运行Enable-PSSRemoting。就这么简单。

答案2

以下是我解决此问题的故障排除指南,内容包括:

  • 您的机器是否连接到域或工作组?
  • 您是否以本地管理员身份登录?
  • PowerShell 是否以“管理员”身份启动?
  • 您的密码是空的吗?
  • 您是否尝试连接到 SharePoint 场?
  • 您的服务器是否由托管公司托管/管理?
  • 你使用 VirtualBox 吗?
  • 您是否在语言未设置为英语的计算机上运行该命令?

https://serverfault.com/questions/337905/enabling-powershell-remoting-access-is-denied

答案3

我可以使用 PowerShell 2 在全新的 Windows Server 2008 R2 SP1 上完全重现此行为

使用提升的 PowerShellenable-psremoting -force会导致Set-WSManQuickConfig : Access is denied.错误。

对我有用的解决方法是使用真正的“管理员”帐户(S-1-5-...-500)登录并再次运行该命令。

我不知道为什么这会产生影响,但对我来说确实如此。

答案4

我在尝试使 PSSession 工作(Win10Pro 到 Win10Pro)时看到了同样的错误。

结果来自winrm quickconfig

Message = More data is available.
Error number:  -2147024662 0x800700EA
More data is available.

由于某些奇怪的原因,LocalAccountTokenFilterPolicy注册表值是 QWORD 而不是 DWORD,所以我运行了这个命令,然后一切又恢复正常了。

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

更多信息LocalAccountTokenFilterPolicy在 Microsoft 网站上。

相关内容