24.2. カスタム IMA ポリシーの作成
カーネルコマンドラインパラメーター (ima_policy=tcb や ima_policy=critical_data など) を使用して有効にする組み込みの IMA ポリシー、または /usr/share/ima/policies/ 内のサンプルポリシーが要件に合わない場合は、カスタムの IMA ポリシールールを作成できます。systemd が /etc/ima/ima-policy からポリシーを読み込むと、組み込みの IMA ポリシーが置き換えられます。
IMA ポリシーを定義した後、ポリシーに IMA 評価ルールが含まれている場合は、適切な参照値を生成してからポリシーをデプロイしてください。ポリシーに IMA 評価ルールが含まれていない場合は、echo /PATH-TO-YOUR-DRAFT-IMA-POLICY > /sys/kernel/security/integrity/ima/policy を実行してポリシーを検証できます。この方法はシステムの起動失敗を防ぐのに役立ちます。
IMA ポリシールールでは、action [condition …] という形式を使用して、特定の条件下でトリガーされるアクションを指定します。たとえば、/usr/share/ima/policies/01-appraise-executable-and-lib-signatures のサンプルポリシーには、次のルールが含まれています。
最初のルール dont_appraise fsmagic=0x9fa0 は、PROC_SUPER_MAGIC ファイルシステム内のファイルの評価をスキップするように IMA に指示します。最後のルール appraise func=BPRM_CHECK appraise_type=imasig は、ファイルの実行時に署名の検証を強制します。