23.7. 向软件包文件中添加 IMA 签名
要允许内核、Keylime、fapolicyd
和 debuginfo
软件包执行其完整性检查,您需要在 RPM 文件中添加 IMA 签名。安装 rpm-plugin-ima
插件后,新安装的 RPM 文件会自动将 IMA 签名放在 security.ima
扩展属性中。但是,您需要重新安装现有软件包,以获得 IMA 签名。
流程
安装
rpm-plugin-ima
插件:# dnf install rpm-plugin-ima -y
重新安装所有软件包:
# dnf reinstall '*' -y
验证
确认重新安装的软件包文件有有效的 IMA 签名。例如,要检查
/usr/bin/bash
文件的 IMA 签名,请运行以下命令:# getfattr -m security.ima -d /usr/bin/bash
'security.ima=0sAwIE0zIESQBnMGUCMFhf0iBeM7NjjhCCHVt4/ORx1eCegjrWSHzFbJMCsAhR9bYU2hNGjiWUYT2IIqWaaAIxALFGUkqGP5vDLuxQXibO9g7HFcfyZzRBY4rbKPsXcAIZRtDHVS5dQBZqM3hyS5v1MA=='
验证具有指定证书的文件的 IMA 签名。例如,要检查
/usr/bin/bash
的 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