fips-mode-setup(8) is used to check and control the system FIPS mode.
When enabling the system FIPS mode, the command completes the installation of FIPS modules if needed by calling fips-finish-install and changes the system crypto policy to FIPS (unless the policy has already been set to FIPS plus subpolicies on top, in which case the currently active subpolicies is retained).
Then the command modifies the boot loader configuration to add fips=1 and boot=<boot-device> options to the kernel command line.
When disabling the system FIPS mode the system crypto policy is switched to DEFAULT and the kernel command line option fips=0 is set.
The following options are available in fips-mode-setup tool.
- --enable: Enables the system FIPS mode.
- --disable: Undo some of the FIPS-enablement steps (unsupported).
- --check: Checks for inconsistently enabled FIPS mode. Exits successfully (0) for both consistently-enabled FIPS mode and consistently-disabled FIPS mode, returns error code (1) if inconsistencies are detected. For checking whether FIPS mode is enabled, see --is-enabled below.
- --is-enabled: Checks the system FIPS mode status and returns failure error code if disabled (2) or inconsistent (1).
- --no-bootcfg: The tool will not reconfigure the boot loader, and, instead, will print the options that need to be added to the kernel command line. Exception: it still attempts executing zipl(8) on s390x, as the system might become unbootable otherwise.
The kernel FIPS mode flag.
Written by Tomáš Mráz.
crypto-policies(7), fips-finish-install(8), update-crypto-policies(8).