文章目录
十三、selinux管理
13.1 selinux介绍及功能
- 内核极加强型火墙-selinux
- selinux关闭时:
- 在其他路径文件移到ftp默认的目录发布文件中可以被访问,但是ftp程序的安全上下文为空
- 在其他路径文件移到ftp默认的目录发布文件中可以被访问,但是ftp程序的安全上下文为空
- 在selinux开启时以上操作都失败
- selinux功能:
- 当selinux开启时位系统中每一个文件及每一个程序都会加载安全上下文,特定的安全上下文的程序只能访问特定安全上下文的文件。
- 当selinux开启会对服务本身相对不安全的功能加载开关sebool并且设定开关为关闭状态以保证服务安全性,当需要时可以手动调节。
13.2 selinux状态
[root@rhel8 Desktop]$ getenforce # 查看selinux状态
disabled # 关闭状态
enforcing #开启/强制状态
permissive #警告状态
[root@rhel8 Desktop]$ setenforce 0 #软件开关 进入警告模式
[root@rhel8 Desktop]$ setenforce 1 #软件开关 进入开启模式
- 状态转换
[root@rhel8 Desktop]$ vim /etc/sysconfig/selinux #修改selinux配置文件
selinux=enforing #将selinux打开
[root@rhel8 Desktop]$ reboot #重启
13.3 安全上下文
13.3.1.安全上下文的临时更改
[root@rhel8 Desktop]$ chcon -t xxxx /var/ftp/text1/file #临时改变文件安全上下文
[root@rhel8 Desktop]$ chcon -R -t xxxx /var/ftp/text1 #临时改变目录安全上下文
- 例子
13.3.2.永久更改目录或文件的安全上下文
[root@rhel8 Desktop]$ semanage fcontext -l | grep /var/ftp
[root@rhel8 Desktop]$ semanage fcontext -a -t xxxx /var/ftp/text1'(*./)?' #永久修改目录中文件的安全上下文
[root@rhel8 Desktop]$ semanage fcontext -a -t xxxx /var/ftp/text1/file1 #永久修改文件的安全上下文
[root@rhel8 Desktop]$ restorecon -RvvF /var/ftp/xxx/ #刷新文件安全上下文。在修改完安全上下文后必须执行
- 例子
13.4 sebool
sebool:selinux对服务功能添加的开关
[root@rhel8 Desktop]$ getsebool -a | grep ftp
[root@rhel8 Desktop]$ setsebool -P ftpd_anon_write =1 #开启匿名用户的写功能
[root@rhel8 Desktop]$ setsebool -P ftpd_anon_write =on #开启匿名用户的写功能
- 以下为功能开关查询
13.5 setrouble
setrouble:selinux解决问题程序
首先需要安装setrouble程序
[root@rhel8 Desktop]$ sealert -a /var/log/audit/audit.log #分析日志并提供解决方案,selinux的日志存放在/var/log/audit/audit.log