SELINUX 服务

目录

一、SELinux 服务介绍

1.1、临时关闭服务

1.2、永久关闭

二、端口上下文

添加端口号的规则的规则库

三、使用布尔值调整selinux策略

四、文件或目录安全上下文 (标签)

4.1、安全上下文介绍

4.1.1、身份字段

4.1.2、角色字段

4.1.3、类型字段

4.1.4、灵敏度

4.2、查询安全上下文

4.2.1、查询某一进程的安全上下文

4.2.2、查询某一目录或文件的安全上下文

4.2.3、查询默认安全上下文

4.3、修改目录安全上下文

4.3.1、临时修改

4.3.2、永久修改(即更改默认上下文(又名规则库))

4.3.3、将文件或目录恢复成默认的安全上下文(拉取规则库中配置)


 

 

  • 一、SELinux 服务介绍

selinux服务对root用户权限进行控制,很多企业中:selinux服务默认关闭

 

1.1、临时关闭服务

这三个命令只是临时生效,系统重启后恢复

  1. 临时关闭SELinux

#setenforce 0

watermark,type_d3F5LXplbmhlaQ,shadow_50,text_Q1NETiBA5Yqq5Yqb5a2m5Lmg56C05aSp6I2S,size_13,color_FFFFFF,t_70,g_se,x_16

  1. 临时打开SELinux

#setenforce 1

  1. 查看SELinux的状态

#getenforce

 

1.2、永久关闭

vi /etc/selinux/config

       SELINUX=disabled

PS: 如果想让selinux配置文件生效,重启系统

 

SELinux 服务有三种配置模式,具体如下。

➢ enforcing:强制启用安全策略模式,将拦截服务的不合法请求。

➢ permissive:遇到服务越权访问时,只发出警告而不强制拦截。

➢ disabled:对于越权的行为不警告也不拦截。

 

 

Selinux,默认情况下,就已经将已知的一些网络服务默认要访问的路径添加到规则库,并打上相应的context。

 

# ps axZ

 

二、端口上下文

watermark,type_d3F5LXplbmhlaQ,shadow_50,text_Q1NETiBA5Yqq5Yqb5a2m5Lmg56C05aSp6I2S,size_15,color_FFFFFF,t_70,g_se,x_16

 

注意:

  1. 不能修改默认已存在的规则,只能新增规则(只能追加,只能删除追加的内容)

watermark,type_d3F5LXplbmhlaQ,shadow_50,text_Q1NETiBA5Yqq5Yqb5a2m5Lmg56C05aSp6I2S,size_19,color_FFFFFF,t_70,g_se,x_16

 

 

添加端口号的规则的规则库

修改httpd的默认端口,且不是http_port_t 中定义的端口

 

1、以下命令为查看端口安全上下文信息

# semanage port -l | grep http_port_t

watermark,type_d3F5LXplbmhlaQ,shadow_50,text_Q1NETiBA5Yqq5Yqb5a2m5Lmg56C05aSp6I2S,size_18,color_FFFFFF,t_70,g_se,x_16

 

2、将/etc/httpd/conf/httpd.conf的Listen 端口修改为499,重启服务后提示失败

watermark,type_d3F5LXplbmhlaQ,shadow_50,text_Q1NETiBA5Yqq5Yqb5a2m5Lmg56C05aSp6I2S,size_20,color_FFFFFF,t_70,g_se,x_16

 

  1. 添加端口上下文信息

# semanage port -a -t http_port_t 499 -p tcp

watermark,type_d3F5LXplbmhlaQ,shadow_50,text_Q1NETiBA5Yqq5Yqb5a2m5Lmg56C05aSp6I2S,size_19,color_FFFFFF,t_70,g_se,x_16  

 

 

三、使用布尔值调整selinux策略

控制服务的相关安全功能

watermark,type_d3F5LXplbmhlaQ,shadow_50,text_Q1NETiBA5Yqq5Yqb5a2m5Lmg56C05aSp6I2S,size_18,color_FFFFFF,t_70,g_se,x_16

