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
上一篇: java数据结构与算法之简单选择排序详解
下一篇: 3_二Linux中内核级加强型火墙的管理