selinux对文件的控制

1.selinux插件 是系统级别的防火墙设置

基本 SELINUX 安全性概念
SELINUX ( 安全增强型 Linux ) 是可保护你系统安全性的额外机制.在某种程度上 , 它可以被看作是与标准权限系统并行的权限系统。在常规模式中 , 以用户身份运行进程 , 并且系统上的文件和其他资源都设置了权限 ( 控制哪些用户对哪些文件具有哪些访问权SELINUX 的另一个不同之处在于 , 若要访问文件 ,你必须具有普通访问权限和 SELINUX 访问权限。因此 , 即使以超级用户身份root 运行进程 , 根据进程以及文件或资源的 SELinux 安全性上下文可能拒绝访问文件或资源限 ) 标签
selinux 的启动关闭与查看
vim /etc/sysconfig/selinux
SELINUX=enforcing|permissive|disabled
selinux对文件的控制_第1张图片
setenforce 0|1 修改selinux状态
[root@localhost ~]# getenforce 查看selinux状态
1 enforcing 开启状态下的强制状态
0 permissive 开启状态下的警告状态
Disabled 关闭状态
开启状态和关闭状态之间互相转换的话必须重启
selinux对文件的控制_第2张图片

2.selinux 安全上下文访问规则

WEB 服务器的 HTTPD 进程设置了 SELINUX 上下文system_u:system_r:httpd_t 标签。该上下文的重要部分是第三个用冒号分隔的字段 SELINUX 类型 : httpd_t系统上的文件和资源也设置了 SELINUX 上下文标签 , 并且重要的部分是 SELINUX 类型。例如 , /var/www/html 中的文件具有类型 httpd_sys_content_t 。 /tmp 和 /var/tmp 中的文件通常具有类型 tmp_tSeliux 策略具有允许以 httpd_t 身份运行的进程访问标记为httpd_sys_content_t 的文件的规则。没有规则允许这些进程访问标记有 tmp_t 的文件 , 因此将拒绝这些访问 , 即使常规文件权限指出应该允许这些访问

当selinux插件处于关闭状态,vsftp服务无安全标签
selinux对文件的控制_第3张图片

当selinux插件处于强制或者警告状态时,重启时会给所有服务添加安全标签
selinux对文件的控制_第4张图片

selinux不同级别的文件管理
关闭状态下 客户端可看到移动pub目录的文件
selinux对文件的控制_第5张图片
selinux对文件的控制_第6张图片

强制状态下 客户端不能看到移动到pub目录下的文件
selinux对文件的控制_第7张图片
selinux对文件的控制_第8张图片

警告状态下 客户端可以看到移动到pub目录下的文件,但会产生警告日志
selinux对文件的控制_第9张图片
selinux对文件的控制_第10张图片

服务端警告日志
selinux对文件的控制_第11张图片

3.文件的安全上下文设置

1.实验环境(修改ftp的默认发布目录)
这里写图片描述

需要新建目录和文件
这里写图片描述
2.ls -Z 查看文件安全上下文 文件绝对路径

ls -Zd 查看目录安全上下文 目录绝对路径

selinux对文件的控制_第12张图片
3.临时修改上下文,重启后失效
chcon -t 更改文件的selinux安全上下文,修改前安全上下文类型default_t,用户登陆后无法查看
这里写图片描述
修改后,安全上下文类型为public_content_t -R表示递归
selinux对文件的控制_第13张图片
selinux对文件的控制_第14张图片
4.永久修改安全上下文

查看安全上下文列表 semanage fcontext

selinux对文件的控制_第15张图片
将指定目录加入到安全上下文列表中
这里写图片描述

重新加载安全上下文列表 restorecon -RvvF

selinux对文件的控制_第16张图片
selinux对文件的控制_第17张图片

4.管理 SELinux 布尔值

SELinux 布尔值是更改 SELinux 策略行为的开关。 SELinux 布尔值是可以启用或禁用的规则。安全管理员可以使 SELinux 布尔值来调整策略 , 以有选择地进行调整许多软件包都具有 man page *_selinux(8), 其中详细说明了所使用的一些布尔值 ; man -k ‘_selinux’ 可以轻松地找到这些手册getsebool 用于显示布尔值 , setsebool 用于修改布尔值setsebool -P 修改 SELinux 策略 , 以永久保留修改。semanage boolean -l 将显示布尔值是否永久

1.查看selinux中服务的bool值 getsebool -a

selinux对文件的控制_第18张图片

2.当ftp_home_dir --> off 功能关闭时,本地用户登陆不能操作

selinux对文件的控制_第19张图片

3.修改bool值,打开服务 setsebool -P  ftp_home_dir 1
-P 永久修改    0 关闭服务  1 开启服务

selinux对文件的控制_第20张图片

打开ftp_home_dir功能后,本地用户登陆具备相关权限

selinux对文件的控制_第21张图片

你可能感兴趣的:(selinux对文件的控制)