Linux学习61 企业军工级别安全策略-SELinux简介

一、回顾

  1、CentOS系统安装

  2、kickstart文件

    a、命令段

      必备命令:authconfig,bootloader,...

      可选命令:firewall,selinux,reboot,...

    b、程序包段

      %packages

      @group_name

      package

      -package

      %end

    c、脚本段

      %pre

      ...

      %end

      %post

      ...

      %end

    d、创建工具:system-config-kickstart

    e、语法检查:ksvalidator

    f、安装过程如何获取kickstart文件

      DVD: ks=cdrom:/PATH/TO/KS_FILE

      HTTP:ks=http://HOST:PORT/PATH/TO/KS_FILE

二、SELinux(生产环境中用到的不到百分之一)

  1、全称:Secure Enhanced Linux,安全加强的linux

  2、DAC:自主访问控制

  3、MAC:这不是MAC地址也不是MAC操作系统,而是叫做强制访问控制

  4、sndbox:沙箱。selinux为每一个进程都启动了一个专用的沙箱

  5、SELinux有两种工作级别

    a、strict:严格级别,每个进程都受到selinux的控制

    b、targeted:仅有限个进程受到selinux控制,只监控容易入侵的进程

  6、SELinux到底是如何工作的

    a、我们整个系统的运行可以归纳为如下安全法则模型,即主谓宾

      (1)、主语(subject):进程

      (2)、宾语(object):被进程操作的对象,比如进程或文件

         1)、文件能接受的操作:open,read,write,close,chown,chod

    b、我们可以给每个主语打上一个标签,或者给其加上一个域,让其能够只在指定范围内运行,并且可以给object打上type

  7、SELinux为每个文件提供了安全标签,也为进程提供了安全标签

    a、user:role:type(可通过ls -Z或ps -auxZ查看)

      user:SELinux的user

      role:角色

      type:类型(对进程来说就是域,对文件来说就是类型)

    b、因此现在我们一个进程所能够访问的文件除了受文件属主,属组,其它用户的访问限制之外现在又多了一个沙箱的限制,也就是说即便一个进程的属主有权限访问沙箱外的文件但是由于我们将进程圈定在沙箱内运行了因此他就没法访问到沙箱之外了。

  8、SELinux规则库

    a、规则:哪种域能访问哪种或哪些种类内的文件

      我们一个进程要去访问一个文件,他首先会去看这个文件的属主和属主等权限是否符合,如果不符合然后他就会去检查selinux的规则库,看这里面是否明确有授权,即这个进程所述的域是否授权了访问这个文件所属的类型,如果有授权访问,于是进程就能访问这个文件了,如果没有那么访问就会被selinux安全策略给拒绝。

三、配置SELinux

  1、SELinux是否启用

  2、给文件重新打标

  3、设定某些布尔型特性

  4、SELinux的状态

    a、enforcing:强制,每个受限的进程都必然受限

    b、permissive:启用,每个受限的进程违规操作不会被禁止,但会被记录于审计日志

    c、disabled:关闭

  5、相关命令

    a、getenforce:获取selinux当前状态

    b、setenforce 0|1

      (1)、0:设置为permissive

      (2)、1:设置为enforcing

    c、此设定仅当前状态有效,重启系统后无效

    d、配置文件:/etc/sysconfig/selinux,/etc/selinux/config

      SELINUX={disabled|enforcing|permissive}

    e、给文件重新打标

      chcon [OPTION]... CONTEXT FILE...
      chcon [OPTION]... [-u USER] [-r ROLE] [-l RANGE] [-t TYPE] FILE...
      chcon [OPTION]... --reference=RFILE FILE...

      

      -R:递归打标

    f、还原文件的默认标签

      restorecon  [-R] /path/to/somewhere

    g、布尔型规则

      a、getsebool

      b、setsebool

1:25:45

原文地址:https://www.cnblogs.com/Presley-lpc/p/12610615.html

时间: 2024-08-11 09:42:03

Linux学习61 企业军工级别安全策略-SELinux简介的相关文章

【我的Linux,我做主!】企业军工级安全策略--SELinux实战

(一)了解SELinux是如何工作的SELinux(Security-Enhanced Linux)是美国国家安全局(NSA)对于强制访问控制的实现,是Linux历史上最杰出的新安全子系统.NSA是在Linux社区的帮助下开发了一种访问控制体系,在这种访问控制体系的限制下,进程只能访问那些在他的任务中所需要文件.SELinux默认安装在Fedora和Red Hat Enterprise Linux上,也可以作为其他发行版上容易安装的包得到.SELinux是2.6版本的Linux内核中提供的强制访

Linux学习笔记——bash命令及shell变量简介

