【问题标题】:SElinux integrety checkSElinux 完整性检查
【发布时间】:2010-03-26 12:08:31
【问题描述】:

如何检查(使用 SELinux)通过进程名称访问文件的权限?

例如,我们有2个进程:

  • /usr/bin/foo1
  • /usr/bin/foo2

它们在用户名userA 的帐户下运行并尝试打开修改文件:

  • /home/userA/test.txt

如果foo1 尝试打开文件,我希望它 - 没关系。但是如果foo2 试图打开 此文件 - 我在 /var/log 中有关于此的消息。

问题是两个进程具有相同的用户 ID。而且我不能通过用户名使用 RBAC。

【问题讨论】:

    标签: selinux


    【解决方案1】:

    您必须同时提供 foo1foo2 自定义域类型才能使用 SELinux 策略运行。这将需要:

    1. 为二进制文件创建类型(例如 foo1_exec_tfoo2_exec_t
    2. 为进程创建类型(例如foo1_tfoo2_t
    3. 指定当用户类型(可能是unconfined_t)执行foo1_exec_t 时,它转换为foo1_tfoo2 类似

    那么你需要为test.txt创建一个自定义类型(例如test_t

    完成此操作后,您可以为这些编写任何您喜欢的策略(包括针对您正在寻找的特定访问权限的auditallow 规则)。问题是,通过创建自定义类型,您必须为它们指定所有访问权限。

    如果您不希望进行任何访问控制,而只是在发生某事时进行记录,那么审计子系统是一个更好的选择,尽管我不知道您是否可以做到如此精细。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2010-11-12
      • 1970-01-01
      • 2013-01-12
      • 1970-01-01
      • 1970-01-01
      • 2011-07-22
      • 2011-05-16
      • 2011-04-01
      相关资源
      最近更新 更多