打开:-1

关闭:-0

watermark,type_d3F5LXplbmhlaQ,shadow_50,text_Q1NETiBA5Yqq5Yqb5a2m5Lmg56C05aSp6I2S,size_10,color_FFFFFF,t_70,g_se,x_16

watermark,type_d3F5LXplbmhlaQ,shadow_50,text_Q1NETiBA5Yqq5Yqb5a2m5Lmg56C05aSp6I2S,size_17,color_FFFFFF,t_70,g_se,x_16

 

 

watermark,type_d3F5LXplbmhlaQ,shadow_50,text_Q1NETiBA5Yqq5Yqb5a2m5Lmg56C05aSp6I2S,size_20,color_FFFFFF,t_70,g_se,x_16

watermark,type_d3F5LXplbmhlaQ,shadow_50,text_Q1NETiBA5Yqq5Yqb5a2m5Lmg56C05aSp6I2S,size_20,color_FFFFFF,t_70,g_se,x_16

修改安全上下文信息可访问

watermark,type_d3F5LXplbmhlaQ,shadow_50,text_Q1NETiBA5Yqq5Yqb5a2m5Lmg56C05aSp6I2S,size_20,color_FFFFFF,t_70,g_se,x_16

 

四、文件或目录安全上下文 (标签)

4.1、安全上下文介绍

SELinux 管理过程中,进程是否可以正确地访问文件资源,取决于它们的安全上下文。进程和文件都有自己的安全上下文,SELinux 会为进程和文件添加安全信息标签,比如 SELinux 用户、角色、类型、类别等,当运行 SELinux 后,所有这些信息都将作为访问控制的依据。

 

system_u:object_r:httpd_sys_content_t:s0:[类别]
#身份字段:角色:类型:灵敏度:[类别]

seinfo命令:

  1. -u: 列出SELinux中所有的身份(user);
  2. -r: 列出SELinux中所有的角色(role);
  3. -t: 列出SELinux中所有的类型(type);
  4. -b: 列出所有的布尔值(也就是策略中的具体规则名称);
  5. -x: 显示更多的信息;

4.1.1、身份字段

用于标识该数据被哪个身份所拥有,相当于权限中的用户身份。这个字段并没有特别的作用。常见的身份类型有以下 3 种:

  1. - root:表示安全上下文的身份是 root。
  2. - system_u:表示系统用户身份,其中“_u”代表 user。
  3. - user_u:表示与一般用户账号相关的身份,其中“_u”代表 user。

 

4.1.2、角色字段

主要用来表示此数据是进程还是文件或目录。这个字段在实际使用中也不需要修改,所以了解就好。
常见的角色有以下两种:

  • - object_r:代表该数据是文件或目录,这里的“_r”代表 role。
  • - system_r:代表该数据是进程,这里的“_r”代表 role。

 

4.1.3、类型字段

类型字段是安全上下文中最重要的字段,进程是否可以访问文件,主要就是看进程的安全上下文类型字段是否和文件的安全上下文类型字段相匹配,如果匹配则可以访问。

注意,类型字段在文件或目录的安全上下文中被称作类型(type),但是在进程的安全上下文中被称作域(domain)。也就是说,在主体(Subject)的安全上下文中,这个字段被称为域;在目标(Object)的安全上下文中,这个字段被称为类型。域和类型需要匹配(进程的类型要和文件的类型相匹配),才能正确访问。

watermark,type_d3F5LXplbmhlaQ,shadow_50,text_Q1NETiBA5Yqq5Yqb5a2m5Lmg56C05aSp6I2S,size_20,color_FFFFFF,t_70,g_se,x_16

4.1.4、灵敏度

灵敏度一般是用 s0、s1、s2 来命名的,数字代表灵敏度的分级。数值越大,代表灵敏度越高

 

 

4.2、查询安全上下文

4.2.1、查询某一进程的安全上下文

# ps auxZ | grep httpd

