1、winrm简介
Windows远程管理(Windows Remote Management)WinRM
windows server2008及以上版本默认安装winrm,但是默认没有开启listener
winrm默认使用5985/5986端口通信,5985是http协议,5986是https协议
2、winrm相关命令
1、winrm g winrm/config:查看winrm配置
- 修改Powershell,将powershell策略更改为unrestricted。
管理员用户打开Powershell,执行如下命令:
set-executionpolicy unrestricted
更改powershell策略,如图5所示。
执行命令后提示是否确认更改,输入“Y”即可。
- 配置Windows远端管理(WinRM)。
- 在Powershell中依次输入如下五条命令:
winrm enumerate winrm/config/listener winrm quickconfig winrm set winrm/config/service/auth '@{Basic="true"}' winrm set winrm/config/service/auth '@{CredSSP="true"}' winrm set winrm/config/service '@{AllowUnencrypted="true"}'
- 校验是否配置成功,命令如下:
winrm get winrm/config/service/auth
执行命令后如果“Basic”、“Kerberos”、“CredSSP”均为true则表示配置成功,如图6所示。
- 在Powershell中依次输入如下五条命令:
- 安装证书。
- 打开服务器管理器,启动IIS。
- 单击
- 单击“下一步”,在“安装类型”节点,选择第一个选项,如图8所示。
- 单击“下一步”,在“服务器角色”节点,确认勾选IIS和IIS Manager,如图9所示。
- 单击“下一步”,在“功能”节点,确认勾选.NET,如图10所示。
- 单击
- 添加证书。
- 打开IIS管理器,双击“服务器证书”,如图11所示。
- 进入“服务器证书”界面,单击“创建自签名证书”,如图12所示。
- 进入“创建自签名证书”界面,为证书指定好名称,单击“OK”,如图13所示。
- 在Powershell中查看证书,输入如下命令:
ls Cert:\LocalMachine\My
出现如图14所示两列数据即表示证书添加成功。
- 通过证书监听HTTPS端口,配置安全连接。
命令格式如下:
winrm set winrm/config/Listener?Address=*+Transport=HTTPS @{Enabled="true";Port="自定义端口号,默认5986";Hostname="证书域名";CertificateThumbprint="证书key值"}
说明:- “Hostname”为上一步“Subject”列对应的值。
- “CertificateThumbprint”为上一步“Thumbprint”列对应的值。
如,在cmd中输入如下命令,如图15所示。
winrm set winrm/config/Listener?Address=*+Transport=HTTPS @{Enabled=”true”;Port="5986";Hostname="XXXXXXXXXXXXX";CertificateThumbprint="12DE438EE83D6A8DEFD814BD6595C843C630FBC7"}
重要的问题说三遍!!!注意到(图15)的截图了吗?这条最重要的命令一定要在CMD中运行,如果你在PowerShell中运行就行得到“Error:Invalid use of command line. Type "winrm -?" for help.”的错误。
- 在Powershell中校验是否监听成功,输入如下命令:
winrm e winrm/config/listener
若出现HTTPS则表示监听成功,即完成了所有配置,如 图16所示。