Red Hat Training

A Red Hat training course is available for Red Hat Enterprise Linux

第 9 章 联邦标准和 Regulations

为了保持安全级别,您的组织可以努力遵守联邦和行业安全规格、标准及法规。本章论述了其中的一些标准和规范。

9.1. 联邦信息处理标准(FIPS)

联邦信息处理标准(FIPS)出版物 140-2 是美国开发的计算机安全标准。政府和行业工作组来验证加密模块的质量。请参阅 NIST 计算机安全资源中心 上的官方 FIPS 出版物。
FIPS 140-2 标准可确保加密工具正确实施其算法。有关这些级别和其他 FIPS 标准规格的详情,请查看 http://dx.doi.org/10.6028/NIST.FIPS.140-2 的完整 FIPS 140-2 标准。
要了解合规要求,请参阅红帽政府标准页面

9.1.1. 启用 FIPS 模式

要使 Red Hat Enterprise Linux 与联邦信息处理标准(FIPS)出版物 140-2 兼容,您需要进行一些更改以确保使用认证加密模块。您可以在系统安装过程中或之后启用 FIPS 模式。

在系统安装过程中

要跟踪 严格的 FIPS 140-2 合规性,请在系统安装过程中将 fips=1 内核选项添加到内核命令行中。使用此选项时,所有密钥的生成都是使用 FIPS 批准的算法和持续监控测试进行的。安装后,系统被配置为自动引导至 FIPS 模式。
重要
通过移动鼠标或按许多击键操作,确保系统在安装过程中有大量熵。推荐的击键次数为 256 等等。少于 256 个击键操作可能会生成非唯一密钥。

系统安装后

要在安装后将系统的内核空间和用户空间变为 FIPS 模式,请按照以下步骤执行:
  1. 安装 dracut-fips 软件包:
    ~]# yum install dracut-fips
    对于带有 AES 新指令(AES-NI)支持的 CPU,还要安装 dracut-fips-aesni 软件包:
    ~]# yum install dracut-fips-aesni
  2. 重新生成 initramfs 文件:
    ~]# dracut -v -f
    要启用模块完整性验证,且内核启动过程中存在所有必需的模块,必须重新生成 initramfs 文件。
    警告
    此操作将覆盖现有的 initramfs 文件。
  3. 修改引导装载程序配置。
    要引导至 FIPS 模式,请在引导装载程序的内核命令行中添加 fips=1 选项。如果您的 /boot 分区位于独立分区中,请将 boot= <partition&gt; (其中 <partition > 代表 /boot)参数添加到内核命令行中。
    要识别引导分区,请输入以下命令:
    ~]$ df /boot
    Filesystem           1K-blocks      Used Available Use% Mounted on
    /dev/sda1               495844     53780    416464  12% /boot
    为确保 boot= 配置选项即使引导之间的设备命名更改也可以正常工作,请运行以下命令来识别分区的通用唯一识别符(UUID):
    ~]$ blkid /dev/sda1
    /dev/sda1: UUID="05c000f1-f899-467b-a4d9-d5ca4424c797" TYPE="ext4"
    在内核命令行中附加 UUID:
    boot=UUID=05c000f1-f899-467b-a4d9-d5ca4424c797
    根据您的引导装载程序,进行以下更改:
    • GRUB 2
      /boot> 选项的 fips=1 和 boot=<partition 添加到 /etc/default/grub 文件中的 GRUB_CMDLINE_LINUX 键中。要将更改应用到 /etc/default/grub,请重新构建 grub.cfg 文件,如下所示:
      • 在基于 BIOS 的机器上,以 root 用户身份输入以下命令:
        ~]# grub2-mkconfig -o /etc/grub2.cfg
      • 在基于 UEFI 的机器上,以 root 用户身份输入以下命令:
        ~]# grub2-mkconfig -o /etc/grub2-efi.cfg
    • zipl (仅适用于 IBM Z 系统架构)
      /boot> 选项的 fips=1 和 boot=<partition 添加到 /etc/zipl.conf 中,输入以下内容来应用更改:
      ~]# zipl
  4. 确保禁用预链接。
    要正确操作模块完整性验证,必须禁用对库和二进制文件的预链接。预链接由 prelink 软件包完成,该软件包默认不会安装。除非已安装 prelink,否则不需要这一步。要禁用预链接,请在 /etc/sysconfig/prelink 配置文件中设置 PRELINKING=no 选项。要禁用所有系统文件的现有预链接,请使用 prelink -u -a 命令。
  5. 重启您的系统。

在容器中启用 FIPS 模式

如果主机也在 FIPS140-2 模式中设置,则可以将容器切换到 FIPS140-2 模式,并满足以下要求之一:
  • dracut-fips 软件包安装在容器中。
  • /etc/system-fips 文件从主机挂载到容器上。