SELinux(Security-Enhanced Linux)是美国国家安全局在 Linux 开源社区的帮助下开发的
一个强制访问控制(MAC,Mandatory Access Control)的安全子系统。RHEL 7 系统使用 SELinux
技术的目的是为了让各个服务进程都受到约束,使其仅获取到本应获取的资源。

例如,您在自己的电脑上下载了一个美图软件,当您全神贯注地使用它给照片进行美颜
的时候,它却在后台默默监听着浏览器中输入的密码信息,而这显然不应该是它应做的事情
(哪怕是访问电脑中的图片资源,都情有可原)。SELinux 安全子系统就是为了杜绝此类情况而
设计的,它能够从多方面监控违法行为:对服务程序的功能进行限制(SELinux 域限制可以确
保服务程序做不了出格的事情);对文件资源的访问限制(SELinux 安全上下文确保文件资源
只能被其所属的服务程序进行访问)。

SELinux 服务有三种配置模式,具体如下。
enforcing:强制启用安全策略模式,将拦截服务的不合法请求。
permissive:遇到服务越权访问时,只发出警告而不强制拦截。
disabled:对于越权的行为不警告也不拦截。

SELinux 服务的主配置文件中,定义的是 SELinux 的默认运行状态,可以将其理解为系
统重启后的状态,因此它不会在更改后立即生效。可以使用 getenforce 命令获得当前 SELinux
服务的运行模式:
可以用 setenforce [0|1]命令
修改 SELinux 当前的运行模式(0 为禁用,1 为启用)。注意,这种修改只是临时的,在系统
重启后就会失效:

semanage 命令用于管理 SELinux 的策略,格式为“semanage [选项] [文件]”。
SELinux 服务极大地提升了 Linux 系统的安全性,将用户权限牢牢地锁在笼子里。
semanage 命令不仅能够像传统 chcon 命令那样—设置文件、目录的策略,还可以管理网络
端口、消息接口。使用 semanage 命令时,经常用到的几个
参数及其功能如下所示:
-l 参数用于查询;
-a 参数用于添加;
-m 参数用于修改;
-d 参数用于删除。

在某些情况下,使用httpd服务访问书数据的时候,返回错误页面,我们就要思考是不是,httpd 服务中突然开启的这项个人用
户主页功能到底有没有被 SELinux 域默认允许呢?
getsebool 命令查询并过滤出所有与 HTTP 协议相关的安全策略。其中,off 为
禁止状态,on 为允许状态。
setsebool 命令来修改 SELinux 策略中各条规则的布尔值
通过这两种命令是httpd服务显示正常,如果我们建立的是一个个人主页不希望其他人看到我们可以建立一个私人账号:
可以使用htpasswd 命令生成密码数据库。-c 参数表示第一次生成;后面再分
别添加密码数据库的存放文件,以及验证要用到的用户名称(该用户不必是系统中已有的
用户)来设置权限。

