防止将虚拟磁盘挂载到另一台计算机上

是否可以构build虚拟机(VMWare或VirtualBox),以便在安装到另一个虚拟机时无法装入或读取磁盘? 如果在启动时不需要密码,并且来自受保护卷的所有服务都可以在启动时启动,则包含encryption主机系统中的卷的解决scheme是正常的。

为了给你一个小小的背景,我们正在演示我们的软件(一种networking服务),作为一个预先configuration的虚拟机供下载。 我们希望阻止美观的前景从内部或篡改它。 我们的虚拟机已经禁用了一个用户模式,GRUB被一个密码保护,但是没有任何问题是有人将这个卷挂载到另一个虚拟机上。

总之,没有。 你只能让别人从VM镜像中获取专有的东西变得更加困难和昂贵 ; 你不能使它不可能

一旦我有你的磁盘映像,我可以做任何我想要的东西。

即使你encryption它并在其中embedded一个encryption密钥,我也可以直接find它。

这里通常的解决scheme是使用代码混淆工具,如用于PHP的Zend Guard,用于.NET应用程序的Dotfuscator等。