FIPS 140-3 Compliance in Oracle Linux
Describes Oracle Linux security configuration and guidance.
Oracle Linux provides a set of cryptographic libraries, services, and user-level cryptographic applications that are compliant with the Federal Information Processing Standard (FIPS) Publication 140-2.
FIPS Publication 140-2, Security Requirements for Cryptographic Modules, specifies the security requirements that must be satisfied by a cryptographic module that's used within a security system to protect sensitive, but unclassified information. The NIST/CSE Cryptographic Module Validation Program (CMVP) validates cryptographic modules to FIPS 140-2. Validated products are accepted by the Federal agencies of both the USA and Canada for the protection of sensitive or designated information.
Note
CMVP started accepting FIPS 140-3 submissions on September 22, 2020. Existing FIPS 140-2 validated modules remain compliant until they're sunset on September 21, 2026.
Configuring FIPS Mode in Oracle Linux 8
FIPS mode can be configured during the initial installation of Oracle Linux 8 or after installation, as described in the following sections.
Installing Oracle Linux 8 in FIPS Mode
Add
fips=1to the kernel command line during system installation to automatically configure a new Oracle Linux 8 system to run in FIPS mode from the first boot.The main benefit of setting FIPS mode during the installation stage is that Oracle Linux 8 enforces the use of strong cryptographic algorithms that are used to secure application data.
To verify that FIPS mode is enabled, run the following command after Oracle Linux 8 has been installed:
sudo fips-mode-setup --checkNote
The method for enabling and disabling FIPS mode in this release has changed significantly from the method that was used in previous Oracle Linux releases. In particular, the
dracut-fipspackage no longer exists and doesn't need to be enabled on Oracle Linux 8. Also, you no longer need to edit the GRUB configuration file.Enabling and Disabling FIPS Mode for Existing Oracle Linux 8 Installations
You can configure a preexisting Oracle Linux 8 installation to run in FIPS mode by using the fips-mode-setup utility, which changes the system-wide cryptographic policy, installs the FIPS dracut module, regenerates the system ramdisk, and updates the kernel boot parameters.
Note
To enable FIPS mode in Oracle Linux containers, see the Managing Containers chapter in the Oracle Linux: Podman User's Guide.
-
Enable FIPS mode:
sudo fips-mode-setup --enableThe following output is displayed:
Kernel initramdisks are being regenerated. This might take some time. Setting system policy to FIPS Note: System-wide crypto policies are applied on application start-up. It is recommended to restart the system for the change of policies to fully take place. FIPS mode will be enabled. Please reboot the system for the setting to take effect.You must reboot the system for the setting to take effect.
Note
Running the previous command configures FIPS mode implicitly by setting the system-wide cryptographic policy to FIPS. Note that using the update-crypto-policies command to set FIPS mode isn't enough, as shown in the following output:
sudo update-crypto-policies --set FIPSThe following output is displayed:
Warning: Using 'update-crypto-policies --set FIPS' is not sufficient for FIPS compliance. Use 'fips-mode-setup --enable' command instead. -
Verify that FIPS mode has been enabled correctly:
sudo fips-mode-setup --checkThe following output is displayed:
FIPS mode is enabled. -
To disable FIPS mode:
sudo fips-mode-setup --disableThe following output is displayed:
Setting system policy to DEFAULT Note: System-wide crypto policies are applied on application start-up. It is recommended to restart the system for the change of policies to fully take place. FIPS mode will be disabled. Please reboot the system for the setting to take effect.You must reboot the system for the setting to take effect.
For more information, see the
fips-mode-setup(8)manual pages.FIPS 140-2 Validated Modules in Oracle Linux 8
The following sections describe how to review FIPS 140-2 certifications and install FIPS 140-2 validated cryptographic modules in Oracle Linux 8.
Information About Modules That Have Received FIPS 140-2 Validation
The Oracle FIPS Certifications website provides the following information for each module:
-
Name and description of the module.
-
Status of the FIPS 140-2 validation process.
Important
To achieve compliance with FIPS Publication 140-2, you must use the package version that the Security Policy document specifies for each respective module only.
-
Package version for the module.
-
Certificate number for the module.
Note
Although compliance with FIPS 140-2 requires that you must use the package version that was validated for each respective cryptographic module, it's considered good security practice to enable FIPS software update channels so that security patches can continue to be applied to those package versions. For more information, see Yum Repositories and ULN Channels for FIPS Validated Cryptographic Modules.
Installing FIPS Validated Cryptographic Modules for Oracle Linux 8
After you enable FIPS mode on Oracle Linux 8, you can then install FIPS validated cryptographic modules, as required. For information about the software channels that provide packages containing FIPS validated cryptographic modules, see Yum Repositories and ULN Channels for FIPS Validated Cryptographic Modules.
The following information applies to systems that are running a fully patched Oracle Linux 8 release that can install and enable FIPS cryptographic modules.
To install FIPS validated cryptographic modules, see the "Life-Cycle Assurance" section of the Security Policy document for the FIPS module that you plan to install.
The Security Policy document explains how to verify that the package is FIPS 140-2 validated, and how to configure the module for FIPS mode. See the Oracle FIPS Certifications website for the certificate number, which includes a link to the NIST FIPS 140-2 validation page. This page provides details about FIPS certification and the Security Policy document. The package versions that are listed reflect information that's found in the logical cryptographic boundary for the specific module.
Yum Repositories and ULN Channels for FIPS Validated Cryptographic Modules
The following are the dedicated Unbreakable Linux Network (ULN) channels and yum repository containing FIPS validated cryptographic modules for Oracle Linux 8:
x86_64 Platform:
-
ol8_x86_64_u4_security_validationULN channel -
ol8_u4_security_validationyum repository
aarch64 Platform:
-
ol8_aarch64_u4_security_validationULN channel -
ol8_u4_security_validationyum repository
Note that the
ol8_u4_security_validationyum repository is a common repository name for the x86_64 and aarch64 platforms. This repository contains FIPS validated packages for both platforms and security updates for thegnutlsandlibgcryptpackages.The epoch for
gnutlsandlibgcryptpackage updates with the_fipssuffix is set to10, so they supersede any versions of the same package that don't use the_fipssuffix and don't contain FIPS 140-2 compliance patches. Security updates for other cryptographic modules modules are available from the corresponding yum repositories and ULN channels.Security updates for the UEK6 and UEK7 cryptographic modules are available in the corresponding yum repository and ULN channel. For more information, see the Unbreakable Enterprise Kernel documentation.
For more information about how to manage yum repositories and ULN channels, see Oracle Linux: Managing Software on Oracle Linux.
For specific instructions on installing FIPS validated cryptographic modules, see Installing FIPS Validated Cryptographic Modules for Oracle Linux 8.
-
Oracle Linux provides a set of cryptographic libraries, services, and user-level cryptographic applications that are compliant with the Federal Information Processing Standard (FIPS) Publication 140-3.
FIPS Publication 140-3, Security Requirements for Cryptographic Modules, specifies the security requirements that must be satisfied by a cryptographic module that's used within a security system to protect sensitive, but unclassified information. The NIST/CSE Cryptographic Module Validation Program (CMVP) validates cryptographic modules to FIPS 140-3. Validated products are accepted by the Federal agencies of both the USA and Canada for the protection of sensitive or designated information.
Configuring FIPS Mode in Oracle Linux 9
FIPS mode can be configured during the initial installation of Oracle Linux 9 or after installation, as described in the following sections.
Installing Oracle Linux 9 in FIPS Mode
Add
fips=1to the kernel command line during system installation to automatically configure a new Oracle Linux 9 system to run in FIPS mode from the first boot.The main benefit of setting FIPS mode during the installation stage is that Oracle Linux 9 enforces the use of strong cryptographic algorithms that are used to secure application data.
To verify that FIPS mode is enabled, run the following command after Oracle Linux 9 has been installed:
sudo fips-mode-setup --checkEnabling and Disabling FIPS Mode for Existing Oracle Linux 9 Installations
You can configure a preexisting Oracle Linux 9 installation to run in FIPS mode by using the fips-mode-setup utility, which changes the system-wide cryptographic policy, installs the FIPS dracut module, regenerates the system ramdisk, and updates the kernel boot parameters.
Note
To enable FIPS mode in Oracle Linux containers, see the Managing Containers chapter in the Oracle Linux: Podman User's Guide.
-
Enable FIPS mode:
sudo fips-mode-setup --enableThe following output is displayed:
Kernel initramdisks are being regenerated. This might take some time. Setting system policy to FIPS Note: System-wide crypto policies are applied on application start-up. It is recommended to restart the system for the change of policies to fully take place. FIPS mode will be enabled. Please reboot the system for the setting to take effect.You must reboot the system for the setting to take effect.
-
Verify that FIPS mode has been enabled correctly:
sudo fips-mode-setup --checkThe following output is displayed:
FIPS mode is enabled. -
To disable FIPS mode:
sudo fips-mode-setup --disableThe following output is displayed:
Setting system policy to DEFAULT Note: System-wide crypto policies are applied on application start-up. It is recommended to restart the system for the change of policies to fully take place. FIPS mode will be disabled. Please reboot the system for the setting to take effect.You must reboot the system for the setting to take effect.
For more information, see the
fips-mode-setup(8)manual pages.FIPS 140-3 Validated Modules in Oracle Linux 9
The following sections describe how to review FIPS 140-3 certifications and install FIPS 140-3 validated cryptographic modules in Oracle Linux 9.
Information About Modules That Have Received FIPS 140-3 Validation
The Oracle FIPS Certifications website provides the following information for each module:
-
Name and description of the module.
-
Status of the FIPS 140-3 validation process.
Important
To achieve compliance with FIPS Publication 140-3, you must use the package version that the Security Policy document specifies for each respective module only.
-
Package version for the module.
-
Certificate number for the module.
Note
Although compliance with FIPS 140-3 requires that you must use the package version that was validated for each respective cryptographic module, it's considered good security practice to enable FIPS software update channels so that security patches can continue to be applied to those package versions. For more information, see Yum Repositories and ULN Channels for FIPS Validated Cryptographic Modules.
Installing FIPS Validated Cryptographic Modules for Oracle Linux 9
After you enable FIPS mode on Oracle Linux 9, you can then install FIPS validated cryptographic modules, as required. For information about the software channels that provide packages containing FIPS validated cryptographic modules, see Yum Repositories and ULN Channels for FIPS Validated Cryptographic Modules.
The following information applies to systems that are running a fully patched Oracle Linux 9 release that can install and enable FIPS cryptographic modules.
To install FIPS validated cryptographic modules, see the "Life-Cycle Assurance" section of the Security Policy document for the FIPS module that you plan to install.
The Security Policy document explains how to verify that the package is FIPS 140-3 validated, and how to configure the module for FIPS mode. See the Oracle FIPS Certifications website for the certificate number, which includes a link to the NIST FIPS 140-3 validation page. This page provides details about FIPS certification and the Security Policy document. The package versions that are listed reflect information that's found in the logical cryptographic boundary for the specific module.
Yum Repositories and ULN Channels for FIPS Validated Cryptographic Modules
The following are the dedicated Unbreakable Linux Network (ULN) channels and yum repository containing FIPS validated cryptographic modules for Oracle Linux 9:
x86_64 Platform:
-
ol9_x86_64_u3_security_validationULN channel -
ol9_u3_security_validationyum repository
aarch64 Platform:
-
ol9_aarch64_u3_security_validationULN channel -
ol9_u3_security_validationyum repository
Note that the
ol9_u3_security_validationyum repository is a common repository name for the x86_64 and aarch64 platforms. This repository contains FIPS validated packages for both platforms and security updates for those packages.The epoch for package updates with the
_fipssuffix is set to10, so they supersede any versions of the same package that don't use the_fipssuffix and don't contain FIPS 140-3 compliance patches.Security updates for the Oracle Linux 9 Kernel Crypto API Cryptographic Module (RHCK) are available in the "RHCK with Oracle fixes" yum repository with identifier
ol9_MODRHCKand the corresponding ULN channel.Security updates for the UEK7 cryptographic module are available in the corresponding yum repository and ULN channel. For more information, see the Unbreakable Enterprise Kernel documentation.
For more information about how to manage yum repositories and ULN channels, see Oracle Linux: Managing Software on Oracle Linux.
For specific instructions on installing FIPS validated cryptographic modules, see Installing FIPS Validated Cryptographic Modules for Oracle Linux 9.
-
Oracle Linux provides a set of cryptographic libraries, services, and user-level cryptographic applications that are compliant with the Federal Information Processing Standard (FIPS) Publication 140-3.
FIPS Publication 140-3, Security Requirements for Cryptographic Modules, specifies the security requirements that must be satisfied by a cryptographic module that's used within a security system to protect sensitive, but unclassified information. The NIST/CSE Cryptographic Module Validation Program (CMVP) validates cryptographic modules to FIPS 140-3. Validated products are accepted by the Federal agencies of both the USA and Canada for the protection of sensitive or designated information.
Configuring FIPS Mode in Oracle Linux 10
FIPS mode can be configured during the initial installation of Oracle Linux 10, as described in the following sections.
Installing Oracle Linux 10 in FIPS Mode
Add
fips=1to the kernel command line during system installation to automatically configure a new Oracle Linux 10 system to run in FIPS mode from the first boot.The main benefit of setting FIPS mode during the installation stage is that Oracle Linux 10 enforces the use of strong cryptographic algorithms that are used to secure application data.
To verify that FIPS mode is enabled, run the following command after Oracle Linux 10 has been installed:
cat /proc/sys/crypto/fips_enabledIf the value returned is
1, then FIPS mode is enabled on the system.Note
FIPS mode can't be enabled or disabled on existing Oracle Linux 10 installations. The
fips-mode-setuptool has been deprecated and removed. To disable FIPS mode, reinstall Oracle Linux 10 without FIPS mode enabled.FIPS 140-3 Validated Modules in Oracle Linux 10
The following sections describe how to review FIPS 140-3 validated cryptographic modules in Oracle Linux 10.
Information About Modules That Have Received FIPS 140-3 Validation
The Oracle FIPS Certifications website provides the following information for each module:
-
Name and description of the module.
-
Status of the FIPS 140-3 validation process.
Important
To achieve compliance with FIPS Publication 140-3, you must use the package version that the Security Policy document specifies for each respective module only.
-
Package version for the module.
-
Certificate number for the module.
Note
Although compliance with FIPS
-