このドキュメントで説明するソフトウェアは、Extended SupportまたはSustaining Supportのいずれかにあります。 詳細は、https://www.oracle.com/us/support/library/enterprise-linux-support-policies-069172.pdfを参照してください。
Oracleでは、このドキュメントに記載されているソフトウェアをできるだけ早くアップグレードすることをお薦めします。

機械翻訳について

7.2 Oracle LinuxでのFIPSモードの有効化

FIPS検証済みの暗号化モジュールを使用する前に、Oracle LinuxでFIPSモードを有効にする必要があります。 次の手順では、FIPSで検証された暗号アルゴリズムのみを使用するようにOracle Linuxを構成する方法について説明します。

  1. インストールするFIPSモジュールのタイプに応じて、次のいずれかを実行します:

    • Oracle LinuxのFIPS検証済み暗号化モジュールをインストールする場合は、システムがOracle Linux 6 Update 9以降を実行していることを確認してください。

    • OpenSSL FIPSオブジェクト・モジュールをインストールする場合は、システムがOracle Linux 6更新5以降であることを確認してください。

  2. システムがUnbreakable Linux Network (ULN)に登録され、ol6_x86_64_security_validationおよびol6_x86_64_latestチャネルにサブスクライブされていることを確認します。

    Oracle Linux yumサーバーを使用している場合は、次のようにol6_security_validationおよびol6_latestリポジトリを有効にします:

    # yum-config-manager --enable ol6_security_validation ol6_latest
  3. dracut-fipsパッケージをインストールします。

    # yum install dracut-fips

    dracut-fipsパッケージは、整合性チェックを実行するdracut initramfsファイル・システムを構築するモジュールを提供します。

  4. システムCPUがAES新しい命令(AES-NI)をサポートしている場合は、パッケージをインストールします。

    • 次のコマンドを実行して、システムがAES-NIをサポートしているかどうかを確認します:

      # grep aes /proc/cpuinfo
    • パッケージをインストールするには:

      # yum install dracut-fips-aesni
  5. initramfsファイル・システムを再作成します。

    # dracut -f
  6. システムがFIPSモードで起動するように、grub.confファイルでkernelコマンドラインを構成するには、次のステップを実行します:

    1. ブート・パーティションとそのパーティションのUUIDを指定します。たとえば、次のようになります:

      # df /boot
      Filesystem     1K-blocks   Used Available Use% Mounted on
      /dev/sda1         508588 294476    214112  58% /boot
      
      # blkid /dev/sda1
      /dev/sda1: UUID="a305c68f-3e04-4c53-a566-9d67c12ff293" TYPE="xfs"
    2. rootユーザーとして、次のように/etc/grub.confファイルを編集します:

      1. fips=1オプションをブート・ローダー構成に追加します。

        GRUB_CMDLINE_LINUX="vconsole.font=latarcyrheb-sun16
        rd.lvm.lv=ol/swap rd.lvm.lv=ol/root crashkernel=auto
          vconsole.keymap=uk rhgb quiet fips=1"
      2. /bootのコンテンツがルート・パーティション以外のパーティションに存在する場合は、boot=UUID=boot_UUID行を使用してブート・ローダー構成に移動し、カーネルがロードするときに/bootにデバイスをマウントするように指定する必要があります。

        GRUB_CMDLINE_LINUX="vconsole.font=latarcyrheb-sun16
             rd.lvm.lv=ol/swap rd.lvm.lv=ol/root crashkernel=auto
             vconsole.keymap=uk rhgb quiet
             boot=UUID=6046308a-75fc-418e-b284-72d8bfad34ba fips=1"
      3. 変更を保存します。

        FIPSがカーネル検証チェックを実行するには、これらのステップが必要です。このステップでは、/bootディレクトリにある指定されたHMACファイルに対してカーネルを検証します。

        ノート

        UEFIで起動するように構成されたシステムでは、/boot/efiは専用のパーティションに配置されます。具体的にはUEFI要件を満たすようにフォーマットされ、自動的に/bootが専用パーティションにあることを意味するわけではありません。

        /bootが専用パーティションにある場合にのみ、boot=パラメータを使用します。 パラメータの指定が間違っているか、存在しないデバイスを示している場合、システムがブートしない可能性があります。

        システムが起動できなくなった場合、grubのカーネル・ブート・オプションを変更して、boot=UUID=boot_UUIDパラメータに代替デバイスを指定したり、パラメータを完全に削除したりできます。

  7. 次のようにGRUB構成を再構築します:

      • BIOSベースのシステムでは、次のコマンドを実行します:

        # grub2-mkconfig -o /boot/grub2/grub.cfg
      • UEFIベースのシステムでは、次のコマンドを実行します:

        # grub2-mkconfig -o /boot/efi/EFI/redhat/grub.cfg
    1. モジュール内の完全性検証が正しく行われるようにするには、すべてのシステム・ファイルで事前リンクを無効にする必要があります。

      デフォルトでは、prelinkパッケージはシステムにインストールされていません。 ただし、インストールされている場合は、次のようにすべてのライブラリおよびバイナリで事前リンクを無効にします:

      1. /etc/sysconfig/prelink構成ファイルにPRELINKING=noを設定します。

      2. ライブラリがすでにリンクされている場合は、次のようにすべてのシステム・ファイルのprelinkを元に戻します:

        # prelink –u -a
  8. システムを再起動してから、次のコマンドを実行して、FIPSが有効になっていることを確認します:

    # cat /proc/sys/crypto/fips_enabled
    1

    1のレスポンスは、FIPSが有効であることを示します。