SELinux基础的学习

时间:2022-12-16 08:12:07

本文章介绍SELinux基础、SELinux域及上下文的概念以及如何修改文件的上下文

SELinux(Secure Enhanced Linux)安全增强的Linux是NSA针对计算机基础机构开发的一个全新的Linux安全机制

 

SELinux是一个内核级安全机制,内核2.6之后集成在Linux内核中

 

CentOS/RHEL默认开启SELinux 

 

SELinux定义了两个基本概念:

 

域: 对进程进行限制

 

上下文: 对文件进行限制

 

以下可显示文件的SELinux上下文信息:

 

ls -Z

 

以下可显示进程的SELinux域信息:

 

 

  
 
 
  1. ps -Z 

 

SELinux通过策略规定哪些域可以访问哪些上下文(哪些进程可以访问哪些文件)

 

SELinux有很多预置策略,我们通常不需要自定义策略,除非需要对自定义程序、服务进行SELinux保护

 

命令restorecon可以用来恢复一个文件的默认SELinux上下文:

 

  
 
 
  1. restorecon -R /var/www 

 

命令chcon可以用来修改一个文件的SELinux上下文:

 

  
 
 
  1. chcon --reference=/etc/named.conf.orig  /etc/named.conf 

           把/etc/named.conf的上下文更改成为/etc/named.conf.orig 的上下文

 

 

CentOS/RHEL默认使用目标策略

 

SELinux有三种工作模式:

enforcing    强制模式,任何违反策略的行为都会被禁止,并且产生警告信息

permissive  允许模式,违反策略的行为不会被禁止,只产生警告信息

disabled     关闭SELinux

 

SELinux模式可以通过修改配置文件:/etc/sysconfig/selinux进行修改

 

命令getenforce可以查看当前SELinux工作模式

 

命令setenforce可以修改当前SELinux工作模式

比如说我们现在开启了httpd服务,目录下没有文件,访问127.0.0.1出现的是默认的Apache网页,

如果说我们在root的根目录下创建一个index.html的文件,然后移动到/var/www/html下,然后我们再刷新网页,但是网页还是原来的样子,那么现在这种情况就是SElinux的目标策略在起作用,也就是说,index.html的文件的上下文和/var/www/html的上下文不一样才导致我们无法正常访问正确的网页。

那么我们进入/var/www目录下通过命令:

restorecon -R /var/www/html 恢复一下这个文件夹以及这个文件夹下的所有文件的上下文。 

上下文更改之后,我们就可以正常访问了。

本文出自 “song” 博客,请务必保留此出处http://song1230.blog.51cto.com/5595296/1175093