第1章 FIPS モードへの RHEL の切り替え


Federal Information Processing Standards (FIPS) 140-3 で義務付けられている暗号化モジュールの自己チェックを有効にするには、FIPS モードで RHEL 10 を動作させる必要があります。システムを FIPS モードに切り替える唯一の正しい方法は、RHEL のインストール中に FIPS モードを有効にすることです。

Red Hat Enterprise Linux 10 では、インストール後にシステムを FIPS モードに切り替えることはサポートされていません。特に、システム全体の暗号化ポリシーである FIPS を設定するだけでは、FIPS モードを有効にして FIPS 140 標準への準拠を保証することはできません。FIPS ポリシーを使用して FIPS モードを有効にする fips-mode-setup ツールは、RHEL から削除されました。

FIPS モードをオフにするには、インストールプロセス中に FIPS モードを有効にせずにシステムを再インストールする必要があります。

1.1. Federal Information Processing Standards 140 および FIPS モード

Federal Information Processing Standards (FIPS) 140 は、暗号化モジュールのセキュリティーを規定している政府標準です。FIPS モードでは、準拠に必要なセルフチェックが有効になります。

FIPS Publication 140 は、National Institute of Standards and Technology (NIST) が暗号化モジュールの品質を保証するために開発した一連のコンピューターセキュリティー標準です。FIPS 140 標準は、暗号化ツールがアルゴリズムを正しく実装できるようにします。この標準の要件を満たす暗号化がシステムで使用されていることを確認するメカニズムとして、ランタイム暗号化アルゴリズムや整合性自己テストなどがあります。

1.1.1. FIPS モードの RHEL

RHEL システムで FIPS 承認のアルゴリズムだけを使用してすべての暗号鍵を生成および使用するには、RHEL を FIPS モードに切り替える必要があります。

FIPS モードを有効にするには、FIPS モードでインストールを開始してください。これにより、デプロイ済みのシステムの変換に伴う暗号鍵マテリアルの再生成と、変換後のシステムのコンプライアンス再評価を行う必要がなくなります。FIPS モードが有効かどうかに基づいてアルゴリズムの選択を変更するコンポーネントは、正しいアルゴリズムを選択します。たとえば、LUKS ディスク暗号化は、FIPS モードでのインストール時には PBKDF2 鍵導出関数 (KDF) を使用しますが、FIPS モードでない場合は FIPS 非準拠の Argon2 KDF を選択します。したがって、ディスク暗号化を使用する非 FIPS システムの場合、インストール後に FIPS モードに切り替えると、システムが非準拠になるか、起動できなくなる可能性があります。

FIPS 準拠のシステムを運用するには、すべての暗号鍵マテリアルを FIPS モードで作成してください。さらに、暗号鍵マテリアルは、セキュアにラップされていない限り、絶対に FIPS 環境の外部に出さないでください。また、絶対に FIPS 以外の環境でラップを解除しないでください。

1.1.2. FIPS モードのステータス

FIPS モードが有効かどうかは、カーネルコマンドラインの fips=1 ブートオプションによって決まります。システム全体の暗号化ポリシーは、update-crypto-policies --set FIPS コマンドを使用して明示的に設定されていない場合、自動的にこの設定に従います。/boot 用に個別のパーティションが設定されているシステムでは、boot=UUID=<uuid-of-boot-disk> カーネルコマンドライン引数も必要です。インストールプログラムを FIPS モードで起動すると、必要な変更がプログラムによって実行されます。

FIPS モードで要求される制限の適用は、/proc/sys/crypto/fips_enabled ファイルの内容によって決まります。ファイルに 1 が含まれている場合、RHEL コア暗号化コンポーネントは、FIPS 承認の暗号化アルゴリズムの実装のみを使用するモードに切り替わります。/proc/sys/crypto/fips_enabled0 が含まれている場合、暗号化コンポーネントは FIPS モードを有効にしません。

1.1.3. 暗号化ポリシーにおける FIPS

FIPS システム全体の暗号化ポリシーは、より高いレベルの制限を設定するのに役立ちます。したがって、暗号化の俊敏性をサポートする通信プロトコルは、選択時にシステムが拒否する暗号をアナウンスしません。たとえば、ChaCha20 アルゴリズムは FIPS によって承認されておらず、FIPS 暗号化ポリシーは、TLS サーバーおよびクライアントが TLS_ECDHE_ECDSA_WITH_CHACHA20_POLY1305_SHA256 TLS 暗号スイートをアナウンスしないようにします。これは、そのような暗号を使用しようとすると失敗するためです。

RHEL を FIPS モードで操作し、独自の FIPS モード関連の設定オプションを提供するアプリケーションを使用する場合は、これらのオプションと対応するアプリケーションのガイダンスを無視してください。FIPS モードで実行されているシステムとシステム全体の暗号化ポリシーは、FIPS 準拠の暗号化のみを適用します。たとえば、システムが FIPS モードで実行されている場合、Node.js 設定オプション --enable-fips は無視されます。FIPS モードで実行されていないシステムで --enable-fips オプションを使用すると、FIPS-140 準拠の要件を満たせなくなります。

1.1.4. RHEL 10.0 の OpenSSL FIPS インジケーター

RHEL はアップストリームの OpenSSL より前に OpenSSL FIPS インジケーターを導入しました。両者は設計が異なるため、このインジケーターは RHEL 10 の今後のマイナーバージョンで変更される可能性があります。アップストリームの API が導入された場合、RHEL 10.0 のインジケーターは、結果ではなく "unsupported" というエラーメッセージを返す可能性があります。詳細は、OpenSSL FIPS Indicators の GitHub ドキュメントを参照してください。

注記

National Institute of Standards and Technology (NIST) の Cryptographic Module Validation Program (CMVP) による FIPS 140-3 要件に準拠した RHEL 10 暗号化モジュールの認定ステータスについては、Red Hat カスタマーポータルの「Product compliance」ページの「FIPS - Federal Information Processing Standards」セクションを参照してください。

Red Hat logoGithubredditYoutubeTwitter

詳細情報

試用、購入および販売

コミュニティー

会社概要

Red Hat は、企業がコアとなるデータセンターからネットワークエッジに至るまで、各種プラットフォームや環境全体で作業を簡素化できるように、強化されたソリューションを提供しています。

多様性を受け入れるオープンソースの強化

Red Hat では、コード、ドキュメント、Web プロパティーにおける配慮に欠ける用語の置き換えに取り組んでいます。このような変更は、段階的に実施される予定です。詳細情報: Red Hat ブログ.

Red Hat ドキュメントについて

Legal Notice

Theme

© 2026 Red Hat
トップに戻る