[CentOS7] SELinux
声明:本文主要总结自:鸟哥的Linux私房菜-第十六章、程序管理與 SELinux 初探,如有侵权,请通知博主
SELinux = Security Enhanced Linux
传统的文件权限与账号关系:DAC模式(Discretionary Access Control,自主式存取控制)
依据进程的拥有者与文件的rwx权限来决定进程有无读写能力
以政策规则规定特定进程读取特定文件:MAC模式(Mandatory Access Control,委托式存取控制)
通过SELinux针对特定进程与特定文件资源来进行权限的管制

SELinux运行的各部分之间的关系


详细参考:鸟哥的Linux私房菜-SELinux
获取相关的策略类型
获取某策略类型的三种方法:

设定策略类型为开启状态(未写入设定文件)

设定策略类型为永久开启状态(写入设定文件)

查看策略类型下的具体规则
查看fcron_crond该策略类型下有哪些规则

所有关于SELinux的指令:
sestatus ==> 查看目前的SELinux使用的哪个政策(Policy: 1.targeted 2.minimum 3.mls)
setsebool [ -P ] xxx 1 ==> 设置SELinux的某规则为开启状态
getsebool [ -a ] ==> 列出SELinux所有规则与该规则的开启状态(布尔值)
seinfo [ -u | r | t | b ] ==> 列出SELinux所有[-u(user)身份识别的种类],[-r(role)角色的种类],[-t(type)类别的种类],[-b(boolean)规则的种类]
sesearch [-A] [-s 主体类别] [-t 目标类别] [-b 规则类别] ==> 列出某规则允许放行的文件的SELinux的类别
例如:
sesearch -A ==> 列出所有放行(-A allow)的规则
sesearch -A -s crond_t -t admin_home_t ==> 列出所有主体类别为crond_t,目标类别为admin_home_t的所有放行规则
sesearch -A -b fcron_crond ==> 列出fcron_crond规则下的详细信息
sesemanage boolean -l ==> 列出SELinux所有规则与该规则的开启状态(布尔值),与 getsebool -a 效果相同
chcon [-R] [-u user] [-r role] [-t type] 文件 ==> 手动更改文件的SELinux的类型
chcon [-R] --reference=文件1 文件2 ==> 手动更改文件2的SELinux的类型(参考文件1的SELinux的类型)
restorecon [-R] [-v] ==> 让文件或目录恢复正确的SELinux的类型(-R 包含子目录,-v 将过程显示到屏幕上)
semanage fcontext [-a | m | d] ==> -a增加,-m修改,-d删除预设的SELinux的类型
semanage fcontext -l ==> 查询所有预设(默认)的目录和文件的SELinux的类型,当使用restorecon -Rv 就能将文件恢复为预设(默认)SELinux的类型
semanage fcontext -a -t admin_home_t "/srv/test(/.*)?" ==> 将/srv/test目录即目录下的预设(默认)SELinux的类型设为admin_homt_t类型
[CentOS7] SELinux的更多相关文章
- Centos7——selinux配置
临时关闭selinux setenforce 0 永久关闭selinux vi /etc/selinux/config 修改enforcing为disabled 情景一: httpd修改网站文件目录的 ...
- Centos7 selinux关闭
getenforce ---查看selinux服务是否开启 setenforce 0|1 0:Permissive 1:Enforcing 上面使用setenforce是临时的效果 永久关闭方法: v ...
- Centos7 二进制安装 Kubernetes 1.13
目录 1.目录 1.1.什么是 Kubernetes? 1.2.Kubernetes 有哪些优势? 2.环境准备 2.1.网络配置 2.2.更改 HOSTNAME 2.3.配置ssh免密码登录登录 2 ...
- centos7 修改selinux 开机导致 faild to load SELinux policy freezing 错误
centos7 修改selinux 开机导致 faild to load SELinux policy freezing 错误 之前把selinux关闭了,这次想打开selinux,于是修改了 /e ...
- CentOS7使用firewalld和selinux
转载自莫小安的博客:https://www.cnblogs.com/moxiaoan/p/5683743.html 如何查看和使用selinux https://blog.csdn.net/edide ...
- 因为错误关闭Selinux导致CentOS7启动失败(进度条卡死,图形界面加载卡死)
我在CentOS7上安装oracle,非常麻烦,搞半天终于安装完毕,当天我没有发现任何问题,第二天上班打开虚拟机CentOS7就进不去了. 我想起来之前关闭了Selinux,把系统名称改成了redha ...
- CentOS7 关闭防火墙和selinux
本文将简单介绍在CentOS7上如何临时和永久关闭防火墙和selinux. 关闭防火墙 # 查看防火墙状态 [root@localhost ~]# systemctl status firewalld ...
- [原]Failed to load SELinux policy. System Freezing ----redhat7or CentOS7 bug
重启rhel7或者centos7 启动界面按 e 在启动项后面加上enforcing=0 Ctrl+x 运行修改后的grub 进入系统 编辑保存/etc/selinux/config 重启
- CentOS7.0 x86_64系统上构建php开发环境--Lamp(包含设置虚拟文件夹,加入SELinux对httpd的支持等知识)
一.安装mysql,直接用yum安装就可以,mysql在centos7.0版本号中被mariadb替代了. 命令: yum install mysql-server mysql 安装好了,选择改动my ...
随机推荐
- Spring Boot- 用idea新建spring boot web项目
1.新建project 2.选择Spring Initializr,next 3.输入项目信息,next 4.选择web依赖以及Spring Boot的版本,next 5.Finish 6.Enabl ...
- table+css与xhtmL+css实现同一登陆框(代码片段)
1.从网上下载了一个不错的登录框样式(table结合css布局): 2.初学xhtmL,自己改写了一下,希望有用 3. 我怎么不会上传截图呢? 1. [代码]xhtml_css组合 < ...
- ajax技术返回json如何处理
json只是一种文本字符串. Smarty是一个使用PHP写出来的模板引擎. ajax如何处理json数据格式 ①json的格式如下: "{属性名:属性值,属性名:属性值}". 因 ...
- Android 基础-1.0 按钮4种点击事件
第一种 测试使用 直接xml添加,平时在自己的测试demo中使用比较多. 1.直接在xml里给按钮添加点击事件 android:onClick="btn_click" 2.按住op ...
- 学习c++的优秀博客(转)
http://zhedahht.blog.163.com/ 本博客讨论程序员面试题,并主要集中在C/C++.数据结构算法和算法上.http://saturnman.blog.163.com/ sat ...
- Canvas drawImage
drawImage() 方法在画布上绘制图像.画布或视频. drawImage() 方法也能够绘制图像的某些部分,以及/或者增加或减少图像的尺寸. 这个方法有三张传参模式,3个参数,5个参数,9个参数 ...
- linux命令学习笔记(17):whereis 命令
whereis命令只能用于程序名的搜索,而且只搜索二进制文件(参数-b).man说明文件(参数-m)和 源代码文件(参数-s).如果省略参数,则返回所有信息. 和find相比,whereis查找的速度 ...
- I.MX6 Android 永不休眠
/************************************************************************* * I.MX6 Android 永不休眠 * 说明 ...
- NYOJ-括号配对问题--------待解决,RE
描述 现在,有一行括号序列,请你检查这行括号是否配对. 输入 第一行输入一个数N(0<N<=100),表示有N组测试数据.后面的N行输入多组输入数据,每组输入数据都是一个字符串S(S的 ...
- C#实现读写文本文件中的数据
[1]首先我们定义一段假数据,这里以一个string为例字 static void Main(string[] args) { string data = &quo ...