本附录介绍将 OKM 与 Oracle Solaris 11 ZFS 结合使用,来管理 ZFS 存储池中文件的加密和解密。通过该解决方案,您可以使用 Oracle StorageTek 磁带机中所用的加密技术管理 ZFS 存储池的加密密钥。
本附录假设您已经熟悉 Solaris 11 和 Oracle Solaris ZFS。
有关 Oracle Solaris 11 的更多信息,请参阅 Oracle Solaris 11 出版物。
有关 Oracle Solaris ZFS 的更多信息,请参阅出版物《Oracle Solaris 管理:ZFS 文件系统》。
为了从 OKM 群集中检索加密密钥,可将 ZFS 配置为使用 OKM 的 PKCS#11 提供程序 pkcs11_kms。这要求具备配置的 OKM 群集以及与该 OKM 群集中的 KMA 建立了连接的 Solaris 11 系统。
Solaris 11 管理员安装和配置 pkcs11_kms 后,管理员可要求 pkcs11_kms 创建一个密钥,然后指示 ZFS 使用该密钥。
pkcs11_kms 在附录 B 中进行了介绍。有关更多信息,请参见以下内容:
要将 OKM 和 ZFS 集成,必须执行以下任务:
为 ZFS 配置 OKM 群集
在 Solaris 11 系统上安装 pkcs11_kms
配置 pkcs11_kms 以供 ZFS 使用
配置 ZFS 以使用 pkcs11_kms
这些任务将在下面几节中进行介绍。
注:
这些任务的许多信息在使用透明数据加密 (Transparent Data Encryption, TDE) 的 OKM 配置中也适用。在适当的情况下,下面几节包括附录 B 中所述其他信息的参考。要配置 OKM 群集以便与 ZFS 结合使用,请执行以下步骤:
确保 OKM 群集中的所有 KMA 都在运行 Oracle Key Manager 2.4.1 或更高版本,并且 OKM 群集使用 Replication Schema 版本 13。
GUI 和 CLI 支持的 OKM 管理平台在 OKM 产品发行说明中进行了介绍,其中包括 Oracle Solaris 和 Microsoft Windows 平台的特定注意事项。
创建密钥策略和密钥组、配置代理,并将该代理与作为其默认密钥组的密钥组关联。有关更多信息,请参见"为 TDE 配置 OKM 群集"。
要在 Solaris 11 系统上安装 Oracle 的 PKCS#11 提供程序 pkcs11_kms,请执行"为 Oracle Solaris 11 或 Solaris 11 Express 安装 pkcs11_kms"中所述的步骤。
要在 Solaris 11 系统上配置 pkcs11_kms,请执行"为 TDE 配置 pkcs11_kms"中所述的第 2 步和第 3 步。
注:
请忽略 Oracle RAC 的参考,因为这些内容不适用于 OKM/ZFS 集成。安装和配置 pkcs11_kms 提供程序后,请在 pkcs11_kms 提供程序中执行以下步骤来生成密钥,并配置 ZFS 以在加密特定 ZFS 池中所含文件系统中的文件时使用该密钥。
使用 Solaris pktool genkey 命令创建 AES 256 位密钥。
在 "Enter PIN for KMS" 提示下,输入配置 pkcs11_kms 时提供给 kmscfg 实用程序的代理的口令短语。
例如:
# pktool list token=KMS objtype=key Enter PIN for KMS: # pktool genkey keystore=pkcs11 token=KMS keytype=aes keylen=256 label=zfscrypto_key_256 Enter PIN for KMS: # pktool list token=KMS objtype=key label=zfscrypto_key_256 Enter PIN for KMS:
使用 zfs create 命令配置 ZFS 以使用该密钥。
在 zfs create 命令的 "keysource" 参数中,指定在第 1 步中生成的密钥的标签。
在 "Enter 'KMS' PKCS#11 token PIN" 提示下,输入代理的口令短语。
例如:
# zfs create -o encryption=aes-256-ccm -o keysource="raw,pkcs11:token=KMS;object=zfscrypto_key_256" cpool_nd/cfs Enter 'KMS' PKCS#11 token PIN for 'cpool_nd/cfs':