selinux:内核级加强型防火墙
(对文件影响,安全上下文)对文件和服务进行标签,程序标签和文件标签不一致(看不了文件)
(对服务影响)set…把服务不安全的功能去掉,对程序功能进行限制,在内核上限制掉
getsebool -a | grep ftp
如何管理selinux级别
vim /etc/sysconfig/selinux
selinux=disabled ##关闭状态
selinux=Enforcing ##强制状态
selinux=Permissive ##警告状态
getenforce ##查看状态
临时更改
chcon -t 安全上下文 文件
chcon -t public_content_t /publicftp -R
关掉内核火墙重启,打开内核火墙重启后 /westos的安全上下文还原
semanage fcontext -l | grep /westos ##内核上下文安全列表
发现没有 所以会被还原
永久性改变安区上下文,即用命令给内核上下文安全列表加目录
semanage fcontext -l ##列出内核安全上下文列表内容
semanage fcontext -a -t public_content_t ‘/publicftp(/.*)?’
restorecon -RvvF /publicftp/ ##R vv显示 F刷新
(/.*)? 和-R递归类似
本地用户上传文件
getsebool -a | grep ftp
setsebool -P ftp_home_dir on
匿名用户上传文件
把/var/ftp/pub的组给ftp,权限给775
.conf文件里把anon_upload_enable=YES开启
getsebool -a | grep ftp
setsebool -P ftpd_anon_write on
ls -Zd /var/ftp/pub/ ##查看现在是不是只读
semanage fcontext -a -t public_content_rw_t /var/ftp/pub ##给它读写
restorecon -RvvF /var/ftp/pub/
setenforce 1 ##设定为阻挡
setenforce 0 ##设定为警告
可以在日志里面查看报错
通过安装setroubleshoot,可以查看日志报错来找到问题解决方案