基于Hyper-V+RDP对国产软件进行隔离

1081 字
5 分钟
基于Hyper-V+RDP对国产软件进行隔离

前言#

因为**某些需要**,我认为将国产软件与一些科学的服务跑在同一个环境中是不大安全和明智的

所以我决定用Hyper-V虚拟机去隔离,同时也能保证我宿主机的简洁

为什么用Hyper-V#

首先的话,为什么用Hyper-V而不是VMware或者VirtualBox

其实很简单,为了流畅性我们最好还是使用GPU-PV去给虚拟机分下显卡,那这个肯定几乎只有Hyper-V支持了

再加上如果需要完全进入沙箱环境,比如我的一些工作,我可以用Sunshine的方式去远程连接,甚至是可以打游戏的

而Sunshine的话是必须要GPU的

开始折腾#

Hyper-V的启用#

这个很简单,在Windows功能里启用Hyper-V,我之前装过WSL2所以已经启用了,这个不过多赘述

值得一提的是,在启用之后实际上你的宿主机也会由Hypervisor管理,相当于也变成了一个大号虚拟机

但这个对于性能影响其实很小

我必须要批评的是国内一些CS对战平台至今不支持Hyper-V,如果打开会导致你用不了这些平台,非常垃圾

虚拟机的配置#

系统的话我选择是Windows11 IoT LTSC

一个是轻量,不会过多占用硬盘的空间

一个是长期支持,不会频繁Windows Update

ISO下载的话值得提醒的就是,不要去微软官网去下,那里得到的是试用版本,无法切换为正式版

然后的话不需要手动安装,我们这里用EASY-GPU-PV,会自动处理驱动等配置

在项目的CopyFilesToVM.ps1中除了按照README修改iso路径账号密码以外,我们还需要改一下Edition

Terminal window
Edition = 2

因为我们提供的Windows11 IoT LTSC中,我们需要的版本在安装界面的第二个位置

至于他说的一定要和宿主机系统相同,我倒是没见到有啥问题

当然前提是宿主机也是11,如果是10的话我就不知道啥情况了

运行脚本大概五分钟系统就好了

系统的精简#

首先的话还需要对系统做一些更改

激活#

虽然网上说 LTSC IoT 不能用 Activation Script 但是我不知道为什么我可以()

所以实际激活也就一行命令

Terminal window
irm https://get.activated.win | iex

然后选1 自己就激活了

关闭Windows Defender#

这个肯定是要关的,首先的话需要先关掉主动防御,不然 Defender 会杀掉关 Defender 的程序

然后彻底删除用了这个项目

windows-defender-remover

卸载Edge#

我是 IoT 版本 所以这个并没有预装,可以用这个项目进行卸载

Remove-MS-Edge

最好不要删除 WebView2 不然一些软件会用不了

限制对局域网的访问#

我不希望虚拟机可以访问我的局域网中的任何IP,仅能访问互联网

有俩方案

  • 在路由器用 ACL 限制
  • 本机直接用 Netsh 或者防火墙

我选择方案二

首先的话是不能用 Defalt Switch 的,因为微软自己给这玩意配了转发和 DHCP

结果又不给配置的地方 差评

新建一个 Internal Switch,然后在虚拟机里选择这个Switch

完事给他创建 NAT

Terminal window
New-NetNat `
-Name "SandboxNAT" `
-InternalIPInterfaceAddressPrefix 192.168.137.0/24

因为没有 DHCP 所以我们要在虚拟机里手动设置静态 IP

这个去设置手动改一下就行,虚拟机可以用 192.168.137.1以外任何一个/24的IP

最后用防火墙阻挡所有通向内网的IP请求

Terminal window
New-NetFirewallRule `
-DisplayName "Block VM LAN" `
-Direction Inbound `
-Action Block `
-RemoteAddress 192.168.137.0/24 `
-LocalAddress 10.0.0.0/16

至此系统就配置完了

远程连接#

我选择使用这个工具

Remote App Tool

我看到这玩意居然是用 VB 写的,老到家了

本来不想用,但是其实真的没得选

不管咋说,装了以后Add RemoteApp,选择你想要的程序

然后就可以在宿主机上直接运行虚拟机里的程序了

效果就和普通窗口一样,唯一缺点就是跑不到高刷,因为 Windows 的 RDP 似乎限制死了60FPS

就先这样吧()

文章分享

如果这篇文章对你有帮助,欢迎分享给更多人!

基于Hyper-V+RDP对国产软件进行隔离
https://cainongw.github.io/posts/hyperv-sandbox/
作者
Cainong
发布于
2026-05-11
许可协议
CC BY-NC-SA 4.0
相关文章 智能推荐
1
记一次从 Hexo Blog 到 Astro Firefly Blog 的迁移
前端 Hexo 目前还是不怎么够我用,一个是 JavaScript 并不是很好写(相较于Astro 而言。一个就是 Hexo 的主题和生态确实远远比不上新的基于 Astro Svelte这些前端框架,因此我决定迁移
2
记一次Chunithm的逆向
逆向 前言 之前写过一篇关于中二的逆向,但是没什么成果,加上我确实没什么逆向的能力,所以删掉重新研究了一下 这次目标依然是实现AutoPlay,得益于Agent的发展,现在我们可以让Agent直接去访问IDA MCP来逆向,我们就不用啃反编译出来的狗屎了
3
基于Owncast的自建直播平台
Docker 前言 之前搭建的SRS让我想起我完全可以自己搭一个直播平添给群友用 之前的话用Oopz Discord等直播都需要开会员,而且帧率也很低 所以我打算研究下自建的直播平台
4
自己搭建一个屏幕共享/会议系统
Docker 前言 因为某些工作需要双人共享屏幕聊天以及操作,但是众所周知国内很多会议软件并不是免费的 例如钉钉,腾讯会议,飞书等都不好用,因此我决定自己搭建一个
5
把YouTube的视频传到AppleMusic
YouTube 好久没写过blog了 绝对不是我想水文章 前言 在YouTube发现很多我喜欢的翻唱 乐器翻弹 之前我的流程是用一些解析网页下下来1080P 然后ffmpeg手动把他音频拿出来并转成ALAC传到AppleMusic上 然后还要手动拿封面填进去 太麻烦了
随机文章 随机推荐
Profile Image of the Author
Cainong
Caiw there 👋
公告
欢迎来到我的博客!这是一则示例公告。
音乐
封面

音乐

暂未播放

0:00 0:00
暂无歌词
分类
站点统计
文章
38
分类
16
标签
48
总字数
57,650
运行时长
0
最后活动
0 天前

文章目录