Skip to content
Search RunEntLinux

Searches general documentation on RunEntLinux. Each distribution has its own documentation search.

    Browse this documentation

    EL 8: System-wide crypto policies

    EL 8 introduces system-wide crypto policies: with one update-crypto-policies command you set the allowed protocol versions and algorithm strength for OpenSSL, GnuTLS, OpenSSH, NSS, libssh, and friends at once. Before this, every component had its own configuration files, and “disable weak algorithms everywhere” was an engineering project scattered across many places.

    Policies are expressed as levels, living under /etc/crypto-policies/:

    LevelMeaning
    LEGACYcompatibility with old devices (keeps SHA-1, TLS 1.0/1.1, …)
    DEFAULTbalance of security and compatibility (EL 8 default)
    FUTUREstricter choices aimed forward
    FIPSthe subset satisfying FIPS 140 requirements
    (sub-policies)fine-tuning overlays such as DEFAULT:SHA1 or AD-SUPPORT

    Each crypto component ships a backend configuration file (for example /etc/crypto-policies/back-ends/opensslcnf.config) that it reads at startup; update-crypto-policies --set only switches one global selection, and every component follows.

    This mechanism became the foundation of the EL security story: EL 9’s OpenSSL 3.0 providers and EL 10’s default SHA-1 ban are layers stacked on top of it.

    ItemEL 7EL 8
    Algorithm-strength configurationper-component filesunified crypto-policies
    Switching commandnoneupdate-crypto-policies --set …
    Showing the current policynoneupdate-crypto-policies --show
    FIPS compliancemanual configurationFIPS level + fips-mode-setup
    • Operations: enforcing a security baseline goes from “edit N config files” to one command plus restarting affected services; audits gain a single source of truth.
    • Legacy devices: when interfacing with devices that only speak TLS 1.0/1.1 or SHA-1 signatures, evaluate the cost of LEGACY or a sub-policy first, instead of loosening components one by one.
    • Developers: applications that hardcode algorithms (bypassing component defaults) are unaffected by the policy — on EL 8+ such code is a liability.
    Show and switch the policy
    update-crypto-policies --show
    sudo update-crypto-policies --set FUTURE
    FIPS mode (a separate switch)
    sudo fips-mode-setup --enable
    sudo fips-mode-setup --check

    For the full FIPS procedure and validation, see FIPS mode.