SELINUX提供了一种灵活的系统,且内嵌于Linux Kernel中。SELinux定义了系统中每个用户、进程、应用和文件的访问和转变的权限,然后它使用一个安全策略来控制这些实体(用户、进程、应用和文件)之间的交互,安全策略指定如何严格或宽松地进行检查。
Enforcing:启用状态,当进程访问了没有权限访问的文件时会被禁止并记录到日志,/var/log/audit/audit.log。
Permissive:工作在正常状态下,当进程访问了没有权限访问的文件,不会被禁止,仅仅记录到日志。
Disabled:永久关闭selinux,/etc/sysconfig/selinux,SELINUX=disabled,改完之后重启系统才会生效。
setenforce 0:临时关闭selinux对操作的影响,实际上修改的是/selinux/enforce文件,所以也可以echo 0 > /selinux
1.设置selinux的状态并查看状态
[root@localhost ~]# getenforce ###查看selinux的状态
[root@localhost ~]# setenforce 0 ###可以设置selinux的状态 0
[root@localhost ~]# ls -Z /var/ftp/pub/
-rw-------. ftp ftp system_u:object_r:public_content_t:s0 passwd
-rw-r--r--. root root unconfined_u:object_r:mnt_t:s0 westos
#######ls -Z 可以看到文件的SELinux属性,分别是user,role,type文件类型##
#####在没有改变文件的安全上下文时,file文件是不可见的
#######改变/var/ftp/westos的selinux的type文件类型
再次登录时文件可见
当符合安全上下文时才显示