selinux管理
一、什么是selinux
selinux 内核级加强型防火墙
起到限制服务功能,限制服务访问两个功能(在使用lftp访问时体现)
selinux作用:
1.限制程序访问,程序访问文件必须有匹配的上下文
2.限制程序功能,把程序不安全功能屏蔽
二、selinux的常用命令
selinux状态的查看
getenforce ##查看状态
selinux的状态有三种:
enforcing ##强制
permissive ##警告
disabled ##关闭
selinux状态的更改
更改selinux状态需要更改linux配置文件:
vim /etc/sysconfig/selinux
SELINUX=xxx
reboot
注意:selinux的开启和关闭需要reboot重启,加载配置
注意:更改selinux状态时强制状态和警告状态可以使用命令相互切换,不需要重启:
setenforce 1 ##将selinux状态更改为强制
setenforce 0 ##将selinux状态更改为警告
三、安全上下文
1.安全上下文的查看
- ls -Z ##查看文件安全上下文
- ls -Zd ##查看目录的安全上下文
- ps auxZ | grep vsftpd ##查看ftp服务安全上下文
2.临时修改文件安全上下文
chcon -t 安全上下文 file ##临时更改文件的安全上下文
chcon -t 安全上下文 dir -R ##临时更改递归目录的安全上下文
注意:重启selinux(关闭,reboot,开启,reboot)后安全上下文会恢复默认设置
3.永久修改文件安全上下文
mkdir /westos
touch /westos/file{1..3}
ls -Zd /westos ##查看/westos/目录本身的安全上下文
ls -Zd /westos/* ##查看/westos/目录中文件的安全上下文
semanage fcontext -a -t public_content_t ‘/westos(/.*)?’ ##在内核安全上下文列表中将/westos/目录及目录中所有文件的安全上下文更改为public_content_t
semanage fcontext -l | grep westos ##仅查看与westos有关的安全上下文
restorecon -FvvR /westos/ ##刷新/westos/目录的安全上下文,F指向,vv过程,R递归
4.删除文件安全上下文
semanage fcontext -d ‘/westos(/.*)?’ ##删除内核上的安全上下文列表中的/westos
四、selinux影响程序功能
1.relinux开启后会给每个程序设定sebool值,默认关闭所有功能
getsebool -a | grep ftp ##查看关于ftp的所有sebool值
setsebool -P ftp_home_dir on ##打开sebool值中ftp_home_dir功能的开关
setsebool -P ftp_home_dir off ##关闭sebool值中ftp_home_dir功能的开关
注意:ftp服务中,将ftpd_full_access(相当于总开关) 打开后,relinux将不再限制ftp功能
2.在selinux开启情况下,实现匿名用户lftp下载上传文件
yum install vsftpd -y
systemctl start vsftpd
systemctl enable vsftpd
firewall-cmd --permanent --add-service=ftp
firewall-cmd --reload
vim /etc/vsftpd/vsftpd.conf
anon_upload_enable=YES
anon_world_readable_only=NO
chgrp ftp /var/ftp/pub
chmod 775 /var/ftp/pub
getsebool -a|grep ftp
setsebool -P ftpd_anon_write on
chcon -t public_content_rw_t /var/ftp/pub/
systemctl restart vsftpd
注意:此方法为临时更改,重启selinux后会失效,若要永久改变,可采用下文日志中插件提供的解决方法
上一篇: Linux下selinux的初级管理
下一篇: 淘宝商品页爬取