You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Windows域中PowerShell远程功能验证:额外排查项及规则疑问

Windows域环境下PowerShell远程功能故障排查补充要点及规则说明

一、现有Pester测试外的补充排查项

除你已覆盖的Pester测试内容,还需检查以下关键项:

  • WinRM服务启动类型:确保WinRM服务设置为自动启动,避免系统重启后服务未运行。
    (Get-Service -Name 'WinRM').StartType | Should -Be 'Automatic'
    
  • WinRM监听端口配置:确认WinRM默认的5985(HTTP)或5986(HTTPS)端口已正常监听,无端口占用情况。
    Get-WSManInstance -ResourceURI winrm/config/listener | Should -Not -BeNullOrEmpty
    # 检查端口占用状态
    Get-NetTCPConnection -LocalPort 5985,5986 | Should -Not -BeNullOrEmpty
    
  • 用户权限与组策略:验证执行远程操作的用户是否属于Remote Management Users组,或通过组策略被授予WinRM访问权限。
    # 检查用户所属组
    Get-LocalGroupMember -Group 'Remote Management Users' | Should -Contain $env:USERNAME
    # 查看PSSession配置的权限列表
    Get-PSSessionConfiguration -Name Microsoft.PowerShell | Select-Object -ExpandProperty Permission
    
  • Kerberos认证有效性(域环境):域内PowerShell远程默认用Kerberos,需确认客户端与目标机器的Kerberos票据有效,无时钟偏移或DNS解析错误。
    Test-WSMan -ComputerName <目标主机名> -Authentication Kerberos | Should -BeTrue
    
  • WinRM信任主机列表:跨域或非域环境下,需确认目标主机已添加到本地WinRM的信任列表。
    Get-Item WSMan:\localhost\Client\TrustedHosts | Select-Object -ExpandProperty Value
    
  • HTTPS防火墙规则:若使用WinRM over HTTPS,需检查WINRM-HTTPS-In-TCP规则是否按需启用并配置正确。
  • PowerShell执行策略:目标主机的执行策略需允许远程脚本运行,至少设置为RemoteSigned。
    Get-ExecutionPolicy -Scope LocalMachine | Should -Be 'RemoteSigned'
    

二、关于WINRM-HTTP-In-TCP-NoScope规则的说明

是的,WINRM-HTTP-In-TCP-NoScope规则正是通过执行Enable-PSRemoting -SkipNetworkProfileCheck命令创建的。

使用-SkipNetworkProfileCheck参数时,系统会跳过当前网络连接profile的安全检查(比如公共网络默认禁止WinRM),但为了避免过度暴露风险,不会直接开放WINRM-HTTP-In-TCP规则到公共网络,而是创建这个限制范围的规则——它仅允许本地主机发起的WinRM连接,不会对外暴露服务,以此在跳过网络profile检查的同时维持基础安全性。


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

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.28 18:27:50