linux中内核级加强型火墙的管理
前言
本文主要学习linux中内核级加强型火墙的管理,包括selinux、sebool、seport以及setrouble。
一、Selinux的功能
实验环境:
虚拟机配置好网络和可用的软件仓库,
下载vsftpd、lftp服务并开启
/etc/selinux/config 设置selinux的关闭和开启,设定完之后需要重启才能生效
重启虚拟机,
ls -Z file
不可查看安全上下文
mv file /var/ftp ----> 进入lftp后可以看到
开启selinux后重启,
可以看到selinux正在为所有文件添加安全上下文,此处需要一定时间。
rouch file1 新建file1
mv file1 /var/ftp 进入lftp后看不到file1
ls -Zd file1 可查看安全上下文
二、Selinux的状态及管理
getenforce 查看selinux状态
enforcing:
不符合条件一定不能被允许,并会收到警告信息
permissive:
不符合条件被允许,并会收到警告信息
setenforce 0 警告
setenforce 1 强制
selinux日志位置:
/var/log/audit/audit.log
三、Selinux的安全上下文
查看
ls -Z 查看文件安全上下文
ls -Zd 查看目录的安全上下文
ps axZ 查看进程的安全上下文
修改安全上下文
临时修改
chcon -t public_content_t file1
chcon -Rt public_content_t westosdir 修改目录以及目录中的子文件的安全上下文
永久修改安全上下文
如需特殊指定安全上下文需要修改内核安全上下文列表
semanage fcontext -l 查看内核安全上下文列表
semanage fcontext -a -t public_content_t '/westosdir(/.*)?'
restorecon -RvvF westosdir
touch /.autorelabel 重启系统时候初始化selinux
semanage fcontext -l | grep westosdir 查看westosdir文件安全上下文
四、SEBOOL
getsebool -a | grep ftp 查看ftp的bool值
setsebool -P ftpd_anon_write 1 更改ftp匿名写权限的bool值,更改前不可上传,更改后可上传
五、SEPORT
修改httpd服务端口任意,重启失败
setenforce 0 重启成功
semanage port -l |grep http
semanage port -a -t http_port_t -p tcp 82 添加端口
setenforce 1 ----> 重启成功
netstat -antlupe | grep 82 查看端口82
六、setrouble
此软件功能是采集警告信息并分析得到解决方案存放到message中。
rpm -qa | grep setrouble
/var/log/audit/audit.log selinux警告信息
/var/log/messages selinux问题解决方案
解决方案来自于 setroubleshoot-server
修改httpd端口 重启服务报错
/var/log/audit/audit.log
/var/log/messages
cat /var/log/messages 查找解决方案
解决后重启 无报错