• Centos 7/8 SELinux


    SELinux介绍

      1.端口防护

      2.文件防护

      3.服务防护

      4.相关命令 sestatus getenforce setenforce semanage sesearch setsebool getsebool

      4.selinux性能影响

      

    selinux启用或关闭

      临时开启或关闭 -  立即生效

        [root@localhost ~]# setenforce
        usage: setenforce [ Enforcing | Permissive | 1 | 0 ]

      永久开启或关闭 - 重启生效

        修改SELinux配置文件 /etc/selinux/config

    selinux状态查看

      [root@centos ~]# sestatus -v
      SELinux status: enabled
      SELinuxfs mount: /sys/fs/selinux
      SELinux root directory: /etc/selinux
      Loaded policy name: targeted
      Current mode: enforcing
      Mode from config file: enforcing
      Policy MLS status: enabled
      Policy deny_unknown status: allowed
      Memory protection checking: actual (secure)
      Max kernel policy version: 31

    selinux端口控制

       如果没有semanage命令,则需要手动安装

      # yum provides semanage 
      # yum -y install policycoreutils-python.x86_64

      查看默认开放端口

      # semanage port -l | grep http_port_t
      http_port_t                    tcp      80, 81, 443, 488, 8008, 8009, 8443, 9000
    

      示例:新增非标准HTTP端口

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

     

    selinux服务控制

      setsebool命令是用来修改SElinux策略内各项规则的布尔值。setsebool命令和getsebool命令是SELinux修改和查询布尔值的一套工具组。

    selinux文件安全上下文

      安全上下文是一组和进程或对象有关的安全属性,每一个进程或对象都会记录一条安全上下文,

    将其作为SELinux判断进程(或服务)是否能够读取对象的依据。

      USER字段

        USER字段用来记录登录系统后所属的SELinux身份。

      • user_u        真实用户类型的使用者
      • system_u        系统账户类型的使用者
      • root            超级用户的使用者
      • unconfiged_u   未设置类型

      ROLE字段

        ROLE字段用来存储进程、领域或对象所扮演的角色信息。

      • staff_r       内部的用户角色
      • user_r       其他或不分类的用户角色
      • object_r    文件、设备或其他无法分类的角色
      • secadm_r  允许做安全管理的用户角色

      TYPE字段

        TYPE字段用来定义该对象的类别

      • default_t      默认类别
      • httpd_t        作为HTTP服务器文件的类别
      • java_exec_t  JAVA相关的执行文件

      LEVEL和CATEGORY字段

        用来定义其隶属的安全等级和分类。LEVEL字段定义为s0~S15,共16个,s0机密等级最低,s15机密等级最高。

        CATEGORY字段定义为c0~c1023,共1024个。

     

      查看安全上下文

        id -Z  查看当前用户安全上下文

        pa -aux -Z  查看当前进程安全上下文

        ls -Z /var/www/  查看指定文件安全上下文

      修改安全上下文

        chcon -t default_t /var/www/index.html 设置文件或目录安全上下文

          -R, --recursive:递归处理所有的文件及子目录。

          -v, --verbose:为处理的所有文件显示诊断信息。

          -u, --user=用户:设置指定用户的目标安全环境。

          -r, --role=角色:设置指定角色的目标安全环境。

          -t, --type=类型:设置指定类型的目标安全环境。

          -l, --range=范围:设置指定范围的目标安全环境。

        

        semanage fcontext -a -t default_t /var/www/index.html 设置文件或目录安全上下文,可以使用正则进行文件匹配,建议使用 fcontext

            

        restorecon -Rv /var/www  恢复默认目录下所有文件安全上下文

        

  • 相关阅读:
    C# GDI 绘图打印
    使用批处理,WINRAR 创建自解压文件
    c# 开放/封闭原则
    php 盖尔-沙普利算法
    c# 遍历 Mysql 所有表所有列,查找目标数据
    C# 与 C++ 互操作(C# 调用 C++ 的动态链接库)
    c# WPF DataGrid 获取选中单元格信息
    c# WPF SVG 文件的引用(SharpVectors)
    c# 使用网站的身份验证及 Cookie 的获取与使用
    c# HttpListener 使用
  • 原文地址:https://www.cnblogs.com/vincenshen/p/12490654.html
Copyright © 2020-2023  润新知