【SELinux安全上下文】

一、SELinux安全上下文(核心概念)

SELinux 为系统中的进程、文件、目录、端口 等资源分配唯一的"安全标签"(安全上下文),是判断访问权限的核心依据,其标准格式为:
user:role:type:sensitivity

字段 核心含义 典型示例
user(用户) 标识SELinux用户,区分系统/普通/无限制用户 system_u(系统用户)、unconfined_u(无限制用户)
role(角色) 标识主体(进程)或客体(文件)的角色 system_r(进程角色)、object_r(文件/目录角色)
type(类型) 目标策略(RHEL默认)的核心控制字段,决定访问权限,通常以_t结尾 httpd_t(Apache进程)、mysqld_db_t(MariaDB数据文件)
sensitivity(敏感度) MLS策略(多级安全)中使用,目标策略下默认值为s0,一般无需关注 s0(默认敏感度)

二、典型服务的type上下文(核心应用)

type字段是实际权限控制的关键,以下是常见服务的进程/文件type标签示例:

资源类型 type上下文标签 核心作用
Apache进程 httpd_t 标识Apache服务进程,定义其访问权限范围
Apache网站目录 httpd_sys_content_t 标识Apache可读取的静态文件,允许httpd_t访问
MariaDB进程 mysqld_t 标识MariaDB服务进程,定义其访问权限范围
MariaDB数据目录 mysqld_db_t 标识MariaDB数据文件,允许mysqld_t访问
临时目录(/tmp) tmp_t 标识临时文件,默认限制httpd_t访问
HTTP端口(80/443) http_port_t 标识HTTP服务可使用的端口,允许httpd_t绑定

三、SELinux访问控制工作原理(以MariaDB为例)

SELinux通过进程type资源type的匹配关系控制访问,核心逻辑如下:

  1. 进程运行时会被标记为对应type(如MariaDB进程→mysqld_t);
  2. 资源(文件/端口)会被标记为对应type(如MariaDB数据文件→mysqld_db_t);
  3. SELinux策略预定义了"哪些进程type可以访问哪些资源type":
    • 允许:mysqld_t(MariaDB进程)可读写mysqld_db_t(数据库文件);
    • 拒绝:httpd_t(Apache进程)无法访问mysqld_db_t(数据库文件)。

四、SELinux安全提升价值

  1. 服务隔离:不同服务的进程/文件被不同type标签区分,避免跨服务随意访问;
  2. 精准控权:仅允许进程访问其业务必需的资源type,最小化权限范围;
  3. 防越权攻击:即使某服务(如Apache)被入侵,攻击者也无法访问其他服务的受保护资源(如MariaDB数据文件)。

总结

  1. SELinux安全上下文的核心是type字段(以_t结尾),目标策略下通过进程和资源的type匹配控制访问;
  2. 不同服务有专属的进程type(如httpd_t/mysqld_t)和资源type(如httpd_sys_content_t/mysqld_db_t);
  3. SELinux通过type标签实现服务间隔离,大幅提升系统防越权访问的安全性。
相关推荐
上海云盾安全满满34 分钟前
为什么访问不一样的网站会有快有慢?
网络·安全
小熊officer36 分钟前
网络渗透(Network Penetration)
网络·安全·web安全
库拉大叔1 小时前
2026年AI编程辅助深度评测:GPT-5.5的Bug检测与自动修复能力
安全
aodunsoft2 小时前
安全月报 | 傲盾DDoS攻击防御2026年5月简报
网络·安全·ddos
IT策士2 小时前
第33篇 k8s 之 敏感信息管理:Secret 与安全实践
安全·容器·kubernetes
小熊officer2 小时前
网络渗透和网络安全
网络·安全·web安全
黎阳之光2 小时前
虚实同源·数智治水:黎阳之光视频孪生,重构智慧水务新范式
运维·物联网·算法·安全·数字孪生
世界尽头与你3 小时前
Spring Boot Watcher 未授权访问漏洞
spring boot·安全·网络安全·渗透测试
大势智慧3 小时前
矿影安巡版|无人机自主巡检,AI识别隐患,筑牢矿山安全防线
人工智能·安全·无人机·升级·智慧矿山·空间智能·露天矿山
阿昭L5 小时前
Lab 3-1
windows·安全·逆向工程·恶意代码分析