温馨提示×

CentOS SELinux用户权限如何管理

小樊
62
2025-09-01 16:28:48
栏目: 智能运维

CentOS SELinux用户权限管理主要通过安全上下文、角色、策略配置实现,核心命令及操作如下:

一、基础概念与状态管理

  • 安全上下文:由用户、角色、类型、级别组成,决定访问权限(如ls -Z查看文件上下文)。
  • 工作模式
    • Enforcing(默认):强制实施策略,违反规则将被阻止并记录。
    • Permissive:仅记录违规行为,不阻止操作(用于测试)。
    • Disabled:完全关闭SELinux。
    • 修改模式
      • 临时:setenforce 0/1
      • 永久:编辑/etc/selinux/config,重启生效。

二、用户权限配置核心方法

1. 用户与角色映射

  • 将系统用户关联到SELinux用户(如semanage login -a -s user_r username)。
  • 查看用户映射:semanage login -l

2. 安全上下文管理

  • 临时修改chcon -t 类型 文件/目录(如chcon -t httpd_sys_content_t /var/www)。
  • 永久修改semanage fcontext -a -t 类型 文件/目录,需配合restorecon恢复默认上下文。

3. 策略规则管理

  • 查看策略seinfo(查看策略信息)、sesearch(搜索规则)。
  • 自定义规则
    • 通过audit2allow工具生成策略模块(基于拒绝日志):
      ausearch -m avc -ts recent | audit2allow -M mypolicy,再执行semodule -i mypolicy.pp
  • 启用/禁用布尔值:调整特定权限开关(如setsebool -P httpd_enable_homedirs on)。

三、关键命令总结

场景 命令 作用
查看状态 getenforcesestatus 查看当前模式及详细信息
用户角色管理 semanage login -a -s 角色 用户名 分配用户到指定角色
文件上下文 chconrestorecon 临时/永久修改文件安全上下文
策略编辑 semodule -isemodule -r 安装/删除自定义策略模块
日志分析 ausearchaureport 查看被拒绝的操作记录

四、注意事项

  • 修改策略前建议备份原始文件,避免误操作导致系统异常。
  • 生产环境需谨慎测试自定义策略,优先使用默认策略或经过验证的规则。

参考来源:

0