bash 及其特性 shell  外壳 GUI :Gnome  KDE  xface CLI :shell  csh  ksh  bash 程序,进程 进程:每个进程看来,当前主机上只存在内核和当前进程 进程是程序的副本,进程是程序执行实例 用户的工作环境: bash: #   root用户 $   普通用户 shell  ,子shell bash : 1.命令历史 2.管道,重定向 3.命令行编辑 4.命令别名 5.命令行展开 6.文件名通配 7.变量 8.编程 命令行使用技巧: Ctrl +

Linux学习之Vim/Vi使用(十三)

Linux学习之Vim/Vi使用 Vim/Vi简介 Vim/Vi工作模式 Vim/Vi基本使用 Vim/Vi应用技巧 Vim/Vi简介 Vim/Vi是一个功能强大的全屏幕文本编辑器,是Linux/UNIX上最常用的文本编辑器,它的作用是建立.编辑.显示文本文件. Linux下的编辑器最常用的就是vim或者vi文本编辑.vi 和vim 编辑器的区别是vim是vi的改进版本,在vi 编辑器的基础上上扩展了很多实用的功能.?大多数的linux/unix 发行版本中都使用 vim 代替了原来的 vi 文

Linux学习路线+资源

Linux学习路线,个人收集分享 学习路线图 资源链接(蓝色下划线字体对应相应资源链接) Linux 基础 Linux 基础 Linux安装专题教程 Linux中文环境 Linux-从菜鸟到高手 鸟哥的Linux私房菜 基础学习篇(第二版) Ubuntu Linux入门到精通 Linux标准教程 Linux指令速查手册 Linux标准学习教程 Red Hat Linux 指南:基础与系统管理篇 Red Hat Fedora Core Linux 基础应用与配置管理       Linux 系统管

xiaoluo同志Linux学习之CentOS6.4

小罗同志写的不错,弄个列表过来啊 Linux学习之CentOS(三十六)--FTP服务原理及vsfptd的安装.配置 xiaoluo501395377 2013-06-09 01:04 阅读:5665 评论:8 Linux学习之CentOS(三十五)--配置域从DNS服务器以及缓存DNS服务器 xiaoluo501395377 2013-06-07 00:09 阅读:6348 评论:1 Linux学习之CentOS(三十四)--配置域主DNS服务器 xiaoluo501395377 2013-0

linux学习之路之ACL的使用和查看系统上登录的用户的命令使用

我们知道文件的访问权限的是根据文件的属主.属组和其他用户这三种来设置,而ACL是提供这三种之外的更加细部的权限设定.ACL可以对单一用户和目录及文件来设置权限,这对于需要特殊的权限来说很有帮助.在之前谈到的SUID和SGID这些特殊权限,不过这些特殊权限和ACL相比,ACL可以对特定的用户来设定更加细部的权限,而SUID和SGID则是对于多个用户或者一组用户来说比较合适. 在谈ACL的使用之前,我们先一起来谈谈用户访问文件时的顺序是如何进行的?在这里暂时不讨论有关SElinux的使用. 在没有使

Linux学习技巧

Linux学习技巧 初学者可以自己安装虚拟机,然后把linux常用命令例如cd.ls.chmod.useradd.vi等等多练习几十遍,把自己敲打命令的熟练程度提升上来.然后根据文档搭建Linux下常见的各种服务(DHCP.SAMBA.DNS.Apache.Mysql等),遇到问题后可以在google搜索,搜索的时候多看几篇文章,综合最好的文章来解决问题.能够熟练的搭建服务后,理解每个服务的完整配置和优化,可以拓展思维.例如LAMP,我们一般是把所有服务放在一台机器上,如果分开多台该如何部署呢?

linux学习第六周总结

linux学习第六周总结 本周共学习4项内容,简单总结一下 shell脚本编程进阶 系统启动和内核管理 selinux 文本处理三剑客之awk 一.shell脚本进阶 编程中的逻辑处理: 顺序执行选择执行循环执行 循环执行 将某代码段重复运行多次重复运行多少次循环次数事先已知循环次数事先未知有进入条件和退出条件r, while, until for循环for 变量名 in 列表;do循环体done执行机制:依次将列表中的元素赋值给"变量名"; 每次赋值后即执行一循环体; 直到列表中的元

linux学习第八周总结

linux学习第八周总结 本周学习了两个服务,DNS和ansible 由于这些服务很复杂,我也只能是到达刚了解或者是刚刚入门的程度,所以只说一些简单基本的东西,简单总结. 一.DNS服务 1.简介 域名系统(英文:DomainNameSystem,缩写:DNS)是互联网的一项服务.它作为将域名和IP地址相互映射的一个分布式数据库,能够使人更方便地访问互联网.DNS使用TCP和UDP端口53.当前,对于每一级域名长度的限制是63个字符,域名总长度则不能超过253个字符. 记录类型 主条目:域名服务