selinux的初级用法

#################
1.selinux的作用
################
selinux内核级加强型防火墙,是可以保护系统安全性的额外机制。

其通过检查安全上下文来限制访问

在服务端/mnt/目录下建立westos文件,并将westos移动到/var/ftp/pub/下
匿名登陆lftp服务,发现westos转移了过去
在这里插入图片描述
此时服务端selinux=disabled
在这里插入图片描述

编辑配置文件/etc/sysconfig/selinux
开启selinux服务
重启
在这里插入图片描述

在/mnt/目录下建立hello文件,并且将该文件移动到/var/ftp/pub下
匿名登陆lftp服务,发现hello文件不存在
在这里插入图片描述

##########################
2修改安全上下文
##########################
不能看到的原因是
vsftpd只能识别public_content_t的标签
在这里插入图片描述
ls -Z #查看文件的安全上下文
ls -Zd #查看目录的安全上下文

ps auxZ | grep vsftpd
查看ftp的安全上下文
在这里插入图片描述
chcon -t
临时修改安全上下文
在这里插入图片描述

如何永久修改安全上下文

建立目录/test
在目录之下建立文件file{1…3}
查看安全上下文
在这里插入图片描述
semanage fcontext -a -t public_content_t ‘/(目录)(/.*)?’
把目录下的所有文件的安全上下文修改为public_content_t

restorecon -FvvR /(目录)/
刷新这个目录下所有的文件的安全上下文变为同类
在这里插入图片描述
semanage fcontext -l | grep test
##查看与/test有关的安全上下文
在这里插入图片描述

###############################
3.在selinux开启的情况下影响其他程序
###############################
关闭seliunx时put上传文件可以
开启selinux后上传失败,原因是安全上下文没有开启并且只有读权限
在这里插入图片描述
我们需要开启上传开关并且修改安全上下文的权限

getsebool -a | grep ftp
#查看ftp服务的安全开关,可见所有都关闭了
在这里插入图片描述
setsebool -P ftpd_anon_write on
开启上传文件的开关
在这里插入图片描述
但此时上传还是失败,原因是写权限没开
在这里插入图片描述
chcon -t public_content_rw_t /var/ftp/pub/

ls -Zd /var/ftp/pub/
查看安全上下文具体内容可见写权限已开
在这里插入图片描述
连接后上传文件报错550是因为配置文件没有设置匿名上传文件
anon_upload_enable=YES
重读后上传
在这里插入图片描述

#####################
4.如何排错
#####################

selinux的日志在 /var/log/audit/audit.log
但是这个地方不提供排错方法
在这里插入图片描述

cat /var/log/messages
这里能提供排错方法但不考虑安全性
在这里插入图片描述
这个软件是setroubleshoot
卸载掉后不会提供建议

记不清可以yum search setrouble
搜索该软件

rpm -qa | grep setroubleshoot查看是否已安装
在这里插入图片描述

猜你喜欢

转载自blog.csdn.net/qwefyjwww/article/details/83785365