欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

Linux中内核级加强型火墙的管理

程序员文章站 2024-02-26 21:07:04
...

实验环境:

rm -rf /etc/vsftpd
dnf reinstall vsftpd -y
systemctl restart vsftpd

需要开启一些功能

vim /etc/vsftpd/vsftpd.conf
///
anonymous_enable=YES
anon_upload_enable=YES
///
systemctl restart vsftpd
1、selinux的功能

实验素材的准备:

touch /mnt/westosfile
mv /mnt/westosfile /var/ftp/
chgrp ftp /var/ftp/pub/
chmod 775 /var/ftp/pub/

selinux-disable状态

lftp 172.25.254.109
cd /pub
put /etc/passwd

ps axZ | grep vdftpd

touch /mnt/westoslee
ls -Z /mnt/westoslee

selinux-enable状态

vim /etc/sysconfig/selinux
///
enforcing
///
reboot
touch /mnt/westosfile1
mv /mnt/westosfile1 /var/ftp/

ps axZ | grep vdftpd
#unconfined_u:unconfined_r:unconfined_t:s0-s0:c0.c1023 1644 pts/0 R+   0:00 grep --color=auto vdftpd

ls -Z /mnt/westoslee
#system_u:object_r:default_t:s0 /mnt/westoslee

给程序和文件加上标签,标签匹配才能访问

2、selinux的状态及管理
vim /etc/sysconfig/selinux
///
disabled	##selinux关闭
enforcing	##selinux开机设定为强制状态(拒绝且警告)
	##不符合条件一定不能被允许,并且被警告
permissive	##selinux开机设定为警告状态(通过且警告)
	##不符合条件被允许,并且被警告

[注意] selinux开启或关闭需要重启系统

selinux状态查看
getenforce

selinux开启后强制和警告级别的转换
setenforce 0 ##警告
setenforce 1 ##强制

selinux日志位置

/var/log/audit/audit.log
3、selinux的安全上下文

1、查看

ls -Z		##查看文件的安全上下文
ls -Zd		##查看目录的安全上下文
ls -axZ		##查看进程的安全上下文

2、修改安全上下文

##临时修改-在selinux重启后会还原

chcon -t	标签			文件|目录
chcon -t	public_content_t	/var/ftp/westosfile1
chcon -Rt	public_content_t	/westosdir	##修改目录本身及子文件的安全上下文

永久修改:
#如果需要特殊指定安全上下文,需要修改内核安全上下文列表

semanage fcontext -l		##查看内核安全上下文列表
semanage fcontext -a -t public_content_t '/westosdir(/.*)?'
restorecon -RvvF /westosdir
touch /.sutorelabel		##重启系统时selinux初始化文件标签开关文件
4、sebool
getsebool -a				##显示服务的bool值
setsebool -P ftpd_anon_write on		##更改bool值
5、seport

selinux会限制端口的使用,enforcing下被拒绝,permissive下可以使用

semanage port -l | grep ssh	##列出端口
semanage port -a -t ssh_port_t -p tcp 1111	##添加端口
semanage port -d -t ssh_port_t -p tcp 1111	##删除端口
6、setrouble

/var/log/audit/audit.log ##selinux警告信息
/var/log/messages ##selinux问题解决方案
setroubleshoot-server ##此软件功能时采集警告信息先并分析得到解决方案存放到message中

修改权限

chcon -t public_content_t /mnt/westos		##修改目录本身安全上下文类型
chcon -Rt public_content_t /mnt/westos		##修改目录及目录内容安全上下文类型


cd /mnt
mkdir westos
mkdir westosdir
ls
ls -Z /var/ftp
chcon -t public_content_t /var/ftp/westosfile1
ls -Z /var/ftp/
touch westos/westosfile{1..5}
ls -Zd westos
ls -lRZ westos
chcon -t public_content_t westos
ls -Zd westos
ls -lRZ westos
chcon -Rt public_content_t westos
ls -lRZ westos

touch /.sutorelabel	#重新初始化selinux,临时修改的安全上下文会恢复默认
reboot

ls -Zd /var/ftp		##安全上下文类型恢复默认

semanage fcontext -l | grep /var/ftp	##向安全上下文列表添加信息

semanage fcontext -a -t public_content_t '/westosdir(/.*)?'	##"(/.*)?"表示目录及目录里的内容
touch /westosfir/test{1..5}
semanage fcontext -a -t public_content_t '/westos'
touch /westos/file{1..5}
ls -Zd /westosdir
ls -Zd /westos
restorecon -RF /westosdir	##读取安全上下文列表
restorecon -RvvF /westos	##详细

匿名用户可写

semanage fcontext -a -t public_content_rw_t '/var/ftp/pub(/.*)?'	##修改安全上下文的类型
restorecon -RF /var/ftp/pub/	##重新读取
ls -Zd /var/ftp/pub/		##查看
getsebool -a | grep ftp		##
setsebool -P ftpd_anon_write 1	##设置可写
[注意]	两个都要修改才行

检测
lftp 172.25.254.109
cd /pub/
put /etc/issue
相关标签: linux