21.7. パッケージファイルへの IMA 署名の追加

カーネル、Keylime、fapolicyd、および debuginfo パッケージが整合性チェックを実行できるようにするには、RPM ファイルに IMA 署名を追加する必要があります。rpm-plugin-ima プラグインをインストールすると、新しくインストールされた RPM ファイルの security.ima 拡張ファイル属性に、IMA 署名が自動的に配置されます。ただし、IMA 署名を取得するには、既存のパッケージを再インストールする必要があります。

手順

  1. rpm-plugin-ima プラグインをインストールするには、次を実行します。

    # dnf install rpm-plugin-ima -y
  2. すべてのパッケージを再インストールするには、次を実行します。

    # dnf reinstall “*” -y

検証

  1. 再インストールしたパッケージファイルに有効な IMA 署名があることを確認します。たとえば、/usr/bin/bash ファイルの IMA 署名を確認するには、次のコマンドを実行します。

    # getfattr -m security.ima -d /usr/bin/bash
    security.ima=0sAwIE0zIESQBnMGUCMFhf0iBeM7NjjhCCHVt4/ORx1eCegjrWSHzFbJMCsAhR9bYU2hNGjiWUYT2IIqWaaAIxALFGUkqGP5vDLuxQXibO9g7HFcfyZzRBY4rbKPsXcAIZRtDHVS5dQBZqM3hyS5v1MA==
  2. 指定の証明書を使用してファイルの IMA 署名を検証します。IMA コード署名鍵には、/usr/share/doc/kernel-keys/$(uname -r)/ima.cer からアクセスできます。

    # evmctl ima_verify -k /usr/share/doc/kernel-keys/$(uname -r)/ima.cer /usr/bin/bash
    key 1: d3320449 /usr/share/doc/kernel-keys/5.14.0-359.el9.x86-64/ima.cer
    /usr/bin/bash: verification is OK