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)
上一篇 2017-05-21 12:29
下一篇 2017-05-21 12:33

相关推荐

  • 数据分析≠Hadoop+NoSQL,不妨先看完善现有技术的10条捷径

    让业务搭乘大数据技术确实是件非常有吸引力的事情,而Apache Hadoop让这个诱惑来的更加的猛烈。Hadoop是个大规模可扩展数据存储平台,构成了大多数大数据项目基础。Hadoop是强大的,然而却需要公司投入大量的学习精力及其它的资源。 如果得到正确的应用,Hadoop确实能从根本上提升你公司的业务,然而这条Hadoop的应用之路却充满了荆棘。另一个方面…

    Linux干货 2015-02-25
  • Linux的发行版和它们区别跟联系

    linux的主要发行版有Debian,Slackware,RedHat三个大系列    Debian 最早由Ian Murdock于1993年创建。可以算是迄今为止,最遵循GNU规范的Linux系统。Debian最具特色的是apt-get / dpkg包管理方式,其实Redhat的YUM也是在模仿Debian的APT方式,但在二进制文件发…

    Linux干货 2017-07-02
  • N21沉舟15周作业

    1、总结sed和awk的详细用法; 2、删除/boot/grub/grub.conf文件中所有行的行首的空白字符; #  sed 's@^[[:space:]]@@' /boot/grub/grub.conf 3、删除/etc/fstab文件中所有以#开头,后跟至少一个空白字符的行的行首的#和空白字…

    Linux干货 2016-11-14
  • 任务计划

                          Linux任务计划 一、任务计划     (1)未来的某一个时间点执行一次某任务:at、batch     (2)周期性运行某…

    2017-05-14
  • 硬链接和软链接的区别

    硬链接和软链接在文件系统实现上的区别决定了两者之间功能上的不同,也就是说硬链接和软链在文件系统上两者实现的方式不同,让其各自具有不同的功能和特色,也决定了各自的优点和缺点。接下同文件系统上创建硬链接和软链接看各自的特点。 一文件系统上创建硬链接 下面命令是在文件系统上创建一个硬链接: ~]# ln test /testdir/t…

    Linux干货 2016-10-29
  • Linux 压缩、解压缩和打包工具

        前言:你是否曾经因为某个文件占用空间较大,而空间紧缺的U盘无法存放此文件。你是否曾经因为软件里有太多文件而不方便复制和携带。你是否曾因需要备份太过零散而头疼。那么基于“文件压缩和打包”的技术因此出现。下面介绍下Linux下关于压缩、解压缩和打包的工具及使用。 一、相关术语的原理和意义   &…

    Linux干货 2015-07-15