第 24 章 扩展、自定义并故障排除内核完整性子系统
扩展、自定义内核完整性子系统并对内核完整性子系统进行故障排除,以支持各种安全要求和操作环境。
24.1. 为 IMA appraisal 生成良好的参考值 复制链接链接已复制到粘贴板!
在部署包含 IMA-appraisal 规则的 IMA 策略前,请确保所有由这些规则管理的文件都有存储在 security.ima 扩展属性中的有效引用值。如果缺少这些引用值,IMA 可能会阻止系统正确引导或拒绝访问文件。
# ima-appraise-file </path/to/file>
24.1.1. 添加 IMA 签名作为不可变文件的良好引用 复制链接链接已复制到粘贴板!
使用 IMA 签名作为不可变文件的可信引用值来支持完整性验证。这种方法有助于确保仅访问具有有效签名的文件,从而增强系统安全性和合规性。
先决条件
- 您已创建了包含 IMA-appraisal 规则的 IMA 策略。
流程
安装
rpm-plugin-ima:$ sudo dnf install rpm-plugin-ima -yq这样可确保软件包文件在软件包安装、重新安装或升级过程中自动存储在
security.xattr中。重新安装所有软件包:
$ sudo dnf reinstall "*" -y这样可确保为所有软件包更新了
security.xattr扩展属性。启用 dracut 完整性模块,以便在引导时自动在
/etc/keys/ima载入中的官方 IMA code-signing 密钥:$ sudo dracut -f
验证
验证签名是否已正确存储在
security.ima扩展属性中:$ # evmctl ima_verify -k /etc/keys/ima/redhatimarelease-10.der /usr/lib/systemd/systemd keyid d3320449 (from /etc/keys/ima/redhatimarelease-10.der) key 1: d3320449 /etc/keys/ima/redhatimarelease-10.der /usr/lib/systemd/systemd: verification is OK $ # evmctl ima_verify -k /etc/keys/ima/redhatimarelease-10.der /bin/bash keyid d3320449 (from /etc/keys/ima/redhatimarelease-10.der) key 1: d3320449 /etc/keys/ima/redhatimarelease-10.der /bin/bash: verification is OK ...
24.1.2. 为可变文件生成良好的参考值 复制链接链接已复制到粘贴板!
要保持可能随时间变化的文件的完整性,请根据需要生成和更新参考值。这样可确保系统准确验证可变文件的真实性,并防止未经授权的修改。
先决条件
- 您在系统上具有 root 权限。
- 您已创建了包含 IMA-appraisal 规则的 IMA 策略。
- 您已为 IMA appraisal 生成了很好的参考值。
- 禁用安全引导。
流程
可选:启用您选择的 IMA-appraisal 策略,或者如果您只使用自定义策略,请跳过这一步。使用内置
ima_policy=appraise_tcb作为示例:# grubby --update-kernel=/boot/vmlinuz-$(uname -r) --args="ima_policy=appraise_tcb"另外,
s390x系统:# zipl
通过添加
ima_appraise=fix内核命令行参数来启用 IMA-appraisal 修复模式:# grubby --update-kernel=/boot/vmlinuz-$(uname -r) --args="ima_appraise=fix"另外,
s390x系统:# zipl
重启系统:
# reboot可选:加载您的自定义 IMA 策略:
# echo <path_to_your_custom_ima_policy> > /sys/kernel/security/ima/policy重新标记整个系统:
# find / -fstype xfs -type f -uid 0 -exec head -c 0 '{}' \;通过删除
ima_appraise=fix内核命令行参数来关闭 IMA-appraisal 修复模式:# grubby --update-kernel=/boot/vmlinuz-$(uname -r) --remove-args="ima_appraise=fix"另外,
s390x系统:# zipl
- 如果禁用了安全引导,则启用安全引导。
其他资源