linux之selinux

本文介绍了SELinux的基本概念,包括其作为强制访问控制系统的功能和域-类型模型。详细阐述了SELinux的工作模式,如enforcing、permissive和disable。接着讲解了如何修改文件标签以符合SELinux上下文访问规则,以及如何使用semanage和setsebool管理FTP服务的权限。同时,文章提到了通过查看日志文件来解决SELinux报错的方法。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

一、selinux的基本概念
1、什么是selinux ?

SELinux是一种基于 域-类型 模型(domain-type)的强制访问控制(MAC)安全系统,它由NSA编写并设计成内核模块包含到内核中,相应的某些安全相关的应用也被打了SELinux的补丁,最后还有一个相应的安全策略。任何程序对其资源享有完全的控制权。假设某个程序打算把含有潜在重要信息的文件扔到/tmp目录下,那么在DAC情况下没人能阻止他。SELinux提供了比传统的UNIX权限更好的访问控制。

2、selinux工作模式:

1)、enforcing:如果违反selinux策略则无法继续执行操作。
2)、permissive:如果违反selinux策略则给予警告,但操作任然可以继续。
3)、disable:selinux安全访问策略不生效。

二、selinux上下文访问规则
1、selinux临时修改文件标签
ps -auxZ | grep ftp		查看ftp服务的访问规则
ls -Z /var/ftp			查看该目录的标签
ls -i file				查看文件的id和标签
restorecon -vR /var/ftp/		刷新此目录下的所有文件标签
chcon -t public_content_t file	临时更改file的标签为public_contemt_file

操作如下:
ps -auxZ | grep ftp 查看ftp服务的访问规则
在这里插入图片描述
ls -Z /var/ftp 查看该目录的标签
在这里插入图片描述
ls -i file 查看文件的id和标签
在这里插入图片描述
restorecon -vR /var/ftp/ 刷新此目录下的所有文件标签在这里插入图片描述在这里插入图片描述
在这里插入图片描述
chcon -t public_content_t file 临时更改file的标签为public_contemt_file在这里插入图片描述在这里插入图片描述

2、更改ftp共享目录,并且永久设定其标签
mkdir /ftpdir/pub -p			创建目录
vim /etc/vsftpd/vsftpd.conf
	anon_root=/ftpdir
ls -Zd /var/ftp					查看此目录标签
ls -Zd /ftpdir					查看此目录标签
restorecon -vR /var/ftp/		刷新此目录下的所有文件标签
chcon -t public_content_t /ftpdir -R	 临时修改此目录和下边文件的标签

semanage fcontext -l | grep ftp	  		 查看ftp标签信息
semanage fcontext -a -t public_content_t '/ftpdir(/.*)?' 系统永久修改标签

操作如下:
restorecon -vR /var/ftp/ 刷新此目录下的所有文件标签
在这里插入图片描述
chcon -t public_content_t /ftpdir -R 临时修改此目录和下边文件的标签
在这里插入图片描述
semanage fcontext -l | grep ftp 查看ftp标签信息
在这里插入图片描述

3、selinux的bool模型
getsebool -a | grep ftp				查看selinux设置ftp服务的bool列表
setsebool ftpd_anon_write on/1  	临时开启匿名用户的上传功能
setsebool -P ftpd_anon_write on/1 	永久开启匿名用户的上传功能

getenforce				查看selinux的工作模式状态
setenforce 1			设置selinux工作模式是enforcing
setenforce 0			设置selinux工作模式是Permissive

chcon -t public_content_rw_t /var/ftp/pub
ls -Zd /var/ftp/pub

getsebool -a | grep ftp 查看selinux设置ftp服务的bool列表
在这里插入图片描述
setsebool ftpd_anon_write on/1 临时开启匿名用户的上传功能
在这里插入图片描述
setsebool -P ftpd_anon_write on/1 永久开启匿名用户的上传功能
在这里插入图片描述
在这里插入图片描述

4、selinux报错日志和改错日志
yum install setroubleshoot-server.x86_64 -y	下载selinux错误处理服务
/var/log/messages				改错日志
/var/log/audit/audit.log		记录日志

在这里插入图片描述
在这里插入图片描述
/var/log/messages 告诉我们问题发生的原因
在这里插入图片描述
/var/log/audit/audit.log 正常记录操作行为
在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值