watermark,type_d3F5LXplbmhlaQ,shadow_50,text_Q1NETiBA5Yqq5Yqb5a2m5Lmg56C05aSp6I2S,size_20,color_FFFFFF,t_70,g_se,x_16

只要进程和文件的安全上下文匹配,该进程就可以访问该文件资源

 

4.2.2、查询某一目录或文件的安全上下文

watermark,type_d3F5LXplbmhlaQ,shadow_50,text_Q1NETiBA5Yqq5Yqb5a2m5Lmg56C05aSp6I2S,size_12,color_FFFFFF,t_70,g_se,x_16

 

4.2.3、查询默认安全上下文

 # semanage fcontext 选项

  1. -a添加默认安全上下文配置
  2. -d删除指定的默认安全上下文
  3. -m修改指定的默认安全上下文
  4. -t设定默认安全上下文的类型

 

查看上下文信息

# semanage fcontext -l

watermark,type_d3F5LXplbmhlaQ,shadow_50,text_Q1NETiBA5Yqq5Yqb5a2m5Lmg56C05aSp6I2S,size_20,color_FFFFFF,t_70,g_se,x_16

 

 

4.3、修改目录安全上下文

4.3.1、临时修改

更改了文件的属性,不会更改规则库内容

# chcon -t httpd_sys_content_t /data

watermark,type_d3F5LXplbmhlaQ,shadow_50,text_Q1NETiBA5Yqq5Yqb5a2m5Lmg56C05aSp6I2S,size_20,color_FFFFFF,t_70,g_se,x_16

 

4.3.2、永久修改(即更改默认上下文(又名规则库))

修改规则库(两种情况):

  1. 新增一个文件新规则(-a 参数)
  2. 修改文件原规则(-m 参数)

 

 # semanage fcontext 选项

  1. -a添加默认安全上下文配置
  2. -d删除指定的默认安全上下文
  3. -m修改指定的默认安全上下文
  4. -t设定默认安全上下文的类型

 

 

httpd进程修改项目存放目录,后无法访问到/www 下文件,需要修改目录安全上下文

watermark,type_d3F5LXplbmhlaQ,shadow_50,text_Q1NETiBA5Yqq5Yqb5a2m5Lmg56C05aSp6I2S,size_15,color_FFFFFF,t_70,g_se,x_16

 

watermark,type_d3F5LXplbmhlaQ,shadow_50,text_Q1NETiBA5Yqq5Yqb5a2m5Lmg56C05aSp6I2S,size_12,color_FFFFFF,t_70,g_se,x_16

 

watermark,type_d3F5LXplbmhlaQ,shadow_50,text_Q1NETiBA5Yqq5Yqb5a2m5Lmg56C05aSp6I2S,size_9,color_FFFFFF,t_70,g_se,x_16

 

这条命令会给/www/目录及目录下的所有内容设定默认安全上下文类型是httpd_sys_content_t

# semanage fcontext -a -t httpd_sys_content_t "/www(/.*)?"

watermark,type_d3F5LXplbmhlaQ,shadow_50,text_Q1NETiBA5Yqq5Yqb5a2m5Lmg56C05aSp6I2S,size_20,color_FFFFFF,t_70,g_se,x_16

但是查询发现/www/目录的安全上下文并没有进行修改,那是因为我们只修改了默认安全上下文,而没有修改目录的当前安全上下文

4.3.3、将文件或目录恢复成默认的安全上下文(拉取规则库中配置)

# restorecon -Rv /www

watermark,type_d3F5LXplbmhlaQ,shadow_50,text_Q1NETiBA5Yqq5Yqb5a2m5Lmg56C05aSp6I2S,size_11,color_FFFFFF,t_70,g_se,x_16

watermark,type_d3F5LXplbmhlaQ,shadow_50,text_Q1NETiBA5Yqq5Yqb5a2m5Lmg56C05aSp6I2S,size_9,color_FFFFFF,t_70,g_se,x_16

 

  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值