You need to enable JavaScript to run this app.
最新活动
大模型
产品
解决方案
定价
生态与合作
支持与服务
开发者
了解我们

WinRM监听错误IP地址问题求助:HTTPS配置后监听异常排查

排查WinRM监听器IP异常问题

结合你给出的配置和现状,咱们一步步来定位和解决这个WinRM监听错误IP的问题:

先确认基础信息

首先再核对下当前的监听器状态,确保没有遗漏的配置细节:

winrm enumerate winrm/config/listener

仔细看输出里的ListeningOn字段,确认它确实是x.y.z.10——如果这里显示的IP是对的,但实际监听异常,那大概率是绑定或者服务层面的问题。

可能的原因与修复步骤

1. 检查是否存在冲突的监听器

有时候服务器上可能残留了旧的WinRM监听器,导致新配置的监听器无法正常生效:

  • 运行上面的枚举命令,看看是否有其他HTTPS/HTTP监听器绑定到了错误的IP或者*(所有IP)
  • 如果有多余的监听器,用以下命令删除(替换<ListenerID>为实际的监听器路径,比如Listener_HTTPS_127.0.0.1):
Remove-Item -Path WSMan:\LocalHost\Listener\<ListenerID> -Force

2. 验证SSL证书的端口绑定

WinRM的HTTPS监听器依赖于SSL证书和端口的绑定,可能存在绑定不匹配的情况:

  • 查看当前5986端口的SSL绑定:
netsh http show sslcert

找到IP:portx.y.z.10:5986的条目,核对Certificate Hash是否和你配置的<ThumbPrint>一致。

  • 如果绑定错误或者不存在,先删除旧绑定:
netsh http delete sslcert ipport=x.y.z.10:5986
  • 然后重新创建监听器(或者直接用netsh添加绑定,WinRM的默认AppID是{5d89a20c-beab-4389-9447-324788eb944a}):
netsh http add sslcert ipport=x.y.z.10:5986 certhash=<ThumbPrint> appid={5d89a20c-beab-4389-9447-324788eb944a}

3. 确认服务器IP的有效性

确保x.y.z.10确实是当前服务器上启用的有效IP:

Get-NetIPAddress | Where-Object {$_.IPAddress -eq "x.y.z.10"}

如果输出为空,说明这个IP没有配置在服务器的网络接口上,需要先在网络适配器中添加并启用该IP。

4. 重启WinRM服务生效配置

很多时候修改WinRM配置后,需要重启服务才能让新配置完全生效:

Restart-Service WinRM -Force

重启后再重新枚举监听器,确认状态正常。

5. 测试端口监听与连通性

  • 用PowerShell测试5986端口的监听状态:
Test-NetConnection -ComputerName x.y.z.10 -Port 5986

如果TcpTestSucceeded显示True,说明端口监听正常;如果是False,继续排查防火墙或网络问题。

  • 也可以用Windows Sysinternals的TCPView工具,查看winrm.exesvchost.exe进程是否真的在监听x.y.z.10:5986,而不是其他IP。

6. 检查证书的有效性

WinRM的HTTPS监听器要求证书能匹配监听的IP或主机名:

Get-ChildItem -Path Cert:\LocalMachine\My\<ThumbPrint> | Select-Object Subject, DnsNameList

确认证书的DnsNameList中包含x.y.z.10或者主机名ServerA,否则会导致监听器无法正常绑定。

7. 防火墙与网络策略排查

  • 确认Windows防火墙允许WinRM HTTPS的入站连接:
Get-NetFirewallRule -Name *WinRM-HTTPS* | Select-Object Name, Enabled, Action

确保规则是EnabledActionAllow

  • 如果Ping相关节点不通,先排查网络连通性:确认子网掩码、路由设置是否正确,对方节点是否允许ICMP请求(Ping)。

内容的提问来源于stack exchange,提问作者user240384

火山引擎 最新活动