一、内核级防火墙 selinux
1.三种级别
1 (Enforcing)强制:警告,并拒绝访问
0 (Permissive)警告:不被拒绝,但会产生警告日志
(Disabled)关闭:不被拒绝,可正常访问
2.安全标签:安全上下文
当selinux插件处于关闭状态,vsftp服务无安全标签
当selinux插件处于强制/警告状态,重启时给所有服务添加安全标签(例 ps auxZ | grep vsftpd)
二、selinux 级别管理
1.selinux配置文件 /etc/sysconfig/selinux
2.selinux级别信息
查看selinux级别 getenforce
设置selinux级别 setenforce 0 | 1
setenforce 1 切换成enforcing
setenforce 0 切换成permissive
注意:强制和警告级别可互相切换。要关闭selinux插件,修改配置文件后必须reboot。打开selinux插件,也要reboot。
3.查看文件安全上下文 ls -Z 文件绝对路径
查看目录安全上下文 ls -Zd 目录绝对路径
三.文件的安全上下文设置
1.临时修改上下文,重启后失效 ##命令行chcon
chcon -t 安全上下文类型 目录绝对路径 -R(递归)
###-t是设置文件的安全上下文
安全上下文不一致:
semanage fcontext -l | grep /var/ftp##查看该目录下所有文件的默认安全上下文
chcon -t public_content_t /var/ftp/westos ##修改安全上下文
安全上下文已修改可以看到westos
2.永久修改安全上下文
semanage fcontext -l | grep /westos ##查看默认安全上下文
semanage fcontext -a -t public_content_t '/westos(/.*)?' ##/westos(/.*)?表示该目录以及其下的文件
restorecon -FvvR /westos/ ##刷新安全上下 文
永久修改安全上下文之后,改目录下新建的文件也是该安全上下文
四、selinux 的bool值
1.查看selinux中服务的bool值 getsebool -a
2.
getsebool -a | grep ftp ##找出有关ftp的sebool值
setsebool -P ftp_home_dir on ##开启上传的权限 P为大写
,注意使用本地用户。-P ##永久修改 0 ##关闭服务 1 ##开启服务