我们将为异地服务器建立一个系统。所有硬盘数据都将被加密。
计划是拥有两部分的靴子(如果可能的话)。
第一部分启动并不断请求加密密钥,以便解密硬盘。
第二部分是实际生产环境,属于加密部分。
当服务器首次启动时,我们将确保服务器附近没有黑客。然后,我们将手动将硬盘密钥提供给异地服务器。硬盘密钥将使用辅助密钥加密。辅助密钥将被新的辅助密钥替换,新的辅助密钥将使用旧的辅助密钥加密。(实际上会比这更难以捉摸,但解释这一部分毫无意义)
我的问题是,我们如何才能在不将磁盘加密密钥存储在机器上的情况下启动磁盘的加密分区?
如果方便的话,第一个启动的操作系统不一定是 Solaris。
第二次启动(生产环境)的加密文件系统最好是 ZFS,并且要求第二次启动是 Solaris。
此外,如果方便的话,磁盘加密密钥可以暂时存储在未加密的分区上,然后在第二次启动后删除。(如果密钥从未写入磁盘,它会更干净,但我知道可能需要暂时存储它并更改 GNU GRUB 默认值并执行常规init 6
)
答案1
目前尚不支持加密的 ZFS 启动文件系统:
http://hub.opensolaris.org/bin/view/Project+zfs-crypto/WebHome
您可以加密其他所有内容,包括交换和转储,因此如果有人获取了驱动器,他们只能获得一些无用的操作系统文件。
答案2
你应该看看曼陀罗可以。它仅适用于 Debian 和 Ubuntu,但它使用的方法应该很有用。