今天学习了SELinux的相关知识,所谓SELinux,就是一种安全机制,控制一些操作行为,避免造成损失。要注意SELinux是属于内核级别的安全机制。
介绍SELinux之前,先介绍几个概念。在Linux中分为两种,一个是进程,一个是系统资源。在SELinux中,分为了域(domain)和上下文(context),其中domain对进程进行限制,context则对系统资源进行限制。
SELinux通过一个叫做“策略”的东西,来确定哪些域可以访问哪些上下文。
1、查看域和上下文的命令
ps -Z 查看进程的域
ls -Z 查看文件上下文信息
2、SELinux有三种工作模式
(1)强制模式 ----enforcing 违反该策略的所有行为都会被禁止,并作为内核信息输出日志
(2)允许模式 -----permissive 违反该策略的所有行为都不会被禁止,但是会产生警告信息
(3)禁用模式 -----disabled 关闭SELinux,SELinux不起任何作用
3、设置SELinux的工作模式
在/etc/sysconfig/下的selinux文件下,修改SELINUX=之后的内容即可
若要临时修改,可以使用setenforce命令
setenforce 0/1/enforcing/permissive
4、获取当前SELinux的工作状态
getenforce
5、恢复或修改被修改的文件的上下文
//恢复默认上下文
restorecon -R 目录
// 修改文件的上下文信息
chcon --reference= 参照文件 要修改的文件