我刚刚创建了一个自定义策略并执行了 semodule -i test.te。
几天后我重新运行了所有测试,并注意到 audit.log 中出现了额外的 AVC 拒绝。
我想将新内容添加到我现有的 test.te 文件中,这样我就不会有多个策略。我只想有一个策略并不断向其添加内容,这可能吗?如何做?提前致谢。
答案1
所有过程在和的手册页中都有详细记录audit2allow(1)
。checkmodule(8)
semodule(8)
示例工作流程如下(全部取自所提到的手册页):
- 查看 local.te 并根据需要进行自定义
$ cat local.te
module local 1.0;
require {
class file { getattr open read };
type myapp_t;
type etc_t;
};
allow myapp_t etc_t:file { getattr open read };
- 编译模块
$ checkmodule -M -m -o local.mod local.te
- 创建包
$ semodule_package -o local.pp -m local.mod
- 将模块加载到内核
$ semodule -i local.pp
- 安装或替换非基础策略包。
$ semodule -i httpd.pp
- 列出非基础模块。
$ semodule -l
如果你的模块有版本控制,你可能会发现使用semodule(8)
-u
switch 很有趣:
-u,--upgrade=MODULE_PKG
upgrade an existing module package, or install if the module does not exist