SELinux

软件的安全性

  • 提高软件的安全性

    • 选择安全系数较高的系统
      提高现有系统的安全性
  • 计算机的安全等级
    D:最低的安全级别,提供最少的安全防护,系统访问无限制。DOS
    C:访问控制的权限,能够实现可控的安全防护,个人账户管理,审计和资源隔离 Unix Linux windowNT
    B:支持多级安全,通过硬件对安全数据进行保护
    A:最高级别,提供验证设计,要求数据从生产到传输都能够实现状态跟踪

访问控制:

  • 基本要素:

    主体:主动的实体,用户、服务、进程等
    客体: 被动的实体,包括数据、文件等
    规则:主体对客体访问的策略集合

  • 基本类型:

    • DAC访问控制:自主访问控制
      通过权限列表(访问控制列表)来限定特定主体对特定客体可以执行什么操作。

      • 特点:
        1、每个主体都拥有一个用户名或组来获取操作权限
        2、每个客体都拥有一个限定主体对其访问的访问控制列表
        3、访问时,基于访问控制列表检查主体用户标示以实现授权或拒绝。
    • MAC访问控制:强制访问控制(selinux)

      • 特点:
        1、主体被分配一个安全等级
        2、客体被分配一个安全等级
        3、访问时,对主体和客体的安全级别进行对比,最终获得授权或拒绝。

selinux

  • 格式:subject operation object
    subject: 进程
    object: 进程 文件
    operation:操作
    文件:open、close、read、write、chown、chmod

    • 生效条件:
      1、SELinux是否生效,取决于subject和object是否处于同一个操作空间
      2、操作类型必须满足条件
  • SELinux为每个文件提供了安全标签,也为进程提供了安全标签;

    • 查看标签:
      查看文件安全标签(安全上下文):ls -lZ
      查看进程安全标签:ps auxZ
    • user:role:type

      • user:SELinu的user
        role:角色
        type:文件称为类型,进程称为域
  • SELinux规则库:
    规则:哪种域能访问哪种或哪些种类型内文件;

  • SELinux的工作模式:
    strict(严格模式):每个进程都会受到Selinux的控制
    targeted(宽松模式):仅对部分进程启用selinux的控制

  • 配置SELinux:

    • SELinux是否启用;
      给文件重新打标签;
      设定某些布型特性;
    • selinux的状态:

      • enforcing:强制,每个受限的进程都必然受限;
        permissive:警告级别,不阻止访问,但会记录日志;日志文件:/var/log/audit/audit.log
        disabled:禁用

      • 临时启动:仅当前有效

        • getenforce 查看当前SELinux状态
        • setenforce 0|1

          • 0:设置SELinux为permissive
            1:设置SELinux为enforcing
      • 配置文件:/etc/sysconfig/selinux /etc/selinux/config
        永久有效,修改配置文件:SELinux={disabled | permissive | enforcing}

    • 修改安全标签:文件默认为所在目录的标签;

      • chcon 修改安全标签
        chcon [OPTION]… [-u USER] [-r ROLE] [-t TYPE] FILE…
        -u 用户
        -r 角色
        -t 类型(文件称为类型,进程称为域)
        -R 递归打标;

      • 还原文件的默认标签
        restorecon [-R] /path/to/somewhere

    • 修改布尔值
      添加/删除进程或服务本身开启的功能模块

      • 查看布尔值:getsebool [-a] [boolean]
        -a :查看所有布尔值

      • 修改布尔值:setsebool [-P] boolean [ on/off | 1/0 ]
        -P :将修改结果保存进本地磁盘

原创文章,作者:s,如若转载,请注明出处:http://www.178linux.com/76534

(0)
ss
上一篇 2017-05-21
下一篇 2017-05-21

相关推荐

  • RAID及LVM的实现

    RAID及LVM的实现 第一部分 : RAID介绍及创建 1、mdadm工具 2、创建RAID 5及删除RAID 第二部分 : LVM的实现 1、基本命令 2、LVM创建及扩容和缩减 3、LVM快照 RAID介绍及创建 1、mdadm工具 mdadm [mode] <raid device> [options] <任意块设备> [mo…

    Linux干货 2017-08-22
  • 8.5文本处理工具

    取本机ip地址 利用head命令取行首两行,tail命令取行尾一行, ifconfig |head -2 |tail -1   利用tr -s命令替换空格为“:”,并合并重复的“:”。利用cut -d:-f3命令,保留以“:”为分割符的第三部分   ifconfig |head -2 |tail -1 |tr -s "…

    Linux干货 2016-08-08
  • bash 面试题

    1、设计一个shell脚本,在/userdata目录下建立10个目录,即user1~user50,并设置每个目录的权限,其中其他用户的权限为:读;文件所有者的权限为:读、写、执行;文件所有者所在组的权限为:读、执行 [root@node1 script]# cat mkuserdata.sh #!/bin/bash # author jin.ren # da…

    Linux干货 2015-07-03
  • 马哥教育网络班22期第二周课程练习1-未闻花名

    1、Linux管理文件和目录的命令 命令 功能 命令 功能 pwd 显示当前目录 ls 查看目录下的内容 cd 改变所在目录 cat 显示文件的内容 grep 在文件中查找某字符 cp 复制文件 touch 创建文件 mv 移动文件 rm 删除文件 rmdir 删除目录 1.1 pwd命令 该命令的英文解释为print working directory(打…

    Linux干货 2016-08-29
  • LVS集群类型

     lvs:Linux Virtual Server         l4:四层路由、四层交换          根据请求报文的目标IP和目标PORT将其调度转发至后端的某主机;      IPTABLES:  …

    Linux干货 2017-01-10
  • 文件查找命令(find、locate)

    在文件系统上查找符合条件的文件: 实现工具:locate, find locate: 依赖于事先构建好的索引库; 系统自动实现(周期性任务); 手动更新数据库(updatedb); 工作特性: 查找速度快; 模糊查找; 非实时查找; locate [OPTION]… PATTERN… -b:只匹配路径中的基名; -c:统计出共有多少个符合条件的文件;…

    Linux干货 2016-11-06