selinux内核级加强型防火墙

###########selinux内核级加强型火墙##########
selinux基本认识和设置
1.CONTEXT 安全上下文
程序安全上下文和文件安全上下文匹配时访问允许
程序安全上下文和文件安全上下文不匹配时访问不允许
2.getsebool 功能开关
getsebool -a | grep ftp
对服务 功能开关
对文件 安全标签
在这里插入图片描述

3.查看selinux的状态
执行getenforce
在这里插入图片描述
修改状态编辑vim /etc/sysconfig/selinux
SELINUX=enforcing开启
reboot重新启动
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
开机后查看selinux=enforcing

SELINUX=disabled 关闭状态
reboot重新启动 ///开启和关闭selinux需要重启
开启状态
enforcing
permissive
开启状态下切换
setenforce 1 强制
setenforce 0 警告
在这里插入图片描述

文件的安全上下文的临时设定
临时设置
cd /mnt
touch westosfile
在这里插入图片描述
mv /mnt/westosfile /var/ftp
lftp 172.2.5.254.103
ls 不会显示 /因为文件上下文不匹配,所以lftp是是不会显示此处的westosfile的
在这里插入图片描述
当cd /var/ftp
ls 有文件
ls -Zd /var/ftp
chcon -t public_content_t westosfile 临时设置上下文对应
ls -Z
在这里插入图片描述
再去测试,用另一台主机lftp 172.25.71.150
ls
在这里插入图片描述
刚才的westosfile就会显示,
########文件安全上下文的永久设定#######
永久设置
1.编辑文件vim /etc/vsftpd/vsftpd.conf
anon_root=/ftphome 让匿名用户lftp到/ftphome
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
重新启动服务

2.ls -Zd /ftphome //查看/ftphome的安全上下文
在这里插入图片描述
3.chcon -t public_content_t /ftphome/ -R 改变/ftphome/下所有的安全上下文,改成后/var/ftp/一致的安全上下文
在这里插入图片描述
4.ls -Zd /ftphome/
ls -Zd /var/ftp/ 查看两个目录的上下文是否一致
在这里插入图片描述 5.在另外一台主机lftp就可以看到ftphome底下的东西了
在这里插入图片描述
6.semanage fcontext -l | grep /ftp /查看/var/ftp的安全文类型
在这里插入图片描述
在这里插入图片描述
7.semanage fcontext -a -t public_content_t ‘/ftphome(/.*)?’ //改变/ftphome目录下的安全上下文
restorecon -RvvF /ftphome/ 递归设置
在这里插入图片描述
reboot 重新启动
8.重启之后查看/ftphome下文件的安全上下文
在这里插入图片描述
8.用另外一台主机lftp 172.25.71.150
ls 可以看到/ftphome/下的内容
在这里插入图片描述
###########匿名用户的上传#############
1.当selinux=permissive 警告模式下的匿名用户上传
在这里插入图片描述
2.查看ftp各项功能的状态
在这里插入图片描述
3.开启第一个 ftp_home_dir 建立目录功能,再查看是否开启
在这里插入图片描述4.再修改配置文件 vim /etc/vsftpd/vsftpd.conf
把匿名用户上传打开
在这里插入图片描述
然后重新启动vsftpd服务,让其生效

5.chgrp ftp /var/ftp/pub/匿名用户默认身份ftp 更改组
chmod 775 /var/ftp/pub/更改权限
在这里插入图片描述
6.测试,用另一个主机lftp 172.25.71.150 上传文件 发现可以将/etc/passwd上传
在这里插入图片描述
7…当selinux=enforcing 强制模式下的匿名用户上传
在这里插入图片描述
按照刚才的实验lftp发现是上传不了文件的
在这里插入图片描述
8.打开匿名用户写权限
在这里插入图片描述
9.用ls -Z /var/ftp/pub 的权限和程序以及上下文 ,发现权限不够
在这里插入图片描述
加入读写权限并查看
在这里插入图片描述
10.测试,用另一台主机lftp 172.25.71.150 并上传/etc/group
在这里插入图片描述
在这里插入图片描述
selinux的配置文件以及问题解决方法的配置文件
1.selinux的日志文件
selinux日志文件保存在 /var/log/audit/audit.log
在这里插入图片描述
在这里插入图片描述
2.selinux的问题解决方案 /var/log/messages
在这里插入图片描述
在这里插入图片描述
3.setroubleshoot-server.x86_64 软件将selinux的问题解决方案采集到/var/log/messages
当系统有setroubleshoot-server.x86_64 软件就会采集selinux问题解决方案到/var/log/messages里
在这里插入图片描述
4.当系统没有setroubleshoot-server.x86_64 软件就不会采集selinux问题解决方案到/var/log/messages里
在这里插入图片描述
在这里插入图片描述

猜你喜欢

转载自blog.csdn.net/weixin_43407305/article/details/83830038