1

我想创建通过一些队列任务接收的 Windows 服务,以同时运行许多控制台应用程序。我也想让我的服务器安全。仅仅因为任何人都可以将病毒上传到我的服务器并安排它运行。应用程序可以用 Java、C# 编写,它们也可以是原生应用程序,用纯 C 编写。

最简单的方法是使用虚拟机运行应用程序。但是 VM 需要大量资源来运行,事实上,对于每个 VM,我将运行单独的 Windows 副本,这会占用大量内存和处理器资源。

第二种方法是编写文件系统微过滤内核驱动程序来控制文件系统和Windows注册表。我可以制作隔离文件夹并限制对其他文件夹的所有访问。我也可以为每个正在运行的线程和进程设置配额。但我无法控制内存,它可以用来破解我的沙箱。

理想情况下,我需要一个可以在沙箱中运行应用程序的解决方案,还需要控制这个沙箱(清理它,将新应用程序部署到其中,运行刚刚部署的应用程序,从沙箱复制日志文件)。

4

1 回答 1

0

我刚刚找到了解决方案。解决方案是使用 ReactOS 作为 VirtualBox 上的客户操作系统。因此,因为我想使用 4-5 台 PC 和每台大约 20 个来宾操作系统来创建“计算集群”,所以我需要有来宾操作系统,它不会占用太多内存。ReactOS 占用大约 25 Mb 或 RAM。以及 25 到显卡仿真和其他 VirtualBox 的东西。我将创建部署服务来部署我需要在 ReactOS 中运行的应用程序。之后,客户操作系统将收到有关部署完成的通知,并将运行已部署的应用程序。应用程序完成工作后,所有日志将被复制到主机,来宾虚拟机将回滚到快照。所以,如果有人上传病毒,它的所有工作结果都会被自动清除。而且我可以运行很多副本,因为 ReactOS 只占用 25-30 Mb 的 RAM

于 2012-06-14T07:54:59.440 回答