![防止将虚拟磁盘安装到另一台机器上](https://linux22.com/image/619766/%E9%98%B2%E6%AD%A2%E5%B0%86%E8%99%9A%E6%8B%9F%E7%A3%81%E7%9B%98%E5%AE%89%E8%A3%85%E5%88%B0%E5%8F%A6%E4%B8%80%E5%8F%B0%E6%9C%BA%E5%99%A8%E4%B8%8A.png)
是否可以构建虚拟机(VMWare 或 VirtualBox),使得磁盘无法安装或读取(如果安装到另一台虚拟机上)?只要启动时不需要密码并且受保护卷中的所有服务都可以在启动时启动,则涉及在主机系统中加密卷的解决方案是可行的。
为了让您了解一些背景信息,我们正在制作软件(一种 Web 服务)的演示版,供潜在客户以预配置的虚拟机形式下载。我们希望阻止爱管闲事的潜在客户查看或篡改它。我们的 VM 已经禁用了单用户模式,并且 GRUB 已受密码保护,但如果有人将卷安装到另一台虚拟机上,这些都无关紧要。
答案1
简而言之,不行。你只能做到更加困难和昂贵让某人从虚拟机镜像中删除你的专有内容;你不能这样做不可能的。
一旦我有了你的磁盘映像,我就可以用它来做任何我想做的事情。
即使你对其进行加密并在其中的某个地方嵌入加密密钥,我也可以一直浏览直到找到它。
这里通常的解决方案是使用代码混淆工具,例如 PHP 的 Zend Guard、.NET 应用程序的 Dotfuscator 等。