域控制器需手动启用powershell远程处理,执行enable-psremoting -force;客户端同域时用kerberos免密直连最安全,跨林或非域账号需显式提供凭据,多跃点场景慎用credssp。
在域环境中管理域控制器(dc),powershell 远程处理是高效、标准化的运维方式。关键不是“能不能连”,而是“连得安全、稳、可控”。核心前提是:winrm 服务启用、防火墙放行、凭据可信、权限明确。
域控端必须启用 PowerShell 远程处理
域控制器默认不自动开启 PowerShell 远程处理(即使 Windows Server 默认启用,AD DS 角色安装后常被重置或策略覆盖)。需以本地管理员或域管理员身份在 DC 上运行:
- Enable-PSRemoting -Force —— 强制启用,跳过网络配置检查(尤其当 NIC 被识别为“公共网络”时)
- 该命令会启动 WinRM 服务、设为自启、创建监听器(HTTP:5985 / HTTPS:5986)、配置防火墙规则、开放默认会话终结点
- 若使用 HTTPS 加密通信,需提前在 DC 上绑定有效证书,并运行 winrm create winrm/config/Listener?Address=*+Transport=HTTPS 手动配置 HTTPS 监听器
客户端需满足连接前提
管理机(如域成员工作站)无需启用远程处理,但需确保:
- 已安装 Windows Management Framework(WMF)4.0 或更高版本(推荐 PowerShell 7+,兼容性与安全性更优)
- 若用域账号直连(如 contoso\admin),客户端无需额外配置;若跨林或使用非域账号,需配合 -Credential 参数显式提供凭据
- 首次连接非域控或证书未信任的机器时,可临时添加目标 DC 到本地 TrustedHosts(仅限测试环境):
Set-Item WSMan:\localhost\Client\TrustedHosts -Value "192.168.1.10" -Concatenate -Force
安全连接推荐方式:Kerberos + 域信任
域内 DC 间远程管理最安全、最省心的方式是依赖 Active Directory 原生 Kerberos 认证:
- 只要客户端和 DC 同属一个域(或存在双向信任的域),Enter-PSSession dc01.contoso.local 即可免密登录(SSO)
- Kerberos 自动完成相互身份验证,杜绝中间人冒充风险,无需手动配证书或改 TrustedHosts
- 验证是否生效:运行 Test-WsMan dc01.contoso.local,返回协议信息即表示 WinRM 可达且认证通路正常
多跃点场景(如跳转服务器管理 DC)需谨慎启用 CredSSP
若必须通过一台跳转服务器(如堡垒机)再连接 DC,凭据需二次委派。此时需在跳转机(客户端)和 DC(服务器)两端都启用 CredSSP:
- 跳转机执行:Enable-WSManCredSSP -Role Client -DelegateComputer "dc01.contoso.local"
- DC 执行:Enable-WSManCredSSP -Role Server
- 连接时指定:Enter-PSSession dc01.contoso.local -Authentication Credssp -Credential contoso\admin
- ⚠️ 注意:CredSSP 将明文凭据缓存于跳转机内存,仅限高度可信环境启用;生产域控建议避免,优先使用直接域连接或 JEA(Just Enough Administration)限制命令范围











