Windows 11 远程 PowerShell 失败需启用 WinRM:一、运行 winrm quickconfig 并验证监听器;二、通过 services.msc 设为自动启动;三、用 PowerShell 命令整合启用、防火墙、信任主机及 HTTPS;四、组策略配置监听器、远程管理与加密;五、用 Test-WsMan 和 Enter-PSSession 验证连接。

如果您希望在 Windows 11 上通过网络远程执行 PowerShell 命令,但本地 PowerShell 无法响应远程连接请求,则可能是由于 WinRM(Windows Remote Management)服务未启用或监听配置缺失。以下是解决此问题的步骤:
一、启用并配置 WinRM 服务
WinRM 是 PowerShell 远程功能的底层通信服务,必须处于运行状态并配置为监听 HTTP 或 HTTPS 请求,否则远程会话将被拒绝。
1、以管理员身份运行 PowerShell 或 Windows 终端。
2、执行命令:winrm quickconfig,按提示输入 Y 确认启用服务及防火墙规则。
3、验证监听器是否已创建:运行 winrm enumerate winrm/config/listener,输出中应包含类似 Listener[Transport=HTTP, Address=*] 的条目。
4、若需允许非本机地址访问,执行:winrm set winrm/config/client '@{TrustedHosts="*"}'(生产环境请替换 * 为具体 IP 或域名)。
二、通过系统服务管理器启动 WinRM
该方式适用于图形界面可操作但命令行异常的场景,直接控制服务状态与启动类型,确保服务开机自启且不被意外终止。
1、按下 Win + R 打开“运行”对话框,输入 services.msc 并回车。
2、在服务列表中找到 Windows Remote Management (WS-Management)。
3、右键该项,选择“属性”,将“启动类型”设为“自动”,然后点击“启动”按钮。
4、确认“服务状态”显示为“正在运行”,点击“确定”保存设置。
三、使用 PowerShell 命令行一次性启用并加固配置
该方法整合服务启用、防火墙放行、信任主机设定与 HTTPS 监听器部署,适合脚本化部署或安全策略统一管控环境。
1、以管理员身份启动 PowerShell。
2、依次执行以下命令:
Set-Service -Name WinRM -StartupType Automatic
Start-Service WinRM
Enable-PSRemoting -Force
Set-Item WSMan:\localhost\Client\TrustedHosts -Value "192.168.1.*"
winrm create winrm/config/Listener?Address=*+Transport=HTTPS @{CertificateThumbprint="A1B2C3..."}(需先导入有效证书并替换实际指纹)。
四、通过组策略启用 PowerShell 远程(专业版/企业版/教育版)
该路径修改域或本地组策略对象,强制启用 WinRM 并禁用不安全配置,适用于 IT 管理员对多台设备实施统一策略管控。
1、按下 Win + R,输入 gpedit.msc 并回车,打开本地组策略编辑器。
2、导航至:计算机配置 → 管理模板 → Windows 组件 → Windows Remote Management(WinRM)→ WinRM 服务。
3、双击“允许自动配置 WinRM 监听器”,设为“已启用”,并在下方指定 IPv4 和 IPv6 地址范围。
4、双击“允许远程服务器管理此计算机”,设为“已启用”。
5、双击“加密网络流量”,设为“已启用”,并勾选“要求客户端使用加密”选项。
五、验证远程连接能力
在目标计算机完成上述任一配置后,需从另一台 Windows 设备发起测试连接,确认端口可达性、凭据协商与会话建立是否正常。
1、在客户端计算机以管理员身份打开 PowerShell。
2、执行:Test-WsMan -ComputerName 192.168.1.100(将 IP 替换为目标机实际地址)。
3、若返回详细协议信息,表示 WinRM 通信层就绪;再执行:Enter-PSSession -ComputerName 192.168.1.100 -Credential $cred($cred 需提前用 Get-Credential 获取)。
4、成功进入交互式远程会话后,终端提示符将变为 [192.168.1.100]: PS>。

