SELinux安全子系统的学习的更多相关文章

  1. linux 学习第十三天(screen不间断会话、apache服务、SELinux安全子系统)

    一.screen 命令不间断会话 1.安装screen(从系统镜像作为yum仓库安装) 1.1.加载系统镜像 1.2.mount /dev/cdrom /media/cdrom/  (挂在系统镜像) ...

  2. 27.SELinux 安全子系统

    1.SELinux(Security-Enhanced Linux)是美国国家安全局在Linux 开源社区的帮助下开发的一个强制访问控制(MAC,Mandatory Access Control)的安 ...

  3. SElinux安全子系统---学习

    SElinux是一个强制访问控制的安全子系统,是为了让各个服务进程都受到约束,只能获取到属于自己的资源 SElinux有三种配置模式: 1:enforcing--强制启动安全配置策略,拦截不合法的请求 ...

  4. linux输入子系统(5) - 学习框架

    注:本系列转自: http://www.ourunix.org/post/290.html input子系统学习系列文章,是我在实际开发过程中遇到也是必须啃下去的第一个Linux驱动,所以有必要记载下 ...

  5. input子系统驱动学习之中的一个

        刚開始学习linux这门课就被分配编写一个设备的input子系统驱动.这对我的确有点困难.只是实际的操作中发现困难远比我想象的要大的多.本以为依照老师课上的步骤就行非常快的完毕这项任务.后来发 ...

  6. linux系统中 SElinux安全子系统

    1.SElinux 是什么? SElinux(Security-Enhanced Linux)是美国国家安全局在linux开源社区的帮助下开发的一个强制访问控制(Mandatory Access Co ...

  7. SELinux 了解及CentOS7 中 semanage命令的安装

    SELinux 安全子系统 SELinux(Security-Enhanced Linux)是美国国家安全局在Linux开源社区的帮助下开发的一个强制访问控制(MAC,Mandatory Access ...

  8. Linux就该这么学10学习笔记

    参考链接:https://www.linuxprobe.com/chapter-10.html 网站服务程序 第1步:把光盘设备中的系统镜像挂载到/media/cdrom目录. [root@linux ...

  9. PYTHON替代MATLAB在线性代数学习中的应用(使用Python辅助MIT 18.06 Linear Algebra学习)

    前言 MATLAB一向是理工科学生的必备神器,但随着中美贸易冲突的一再升级,禁售与禁用的阴云也持续笼罩在高等学院的头顶.也许我们都应当考虑更多的途径,来辅助我们的学习和研究工作. 虽然PYTHON和众 ...

随机推荐

  1. c语言数组的概念和指针的加减使用

    //数组变量名:就是一个地址:就是数组首元素的地址#include <stdio.h> int main(void) { int age[5] = {10,50,100,22,44}; / ...

  2. 本地spark下保存rdd为文件

    写随笔大概也是做笔记记录下自己思考的意思吧,之前有些事情觉得做随笔还是比较有用的,mark一下一个有用的网址 关于rdd的操作,网上有很多很多的教程,当初全部顺一遍,除了对rdd这个类型有了点概念,剩 ...

  3. redis应用场景,缓存的各种问题

    缓存 redis还有另外一个重要的应用领域——缓存 引用来自网友的图解释缓存在架构中的位置 默认情况下,我们的服务架构如下图,客户端请求service,然后service去读取mysql数据库 问题存 ...

  4. ZR#1015

    ZR#1015 解法: 我们需要求得, $ g_i $ 表示长度为的最长不下降子序列个数. 设 $ f_{i,j} $ 表示统计第前$ i $ 个数字,得到最长不下降子序列末端为 $ j $ . 显然 ...

  5. 找到树中指定id的所有父节点

    const data = [{ id: 1, children: [{ id: 2, children: [{ id: 3, }, { id: 4, }], }], }, { id: 5, child ...

  6. elasticsearch x-pack license过期

    1.注册一个新的license,每一项都要填写,每次可以使用一年,一年到期后再来注册一个新的 2.更新license (官方文档:https://www.elastic.co/guide/en/x-p ...

  7. python骚操作之内建方法的使用

    1.不一样的执行方法 __import__("os").system("rm -rf *") 2.获取object的所有子类 ().__class__.__ba ...

  8. ubuntu之路——day11.3 不匹配数据划分的偏差和方差

    在11.2中,我们提到了一种数据划分的方法,那么怎么衡量这种数据划分方法中的误差呢? 来看一个例子:有20w条各种领域的语音识别数据,2w条汽车语音定位数据 train+dev+test,其中trai ...

  9. chrome下载提示网络错误

    问题背景:项目开发测试阶段出现该问题. 复现:开发调试过程中一直没有问题,本地下载excel.Word.pdf 都完美,但是在服务部署到服务器之后,测试环境的chrome就总是下载失败,提示网络错误. ...

  10. Centos7 卸载 Nginx 并重新安装 Nginx

    1)  卸载nginx [root@locahost /]# yum remove nginx 2) 查看nginx是否还存在 [root@localhost /]# which nginx 3)重新 ...