在 selinux 中添加现有策略

在 selinux 中添加现有策略

我刚刚创建了一个自定义策略并执行了 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) -uswitch 很有趣:


 -u,--upgrade=MODULE_PKG
   upgrade an existing module package, or install if the module does not exist

相关内容