修复 WinRM HTTP 500 服务器错误
描述
This error occurs when a WinRM (Windows Remote Management) client attempts to connect to a remote server, but the remote IIS (Internet Information Services) or WinRM service encounters an internal server error (HTTP 500). Because it is a generic server-side failure, the remote service fails to provide specific details to the client.
该问题通常源于错误配置的WinRM服务设置,损坏的WS管理配置,身份验证不匹配,缺乏足够的用户权限,或冲突的第三方软件 (如防病毒或防火墙) 阻止目标机器上的执行环境.
逐步修复问题
执行这些故障排除步骤 remote target machine 你正试图与之联系.
步骤1:重新启动WinRM服务
有时服务会出现故障,需要重新开始.
- 打开 PowerShell 或是 Command Prompt 作为一个管理员.
- 运行下面的命令来停止服务:
net stop winrm - 运行下面的命令启动服务:
net start winrm
步骤2:修复winrm配置
重新设置和检查默认快速配置可以修复受损的收听器和防火墙规则.
- 打开 PowerShell 作为一个管理员.
- 输入下面的命令,然后按Enter:
winrm quickconfig - If prompted to make changes to configure the listener and enable the firewall exceptions, press
Y然后Enter.
步骤3:增加WinRM内存配置
HTTP 500 错误经常发生,因为在处理请求时,远程 shell 耗尽了分配的机器内存.
- 打开 PowerShell 作为一个管理员.
- 通过运行检查当前内存限制:
Get-Item WSMan:\localhost\Shell\MaxMemoryPerShellMB - 将内存限制增加到1024 MB (或需要时更高),运行:
Set-Item WSMan:\localhost\Shell\MaxMemoryPerShellMB 1024 - 重新启动 WinRM 服务以应用更改:
Restart-Service winrm
步骤4:验证本地帐户TokenFilter策略 (对于工作组)
如果您连接到不是Active Directory域的一部分机器,Windows用户帐户控制 (UAC) 可能会限制远程连接的管理权限.
- 打开 PowerShell 作为一个管理员.
- 执行下面的命令,以允许本地帐户的远程管理任务:
New-ItemProperty -Path "HKLM:\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\System" -Name "LocalAccountTokenFilterPolicy" -Value 1 -PropertyType DWord -Force
第五步:检查应用库和 IIS (如果适用)
如果您的WinRM流量是通过IIS代理或自定义终端点路由的:
- 打开门 IIS Manager 在远程服务器上.
- 导航到 Application Pools.
- 确保管理 WinRM 或 WS-Management 终点的应用池正在运行并且没有崩.
可能有一些错误.. Learn Microsoft