Red Hat Training

A Red Hat training course is available for Red Hat Enterprise Linux

第9章 米連邦政府の標準および規制

連邦政府および業界のセキュリティー仕様、標準、規制に準拠するよう組織が努力することで、セキュリティーレベルを維持することが可能です。本章では、これらの標準と規制の一部について説明します。

9.1. FIPS (Federal Information Processing Standard)

連邦情報処理標準 (FIPS) 140-2 は、U.S により開発されたコンピューターセキュリティー標準です。暗号化モジュールの品質を検証する政府および業界の作業グループ。NIST Computer Security Resource Center で公式の FIPS 公開を参照してください。
FIPS 140-2 標準は、暗号化ツールがアルゴリズムを適切に実装できるようにします。これらのレベルや FIPS 規格の他の仕様の詳細については、http://dx.doi.org/10.6028/NIST.FIPS.140-2 の完全な FIPS 140-2 規格を参照してください。
コンプライアンス要件については、Red Hat Government Standards ページを参照してください。

9.1.1. FIPS モードの有効化

Red Hat Enterprise Linux を連邦情報処理標準 (FIPS: Federal Information Processing Standard) 140-2 に準拠させるには、認定された暗号モジュールが使用されるようにいくつかの変更を行う必要があります。FIPS モードは、システムのインストール中またはインストール後に有効にできます。

システムのインストール時

FIPS 140-2 への厳密な準拠 を満たすには、システムのインストール中にカーネルコマンドラインに fips=1 カーネルオプションを追加します。このオプションを使用すると、すべてのキーの生成は FIPS 承認のアルゴリズムで行われ、継続的な監視テストが実施されます。インストール後、システムは FIPS モードで自動的に起動するように設定されます。
重要
インストール作業中は、マウスを動かしたり、キーストロークを多く押したりして、システムに十分なエントロピーがあることを確認してください。キーストロークの推奨量は 256 以上です。256 未満のキーストロークは、一意でないキーを生成する可能性があります。

システムインストールの後

インストール後にシステムのカーネル空間とユーザー空間を FIPS モードにするためには、以下の手順で行います。
  1. dracut-fips パッケージをインストールします。
    ~]# yum install dracut-fips
    AES New Instructions (AES-NI) をサポートしている CPU の場合は、dracut-fips-aesni パッケージもインストールしてください。
    ~]# yum install dracut-fips-aesni
  2. initramfs ファイルを再生成します。
    ~]# dracut -v -f
    モジュール内の整合性検証を有効にし、カーネル起動時に必要なすべてのモジュールが存在するようにするには、initramfs ファイルを再生成する必要があります。
    警告
    この操作は、既存の initramfs ファイルを上書きします。
  3. ブートローダーの設定を変更します。
    FIPS モードで起動するには、ブートローダーのカーネルコマンドラインに fips=1 オプションを追加してください。/boot または /boot/EFI/ パーティションが別のパーティションにある場合は、boot= <partition > (ここでの < partition > は /bootを表します)パラメーターをカーネルコマンドラインに追加します。
    ブートパーティションを特定するには、次のコマンドを入力します。
    ~]$ df /boot
    Filesystem           1K-blocks      Used Available Use% Mounted on
    /dev/sda1               495844     53780    416464  12% /boot
    ブート間でデバイスの名前が変更された場合でも boot= 設定オプションが機能するようにするには、次のコマンドを実行して、パーティションのユニバーサル一意識別子 (UUID) を識別します。
    ~]$ blkid /dev/sda1
    /dev/sda1: UUID="05c000f1-f899-467b-a4d9-d5ca4424c797" TYPE="ext4"
    UUID をカーネルコマンドラインに追加します。
    boot=UUID=05c000f1-f899-467b-a4d9-d5ca4424c797
    お使いのブートローダーによっては、以下のように変更してください。
    • GRUB 2
      /etc/default /grub ファイルの GRUB_CMDLINE_LINUX キーに fips=1 および boot=<partition of /boot> オプションを追加します。/etc/default/grub に変更を適用するには、以下のように grub.cfg ファイルを再構築します。
      • BIOS ベースのマシンでは、root で以下のコマンドを入力します。
        ~]# grub2-mkconfig -o /etc/grub2.cfg
      • UEFI ベースのマシンでは、root で以下のコマンドを入力します。
        ~]# grub2-mkconfig -o /etc/grub2-efi.cfg
    • zipl (IBM z Systems アーキテクチャーのみ)
      fips=1 および boot=<partition of /boot > オプションを /etc/zipl.conf のカーネルコマンドラインに追加し、次のように入力して変更を適用します。
      ~]# zipl
  4. プレリンクが無効になっていることを確認してください。
    モジュール内の整合性検証を適切に動作させるには、ライブラリーとバイナリーの事前リンクを無効にする必要があります。事前リンクは、デフォルトではインストールされていない prelink パッケージによって実行されます。prelink がインストールされていない限り、この手順は必要ありません。事前リンクを無効にするには、/etc/sysconfig/prelink 設定ファイルで PRELINKING=no オプションを設定します。すべてのシステムファイルで既存の事前リンクを無効にするには、prelink -u -a コマンドを使用します。
  5. システムを再起動します。

コンテナーでの FIPS モードの有効化

ホストも FIPS140-2 モードに設定されていて、次のいずれかの要件が満たされている場合は、コンテナーを FIPS140-2 モードに切り替えることができます。
  • dracut-fips パッケージがコンテナーにインストールされます。
  • /etc/system-fips ファイルは、ホストからコンテナーにマウントされます。