声明:本文主要总结自:鸟哥的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的更多相关文章

  1. Centos7——selinux配置

    临时关闭selinux setenforce 0 永久关闭selinux vi /etc/selinux/config 修改enforcing为disabled 情景一: httpd修改网站文件目录的 ...

  2. Centos7 selinux关闭

    getenforce ---查看selinux服务是否开启 setenforce 0|1 0:Permissive 1:Enforcing 上面使用setenforce是临时的效果 永久关闭方法: v ...

  3. Centos7 二进制安装 Kubernetes 1.13

    目录 1.目录 1.1.什么是 Kubernetes? 1.2.Kubernetes 有哪些优势? 2.环境准备 2.1.网络配置 2.2.更改 HOSTNAME 2.3.配置ssh免密码登录登录 2 ...

  4. centos7 修改selinux 开机导致 faild to load SELinux policy freezing 错误

    centos7 修改selinux 开机导致 faild to load SELinux policy  freezing 错误 之前把selinux关闭了,这次想打开selinux,于是修改了 /e ...

  5. CentOS7使用firewalld和selinux

    转载自莫小安的博客:https://www.cnblogs.com/moxiaoan/p/5683743.html 如何查看和使用selinux https://blog.csdn.net/edide ...

  6. 因为错误关闭Selinux导致CentOS7启动失败(进度条卡死,图形界面加载卡死)

    我在CentOS7上安装oracle,非常麻烦,搞半天终于安装完毕,当天我没有发现任何问题,第二天上班打开虚拟机CentOS7就进不去了. 我想起来之前关闭了Selinux,把系统名称改成了redha ...

  7. CentOS7 关闭防火墙和selinux

    本文将简单介绍在CentOS7上如何临时和永久关闭防火墙和selinux. 关闭防火墙 # 查看防火墙状态 [root@localhost ~]# systemctl status firewalld ...

  8. [原]Failed to load SELinux policy. System Freezing ----redhat7or CentOS7 bug

    重启rhel7或者centos7 启动界面按 e 在启动项后面加上enforcing=0 Ctrl+x  运行修改后的grub 进入系统 编辑保存/etc/selinux/config 重启

  9. CentOS7.0 x86_64系统上构建php开发环境--Lamp(包含设置虚拟文件夹,加入SELinux对httpd的支持等知识)

    一.安装mysql,直接用yum安装就可以,mysql在centos7.0版本号中被mariadb替代了. 命令: yum install mysql-server mysql 安装好了,选择改动my ...

随机推荐

  1. Codeforces Round #335 (Div. 2) C. Sorting Railway Cars

    C. Sorting Railway Cars time limit per test 2 seconds memory limit per test 256 megabytes input stan ...

  2. 现有exe转为服务_方式01

    1.安装X.exe服务: ...>路径\X.exe /install 2.卸载X.exe服务: ...>路径\X.exe /uninstall 3.开始运行XX(程序是X.exe,服务名是 ...

  3. CV2图像操作

    一.读入图像使用函数cv2.imread(filepath,flags)读入一副图片filepath:要读入图片的完整路径flags:读入图片的标志 cv2.IMREAD_COLOR:默认参数,读入一 ...

  4. LSM Tree 学习笔记——本质是将随机的写放在内存里形成有序的小memtable,然后定期合并成大的table flush到磁盘

    The Sorted String Table (SSTable) is one of the most popular outputs for storing, processing, and ex ...

  5. mysql基本语句1

    操作MySQL数据库 向表中插入数据 insert 语句可以用来将一行或多行数据插到数据库表中, 使用的一般形式如下: insert [into] 表名 [(列名1, 列名2, 列名3, ...)] ...

  6. Eclipse_常用技巧_03_字母大小写转换快捷键

    eclipse中字母大小写转换快捷键: ctrl+shift+x 转为大写 ctrl+shift+y 转为小写

  7. BEC listen and translation exercise 35

    高中听力: At five o'clock, we have afternoon tea, but we don't have it in the kitchen. Father's Day is t ...

  8. C++ STL源码剖析

    stl_config.h defalloc.h stl_alloc.h memory.cpp stl_construct.h stl_uninitialized.h stl_iterator.h ty ...

  9. Python 转义字符中没有这个 「\e」 !

    问题来源于技术交流群里: 常见的转义字符 \n.\t 之类的我们都知道什么意思,但是这个 \e 是什么意思呢? 抱着一股钻研的精神,我搜了一把. 结果,所有的页面里都是只有一句简单的 \e 代表转义. ...

  10. js中eval详解

    先来说eval的用法,内容比较简单,熟悉的可以跳过   eval函数接收一个参数s,如果s不是字符串,则直接返回s.否则执行s语句.如果s语句执行结果是一个值,则返回此值,否则返回undefined. ...