Windows服务器WinRM服务配置与故障排查
本文介绍如何配置Windows服务器上的WinRM服务进行远程连接,以及遇到连接问题的故障排查方法。
WinRM服务配置
- 使用管理员权限(如 administrator 账户或 administrators 组内的本地账户)登录到源端服务器。
- 以管理员权限运行PowerShell。
- 在PowerShell中执行如下命令,启动WinRM服务。
winrm quickconfig Enable-PSRemoting Set-ExecutionPolicy -ExecutionPolicy RemoteSigned
- 使用管理员权限,登录安装Edge的服务器,并以管理员权限运行PowerShell。步骤5.~7.均在安装Edge的主机上执行。
- 配置信任主机。
在PowerShell中执行如下命令,将源端服务器加入到信任的host中。
winrm set winrm/config/client '@{TrustedHosts="*"}'
出于安全考虑,建议使用源端服务器的WinRMhost(即主机名或IP地址)替换TrustedHosts 的值"*"。不替换代表信任任意主机。
- 测试远程连接。
使用以下命令测试与源端服务器的连接,“登录账号”和“源端服务器IP”需要替换为源端服务器实际的登录账号和IP地址。
Enter-PSSession -Credential 登录账号 -ComputerName 源端服务器IP
- 在弹出的对话框中输入源端服务器登录账号对应的密码,单击“确定”,测试是否连接成功。
- 如果连接成功,可以输入任意命令来测试联调性。
- 如果连接失败,请参考WinRM远程连接失败故障排查,进行处理。
WinRM远程连接失败故障排查
如果远程连接测试失败,请参考方法进行故障排查:
- 检查端口连接:使用 telnet 命令测试源端服务器的5985端口是否可以访问。如果端口无法访问,检查源端防火墙或安全防护软件设置,确保5985端口开放。
telnet ip port
- 检查网络配置:检查网络执行模式是否设置为“经典模式”,通过以下注册表命令检查:
reg query "HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Lsa" /v forceguest
- 如果 forceguest 的值为“REG_DWORD 0x0”,则代表网络执行模式是“经典模式”。
- 如果 forceguest 的值不是“REG_DWORD 0x0”,使用以下命令设置或更新 forceguest 值:
reg add "HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Lsa" /v forceguest /t reg_dword /d 0x0
- 确认账号密码:确保在连接命令中输入的账号和密码是准确无误,错误的凭证会导致登录失败。
请按照以上方法排查,通常能够帮助定位并解决连接问题。如果问题依旧存在,建议联系技术支持人员寻求帮助。