Linux中selinux基础配置教程详解

2019-01-16 20:49:41王冬梅

selinux(Security-Enhanced Linux)安全增强型linux,是一个Linux内核模块,也是Linux的一个安全子系统。

三种模式:

Enforcing:强制模式,在selinux运作时,已经开始限制domain/type。

permissive: 警告模式,在selinux运作时,会有警告讯息,但不会限制domain/type的存取。

disabled: 关闭模式。

可用getenforce查看selinux状态

selinux对文件的作用:

当开启selinux后,selinux会给每个文件加载标签context,安全上下文必须配对,否则文件不能访问

测试:

###开启selinux


在这里插入图片描述

创建文件,移动到ftp发布目录

touch /mnt/filemv /mnt/file /var/ftp/

在这里插入图片描述

用户登陆ftp查看文件


在这里插入图片描述

可以发现前面移动到ftp中的文件匿名用户不能看

但是该文件存在于ftp目录中


在这里插入图片描述

查看file的安全上下文

ls -Z /var/ftp/

在这里插入图片描述

可以看到两个文件的安全上下文并不相同,因此不会显示。
临时修改安全上下文

chcon -t public_content_t /var/ftp/file

在这里插入图片描述

登陆ftp查看文件


在这里插入图片描述

由于安全上下文对应一致,所以可以显示file该文件

chcon只是对安全上下文的临时修改,当系统selinux重启后,修改则会失效。

###永久修改安全上下文

##创建自己的ftp家目录,修改该目录安全上下文标签

mkdir /ftphomesemanage fcontext -a -t pubilc_content_t ‘/ftphome(/.*)?‘

###查看该目录的安全上下文


在这里插入图片描述

这里可以看到安全上下文标签并没有修改,我们需要重启内核列表服务

restorecon -RvvF /ftphome###R:递归 vv:显示目录下的子目录或文件修改信息,F:强制设置目录中文件和目录安全上下文一致