使用 WinRM 服务和 Windows Admin Ceter 实现远程控制
Intro
近日在探索 Windows Server 平台上类似于 VMware vSphere ESXi / Web Client 的解决方案。
了解到 Windows Admin Center 可以靠 AAD 或者 Windows 凭据登录服务器上的 Host OS 进行管理,偶然发现在经过配置后甚至可以对自己未加入 Azure Active Directory 的笔记本进行管理,狂喜!
上效果图:
Windows Admin Center 侧需要准备的
- 安装 WAC
- WAC > 设置 > 扩展中安装自己想要的扩展,这里我额外安装了 SDN 组件和性能监控
- 查看服务情况、监听和防火墙/路由规则,确保连接通畅
被控 Windows 侧需要准备的
- 开启 WinRM 服务
Set-NetFirewallRule -Name WINRM-HTTP-In-TCP -RemoteAddress Any
Set-Item WSMan:\localhost\Client\TrustedHosts -Value '*'
这里强烈建议只开放连接给自己的WAC服务器IP(No Wildcard)
- 查看账户类型
Windows 10+ 下,账户类型主要为 Microsoft Single-Sign On (SSO) 账户或本地账户,要区分很简单,MSSSO 账户会有域名地址,类似于邮件。
填写对应的用户名和密码即可,WAC 控制端和被控端都不需要加入 AAD.
- Enjoy!
开放服务
受控端配置
# 查看状态,如无返回信息,则是没有启动
winrm enumerate winrm/config/listener
# 对 WinRM Service 进行基础配置
winrm quickconfig
#为 WinRM Service 配置加密方式为允许非加密
winrm set winrm/config/service ‘@{AllowUnencrypted="true"}’
Set-NetFirewallRule -Name "WINRM-HTTP-In-TCP-PUBLIC" -RemoteAddress Any
# 也可以在 PowerShell 使用命令开启 WinRM
Enable-PSRemoting -Force
控制端配置
这里有一个比较烧脑的概念,即使是控制端主动连接别人,也需要对IP授权。
Set-Item WSMan:localhost\client\trustedhosts -value <IP> -Force
Refer
- https://blog.csdn.net/leejeff/article/details/82907773
- https://blog.51cto.com/wuyvzhang/1719409
- https://www.se7ensec.cn/2020/08/26/%E5%86%85%E7%BD%91%E6%B8%97%E9%80%8F-%E5%9F%BA%E4%BA%8Ewinrm%E7%9A%84%E6%A8%AA%E5%90%91%E7%A7%BB%E5%8A%A8/
- https://www.freebuf.com/articles/system/259632.html
- https://www.wangan.com/p/7fygfg3e497a3528#%E4%BD%BF%E7%94%A8Metasploit%E5%86%85%E7%BD%AE%E6%A8%A1%E5%9D%97