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

Selinux的配置与管理

程序员文章站 2022-04-26 15:41:45
...

Selinux的设置

1.概念:
selinux :内核级加强型火墙(Security-Enhanced Linux)是美国国家安全局(NAS)对于强制访问控 制的实现,
在这种访问控制体系的限制下,进程只能访问那些在他的任务中所需要文件。最大限度的保证了linux系统的安全
2.设定模式
1)开启状态

enforing    #强制模式(警告并且拒绝)          
permissive  #警告模式(警告但不拒绝)

2)关闭状态

disabled    ##关闭模式(禁用模式)

3).临时性修改
getenforce #查看selinux的状态
Selinux的配置与管理
setenforce 0 #设置selinux的状态为警告模式(permissive)
Selinux的配置与管理
setenforce 1 #设置selinux的状态为强制模式(Enforcing)
Selinux的配置与管理
注意:此方法只能实现 permissive 状态 和 Enforcing 状态之间的转换
即当selinux的状态为 Disabled 时,用此方法不能更改selinux的状态
2).永久性修改:通过修改配置文件/etc/sysconfig/selinux的参数来更改selinux的状态,更改后需要reboot

Selinux的配置与管理2.selinux安全上下文的管理

ls -Z  filename                        #查看文件的安全上下文(若selinux为关闭状态时,则无法查看安全文)

Selinux的配置与管理

chcon -t public_content_t filename #临时更改文件的安全上下文的类型

semanage fcontext -a -t public_content_t '/westos(/.)?’
#永久更改文件的安全上下文的类型; -a 添加,-t 类型,(/ 本身内容;.
所有隐藏文件;)

.当selinux的状态为Disabled时,lftp连接后可以查看到外来文件

Selinux的配置与管理
将文件移动到共享目录
Selinux的配置与管理
此时可看见外来文件:
Selinux的配置与管理

.当selinux的状态更改为enforcing时,此时lftp连接便无法访问外来文件,并且有警告信息,并且本地用户不能删除,上传,下载,建立目录
实验:
在服务端:
Selinux的配置与管理
在客户端:无外来文件
Selinux的配置与管理
先清空日志,再查看日志,发现有警告信息:
/var/log/messages
cat /var/log/messages
本地用户:
Selinux的配置与管理
.当selinux的状态为Permissive时,可以访问外来文件但有警告
Selinux的配置与管理
3临时更改安全上下文

 chcon -t public_content_t filename

Selinux的配置与管理
此时即使在selinux打开状态,外来文件也可以看见。
Selinux的配置与管理4.永久性更改安全上下文
ls -Zd /linux/
Selinux的配置与管理
ls -Zd /var/ftp/

Selinux的配置与管理
semanage fcontext -l | grep /var/ftp
semanage fcontext -l | grep /linux/
Selinux的配置与管理

管理linux布尔值

getsebool -a |grep ftp           #查看目前系统上面ftp服务的所有布尔值条款
setsebool -P ftp_home_dir on     #打开ftp的布尔值

当selinux处于强制模式时,本地用户将无法put上传文件。直接将selinux的状态更改为警告模式即可,但用在这种模式下上传文件不安全

  • 解决方案:
  • [ getsebool -a | grep ftp] #查看ftp服务的布尔值条款
  • setsebool -P ftp_home_dir on ##打开ftp家目录的布尔值
    getsebool -a | grep ftp
    Selinux的配置与管理
    测试:
    Selinux的配置与管理

selinux日志的管理

/var/log/audit/audit.log #记录selinux的日志,只会说明错误,但不会提供解决方法,且阅读复杂
/var/log/messages #记录selinux的日志,会详细的记录错误,并且可提供解决方法
Selinux的配置与管理

安全文上下不一致:
Selinux的配置与管理
查看日志:
cat /var/log/messages
Selinux的配置与管理
cat /var/log/audit/audit.log ###没有解决方案
Selinux的配置与管理
restorecon -v /var/ftp/* ### 此时便可以查看到westosfile3,因为这时它的安全上文与/var/ftp的安全上文一样
此解决方案来自 setroubleshoot-server-3.2.17-2.el7.x86_64,若卸载此软件
Selinux的配置与管理
测试:无法再查看到解决方案
Selinux的配置与管理