Solaris,ZFS,encryption引导以保护站点服务器的安全

我们将build立一个非现场服务器系统。 所有的硬盘数据将被encryption

计划是有两部分引导(如果可能的话)。

第一部分启动,并不断要求encryption密钥,以便它可以解密硬盘。

第二部分是具有encryption部分的实际生产环境。

当服务器第一次启动时,我们将确保在盒子附近没有黑客。 然后,我们将手动将硬盘密钥提供给非现场服务器。 硬盘密钥将使用辅助密钥进行encryption。 辅助密钥将被replace为将用旧的辅助密钥encryption的新的辅助密钥。 (这实际上比这更难以捉摸,但是解释这一部分没有意义)

我的问题是,我们如何启动到一个磁盘的encryption分区,而不在机器上存储磁盘encryption密钥?

如果方便的话,第一个启动操作系统不一定是Solaris。

第二次启动(生产环境)的encryption文件系统非常适合ZFS。 并要求第二次启动是Solaris。

另外,如果方便的话,磁盘encryption密钥可以临时存储在未encryption的分区上,然后在第二次启动后删除。 (如果密钥永远不会写入磁盘,它会更干净,但我知道可能需要临时存储它并更改GNU GRUB默认值并执行常规init 6

目前还不支持encryption的ZFS启动文件系统:

http://hub.opensolaris.org/bin/view/Project+zfs-crypto/WebHome

你可以encryption所有的东西,包括交换和转储,所以如果有人抓住一个驱动器,他们只能得到一些无用的操作系统文件。

你应该看看Mandos如何做到这一点。 它只适用于Debian和Ubuntu,但它使用的方法应该是有用的。