缺省情况下,Oracle Solaris 中禁用了 FIPS 140 模式。在此过程中,您将为 FIPS 140 模式创建一个新的引导环境 (boot environment, BE),然后启用 FIPS 140 并引导进入新的 BE。通过为您提供备份 BE,此方法允许您从由于 FIPS 140 符合性测试导致的系统紧急情况中快速恢复。
有关 FIPS 的概述,请参见Using a FIPS 140 Enabled System in Oracle Solaris 11.2 。另请参见 cryptoadm(1M) 手册页和加密框架和 FIPS-140。
开始之前
您必须承担 root 角色。有关更多信息,请参见在 Oracle Solaris 11.2 中确保用户和进程的安全 中的使用所指定的管理权限。
% cryptoadm list fips-140 User-level providers: ===================== /usr/lib/security/$ISA/pkcs11_softtoken: FIPS-140 mode is disabled. Kernel software providers: ========================== des: FIPS-140 mode is disabled. aes: FIPS-140 mode is disabled. ecc: FIPS-140 mode is disabled. sha1: FIPS-140 mode is disabled. sha2: FIPS-140 mode is disabled. rsa: FIPS-140 mode is disabled. swrand: FIPS-140 mode is disabled. Kernel hardware providers: =========================:
在启用 FIPS 140 模式之前,您必须先使用 beadm 命令创建、激活并引导新的 BE。启用了 FIPS 140 的系统将运行符合性测试,如果这些测试失败,会导致出现紧急情况。因此,在调试 FIPS 140 边界问题时,具有可用于引导以启动系统并让系统运行的 BE 很重要。
在此示例中,您将创建一个名为 S11.1-FIPS 的 BE。
# beadm create S11.1-FIPS-140
# beadm activate S11.1-FIPS-140
# cryptoadm enable fips-140
有关 FIPS 140 模式的效果的更多信息,请参见Using a FIPS 140 Enabled System in Oracle Solaris 11.2 。另请参见 cryptoadm(1M) 手册页。
您可以重新引导至原始 BE 或在当前 BE 中禁用 FIPS 140。
# beadm list BE Active Mountpoint Space Policy Created -- ------ ---------- ----- ------ ------- S11.1 - - 48.22G static 2012-10-10 10:10 S11.1-FIPS-140 NR / 287.01M static 2012-11-18 18:18 # beadm activate S11.1 # beadm list BE Active Mountpoint Space Policy Created -- ------ ---------- ----- ------ ------- S11.1 R - 48.22G static 2012-10-10 10:10 S11.1-FIPS-140 N / 287.01M static 2012-11-18 18:18 # reboot
# cryptoadm disable fips-140
FIPS 140 模式将保持运行,直到系统重新引导。
# reboot