24.2. 编写自定义 IMA 策略


如果您使用内核命令行参数启用的内置 IMA 策略,如 ima_policy=tcbima_policy=critical_data,或者 /usr/share/ima/policies/ 中的示例策略不满足您的要求,您可以创建自定义 IMA 策略规则。当 systemd 从 /etc/ima/ima-policy 加载策略时,它会替换内置的 IMA 策略。

警告

定义 IMA 策略后,如果策略在部署前包含 IMA-appraisal 规则,请生成很好的引用值。如果您的策略不包含 IMA-appraisal 规则,您可以通过运行 echo /PATH-TO-YOUR-DRAFT-IMA-POLICY > /sys/kernel/security/integrity/ima/policy 来验证策略。这种方法有助于防止系统引导失败。

请参阅 为 IMA appraisal 生成良好的参考值

IMA 策略规则使用格式 action [condition …​] 指定在特定条件下触发的操作。例如,/usr/share/ima/policies/01-appraise-executable-and-lib-signatures 中的示例策略包括以下规则:

# Skip some unsupported filesystems
# For a list of these filesystems, see
# https://www.kernel.org/doc/Documentation/ABI/testing/ima_policy
# PROC_SUPER_MAGIC
dont_appraise fsmagic=0x9fa0
…
appraise func=BPRM_CHECK appraise_type=imasig
Copy to Clipboard Toggle word wrap

第一个规则 dont_appraise fsmagic=0x9fa0 指示 IMA 跳过 PROC_SUPER_MAGIC 文件系统中的文件。最后一条规则是 appraise func=BPRM_CHECK appraise_type=imasig,在执行文件时强制执行签名验证。

返回顶部
Red Hat logoGithubredditYoutubeTwitter

学习

尝试、购买和销售

社区

关于红帽文档

通过我们的产品和服务,以及可以信赖的内容,帮助红帽用户创新并实现他们的目标。 了解我们当前的更新.

让开源更具包容性

红帽致力于替换我们的代码、文档和 Web 属性中存在问题的语言。欲了解更多详情,请参阅红帽博客.

關於紅帽

我们提供强化的解决方案,使企业能够更轻松地跨平台和环境(从核心数据中心到网络边缘)工作。

Theme

© 2025 Red Hat