WinRM的配置使用
WinRM(Windows Remote Management)windows远程管理,这个是基于powershell的功能,一个形象的类比就是ssh之于linux。这些年windows在server端上也极力向linux看齐,有兴趣的可以去了解下Windows Server Version 1709,就是一个只有Server Core,没有GUI的windows,真是活久见吧。具体可以去下载试用下,或者直接阿里云上花点钱搞个试试。Server Core和普通的带GUI图形界面的Windows Server 的主要区别如下:
- 资源管理器没有了。我们熟悉的Windows Explorer,无法出现在Server Core里。
- 所有依赖MMC的控制台界面没有了。也就是说运行*.msc将不会工作。例如:我们无法通过运行devmgmt.msc打开设备管理器了。
- 除了区域和语言及时间,其他的控制面板选项也没有了。
- 比较”著名”的IE也没有了
根据微软的说法:它可以提供强大的优势,如硬件要求较低、攻击面更小并且减小了更新需求。回到当前的主题,说下我的需求,之所以开WINRM,是内部一台主机跑有内部系统,系统运行在hyper-v上面的虚机里,平时出于安全是关闭的,只有在临时用的时候开下。目前想做的就是想一键搞定虚拟的关闭和开启。
一、服务端配置
在被管理的服务器上,通过如下操作,进行winrm服务配置:
1# 查看状态,如无返回信息,则是没有启动
2winrm enumerate winrm/config/listener
3# 对winrm service 进行基础配置
4winrm quickconfig
5#为winrm service 配置加密方式为允许非加密
6winrm set winrm/config/service ‘@{AllowUnencrypted="true"}’
理论上在使用winrm quickconfig进行配置时,会自动放行防火墙策略,不过如果有异常,也可以通过命令进行开通放行:
1Set-NetFirewallRule -Name "WINRM-HTTP-In-TCP-PUBLIC" -RemoteAddress Any
也可以在powershell下使用如下命令开启WINRM:
Enable-PSRemoting -Force
二、客户端配置
这里的客户端是指需要远程连接被管理的机器上,运行以下命令以接受被管理的机器是受信任的。如果想管理任何机器,替换 10.73.157.125 为 *。之前这一步理解有误,是在服务端配置的,导致连接时一直提示“CategoryInfo : InvalidArgument: (10.73.157.125:String) [Enter-PSSession], PSRemotingTransportException FullyQualifiedErrorId : CreateRemoteRunspaceFailed”的错误。
1Set-Item WSMan:localhost\client\trustedhosts -value 10.73.157.125 -Force
这一步感觉也是醉了,我去连接别人,还需要我自己对我自己授权。
接下来打开windows powershell ise工具— 新建一个远程powershell连接,就可以正常了,连接过去以后,输入hostname就可以打印被管理主机的主机名。
参考页面:
捐赠本站(Donate)
如您感觉文章有用,可扫码捐赠本站!(If the article useful, you can scan the QR code to donate))
- Author: shisekong
- Link: https://blog.361way.com/winrm-quickconfig/6370.html
- License: This work is under a 知识共享署名-非商业性使用-禁止演绎 4.0 国际许可协议. Kindly fulfill the requirements of the aforementioned License when adapting or creating a derivative of this work.