什么是 FIPS 合规性?
联邦信息处理标准 (FIPS - Federal Information Processing Standards) 是美国政府指定的用于批准加密软件的标准。
美国国家标准与技术研究院 (NIST) 迄今为止发布了 FIPS 140-1 和 FIPS 140-2 标准,而 FIPS PUB 140-2 是“密码模块的安全要求”标准。
在 CentOS/RHEL 7 上启用 FIPS 的步骤包括安装 dracut-fips 包。
该软件包提供了一个文件 /etc/system-fips,启用 FIPS 的软件(例如 openssh 客户端)使用该文件来检查内核中是否启用了 FIPS 模式。
在安装期间使用 fips=1 会告诉安装程序自动安装 dracut-fips 包。
on It Road.com
禁用 FIPS 模式
- 删除 dracut-fips 包。
# yum remove dracut-fips*
- 备份 FIPS initramfs。
# cp -p /boot/initramfs-$(uname -r).img /boot/initramfs-$(uname -r).backup
注意:检查是否已创建 initramfs 文件。
此外,我们可以使用其他位置而不是 /boot/ 来避免空间问题。
- 重新创建 initramfs 文件:
# dracut -f
或者
# dracut -f -v /boot/initramfs-$(uname -r).img $(uname -r)
- 从内核命令行禁用 fips=1 值。
修改 grub.cfg 中当前内核的内核命令行,在 /etc/default/grub 文件中的 GRUB_CMDLINE_LINUX 项中加入以下选项“fips=0”,然后重建 grub.cfg 文件:
GRUB_CMDLINE_LINUX 行的示例如下:
# cat /etc/default/grub | grep GRUB_CMDLINE_LINUX= GRUB_CMDLINE_LINUX="crashkernel=auto rd.lvm.lv=vg_os/root rd.lvm.lv=vg_os/swap rhgb quiet fips=0"
- 对 /etc/default/grub 的更改需要重新构建 grub.cfg 文件,如下所示:
# grub2-mkconfig -o /boot/grub2/grub.cfg
或者如果我们有基于 UEFI 的运行:
# grub2-mkconfig -o /boot/efi/EFI/redhat/grub.cfg
- 重新启动服务器以使更改生效:
# shutdown -r now
- 重新启动后检查 FIPS 是否未处于强制模式 /proc/sys/crypto/fips_enabled 应为 0。
例子:
# cat /proc/sys/crypto/fips_enabled 0
日期:2020-09-17 00:13:30 来源:oir作者:oir