Linux —— selinux

目录

1. selinux功能

1.1 selinux关闭状态

1.2 selinux开启状态

1.3 selinux功能

2. selinux状态

2.1 状态的查看

2.2 状态的切换

3. 安全上下文

3.1 安全上下文的临时更改

3.2  永久更改目录或文件安全上下文

4. sebool

5. setrouble


1. selinux功能

1.1 selinux关闭状态

  • 在/mnt/中建立文件文件安全上下文为空
  • ftp程序安全上下文为空
  • 用户可以上传文件
  • 文件被移动到ftp默认发布目录中可以被访问

1.2 selinux开启状态

  • 在/mnt/中建立文件文件有安全上下文
  • ftp程序有安全上下文
  • 用户不 可以上传文件
  • 文件被移动到ftp默认发布目录中可以无法被访问

### Linux SELinux 权限配置与管理 #### SELinux 工作原理概述 SELinux 是一种强制访问控制系统 (MAC),其设计目的是通过严格的权限控制增强操作系统安全性。在内核层面,SELinux 实现了细粒度的安全策略,这些策略定义了主体(通常是进程)能够对客体(如文件、套接字等资源)执行的操作[^1]。 #### SELinux 模式的切换 对于 SELinux 的不同工作模式——强制模式、宽容模式以及禁用模式,可以通过命令行工具 `setenforce` 和编辑 `/etc/selinux/config` 文件来进行更改: - **Enforcing Mode**: 此状态下 SELinux 将严格执行安全策略并拦截违规行为。 - **Permissive Mode**: 这种模式下虽然依旧检测潜在的违规事件但是并不会真正阻止它们发生;仅用于诊断目的。 - **Disabled Mode**: 关闭 SELinux 功能,在此模式下不应用也不监控任何安全策略[^2]。 ```bash # 切换至 Permissive 模式 sudo setenforce 0 # 修改配置文件使系统重启后保持该模式 sudo sed -i 's/^SELINUX=enforcing/SELINUX=permissive/' /etc/selinux/config ``` #### 配置特定服务的 SELinux 策略 当开发自定义的服务时,可能需要为其分配合适的 SELinux 标签以便正确处理权限请求。如果未适当配置,则可能会遇到因缺少必要权限而导致的应用程序错误或失败情况。例如,在 Android 中添加新服务时就需要确保已声明所需的所有权限项[^3]。 #### 应用 SELinux 策略于 Web 服务器 以 Apache HTTP Server (`httpd`)为例,默认情况下它的内容应该被打上 `httpd_sys_content_t` 类型标签。这意味着只有经过授权的内容才能被 web 浏览器访问。要改变某个目录下的所有文件及其子目录所关联的 SELinux 上下文,可利用 `semanage fcontext` 命令加上 `-a` 参数指定新的匹配规则,并随后使用 `restorecon` 更新实际标签[^5]: ```bash # 添加新的上下文映射关系 sudo semanage fcontext -a -t httpd_sys_content_t "/path/to/webroot(/.*)?" # 对现有文件重新标记以反映上述变更 sudo restorecon -Rv /path/to/webroot/ ``` #### SELinux 策略类型简介 当前最常用的两种 SELinux 策略是 Targeted 和 Strict 。前者专注于保护关键网络服务的同时给予本地应用程序相对宽松的规定;后者则提供了更为全面而细致化的管控措施[^4]。
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值