Windows用PowerShell远程管理服务器方法
在Windows中实现PowerShell远程管理需启用WinRM服务并配置信任关系,支持Enter-PSSession交互会话、New-PSSession持久化会话、HTTPS跳过证书验证及CIMSession无WinRM替代方案。
在Windows中实现PowerShell远程管理需启用WinRM服务并配置信任关系,支持Enter-PSSession交互会话、New-PSSession持久化会话、HTTPS跳过证书验证及CIM Session无WinRM替代方案。

如果您希望在Windows系统中使用PowerShell远程管理其他服务器,需确保目标计算机已启用WinRM服务并配置了正确的信任关系。以下是实现远程会话连接的多种方法:
一、启用并配置目标服务器的WinRM服务
远程PowerShell会话依赖于Windows Remote Management(WinRM)服务,该服务默认可能处于禁用状态,必须手动启动并设置监听策略与身份验证方式。
1、以管理员身份运行PowerShell。
2、执行命令 Enable-PSRemoting -Force,自动启用WinRM、启动服务、创建防火墙规则并配置基本监听器。
3、运行 winrm quickconfig 验证配置结果,确认输出中包含“WinRM service is already running”和“WSManFault”未出现。
4、如需允许HTTP明文传输(仅限受信内网),执行 Set-Item WSMan:\localhost\Client\TrustedHosts -Value "*";若指定IP,替换为 "192.168.1.10,192.168.1.11"。
二、使用Enter-PSSession建立交互式远程会话
Enter-PSSession用于启动一个实时、交互式的PowerShell会话,所有后续命令均在远程计算机上下文中执行,适用于调试与临时管理任务。
1、确保本地与远程主机时间偏差不超过5分钟,否则Kerberos认证将失败。
2、执行命令 Enter-PSSession -ComputerName Server01 -Credential (Get-Credential),系统将弹出凭据窗口要求输入远程管理员账户。
3、成功连接后,命令行提示符变为 [Server01]: PS C:\>,表示当前处于远程会话中。
4、输入 Exit-PSSession 或按 Ctrl+Z 退出当前远程会话。
三、通过PSSession对象实现持久化会话管理
与Enter-PSSession不同,New-PSSession创建的是可复用、后台驻留的会话对象,支持多命令并发提交、跨会话数据共享及断开重连,适合自动化脚本场景。
1、运行 $s = New-PSSession -ComputerName Server01 -Credential (Get-Credential) 创建会话并保存至变量。
2、使用 Invoke-Command -Session $s -ScriptBlock { Get-Service WinRM } 在该会话中执行单条命令。
3、执行 Import-PSSession -Session $s -Module NetSecurity 将远程模块导入本地会话,使cmdlet可直接调用。
4、完成操作后,运行 Remove-PSSession -Session $s 显式释放远程资源。
四、绕过证书验证连接HTTPS WinRM端点
当目标服务器使用自签名SSL证书或未加入域时,PowerShell默认拒绝建立HTTPS远程连接,需临时禁用证书链验证机制。
1、创建自定义会话选项: $opt = New-PSSessionOption -SkipCACheck -SkipCNCheck -SkipRevocationCheck。
2、使用该选项发起连接: Enter-PSSession -ComputerName server01.contoso.com -UseSSL -SessionOption $opt -Credential (Get-Credential)。
3、注意:此方式仅适用于测试环境,生产环境中应部署由受信CA签发的有效证书。
五、基于CIM Session的无WinRM依赖远程管理
CIM(Common Information Model)协议可通过WMI提供与PowerShell Remoting相似的能力,且不强制依赖WinRM服务,在某些受限策略下可作为替代方案。
1、确认目标主机启用WMI服务并开放TCP 135端口及动态RPC端口范围。
2、执行 $cim = New-CimSession -ComputerName Server01 -Credential (Get-Credential) 建立CIM会话。
3、运行 Get-CimInstance -CimSession $cim -ClassName Win32_OperatingSystem 获取远程系统信息。
4、使用完毕后执行 Remove-CimSession -CimSession $cim 清理会话。
Postman是一套面向API全生命周期的开发与测试平台,可在Mac上发送和调试多种协议请求,管理集合、环境及认证信息,并完成脚本测试、模拟服务、监控、文档发布和团队协作。它适合开发、测试及运维人员使用,提供个人免费方案。
Docker Desktop 是 Docker 官方为 Mac 提供的容器开发环境,集成 Docker Engine、命令行工具、Compose、Build、Kubernetes 与图形化管理界面。
Android Studio 是 Google 面向安卓应用开发提供的官方集成开发环境,基于 IntelliJ IDEA 构建。它整合智能代码编辑、Gradle 构建、界面预览、设备模拟、性能分析、调试测试及 APK 分析等工具。
PixPix 是面向品牌、卖家和内容团队的在线 AI 图片视频创作平台,提供图视频 Agent、无限画布、图片生成、视频生成、自然语言编辑及商品套图、产品精修和带货视频等电商工具。
Postman 是面向 API 全生命周期的开发与协作平台。Windows 桌面版可用于构建和发送 HTTP、GraphQL、gRPC、WebSocket、MQTT 等请求,并提供环境变量、集合、脚本测试、模拟服务、监控、文档及团队工作区等
Docker Desktop 为 Windows 开发者提供集成式容器环境,内置 Docker Engine、命令行工具、Compose、Build 与 Kubernetes 等组件,可在本机完成镜像构建、容器运行、日志查看和资源管理。













