SELinux基本概念介绍

描述

  SELinux由NSA发布,之后,Red Hat、Network Associates、Secure Computing Corporation、Tresys Technology以及Trusted Computer Solutions等公司及研究团队都为SELinux的发展做出了重要的贡献。

  SELinux本质是一个Linux内核安全模块,可在Linux系统中配置其状态。SELinux的状态分为3种,即disabled、permissive和enforcing。

  •(1)disabled状态:指在Linux系统中不启用SELinux模块的功能。

  •(2)permissive状态:指在Linux系统中,SELinux模块处于Debug模式,若操作违反策略系统将对违反内容进行记录,但不影响后续操作。

  •(3)enforcing状态:指在Linux系统中,SELinux模块有效,若操作违反策略,SELinux模块将无法继续工作。

  SELinux涉及的重要概念如下。

  (1)主体

  主体是访问操作的发起者,是系统中信息流的启动者。主体通常指用户或代表用户意图的进程。

  通常,主体是访问的发起者,但有时也会成为访问或受控的对象。

  一个主体可以向另一个主体授权,一个进程可能会控制几个子进程,这时受控的主体或子进程就是一种客体。

  (2)客体

  客体相对主体而存在,通常客体是指信息的载体或从其他主体或客体接收信息的实体,即访问对象。

  (3)访问控制分类

  管理方式的不同形成不同的访问控制方式。

  通常,访问控制方式分为两类:自主访问控制(DAC, Discretionary Access Control)和强制访问控制(MAC, Mandatory Access Control)。

  (4)域

  域决定了系统中进程的访问,所有进程都在域中运行。本质上,域是一个进程允许的操作列表,决定了一个进程可以对哪些类型进行操作。SELinux中域的概念相当于标准Linux中uid的概念。

  (5)类型

  类型与域的概念基本相似,但是,域是相对进程主体的概念,类型是相对目录、文件等客体的概念。类型分配给一个客体,并决定哪个主体可以访问该客体。

  (6)角色

  角色决定了可以使用哪些域。具体哪些角色可以使用哪些域,需要在策略配置文件中预先定义。如果在策略配置文件中定义了某个角色不可以使用某个域,在实际使用中将会被拒绝。

  (7)身份

  身份属于安全上下文的一部分,身份决定了本质上可以执行哪个域。

  (8)安全上下文

  安全上下文是对操作涉及的所有部分的属性描述,包括身份、角色、域、类型。

  (9)策略

  策略是规则的集合,是可以设置的规则。

  策略决定一个角色的用户可以访问什么,哪个角色可以进入哪个域,哪个域可以访问哪个类型等。

打开APP阅读更多精彩内容
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉

全部0条评论

快来发表一下你的评论吧 !

×
20
完善资料,
赚取积分