SELinux简介

SELinux 是Security-Enhanced Linux的简写,意指安全增强的linux。它不是用来防火墙设置的。但它对Linux系统的安全很有用。Linux内核(Kernel)从2.6就有了SELinux。

SELinux是内置在许多GNU / Linux发行版中的主要强制访问控制(MAC)机制。SELinux最初是由犹他州大学Flux团队和美国国防部开发的Flux高级安全内核(FLASK)。美国国家安全局加强了这一发展,并将其作为开源软件发布。SELinux的历史可以在Flux和NSA网站上找到。

官方资料

什么是SElinux?

  • SELinux是Linux的安全增强,它允许用户和管理员对访问控制进行更多的控制。
  • 访问权限可以限制在哪些用户和应用程序可以访问哪些资源这样的变量上(由变量控制访问权限)。这些资源可以采用文件的形式。用户和用户运行的应用程序可以修改标准的Linux访问控制,例如文件模式(-rwxr-xr-x)。相反,SELinux访问控制由加载在系统上的策略决定,粗心的用户或行为不当的应用程序可能不会更改该策略。
  • SELinux还为访问控制添加了更细的粒度。例如,SELinux不只是能够指定谁可以读、写或执行文件,而是允许您指定谁可以取消链接、只追加、移动文件等等。SELinux还允许您指定对除文件以外的许多资源的访问,例如网络资源和进程间通信(IPC)。

    Security-Enhanced Linux的缩写,是一种非常安全的linux模式。基本上用户得不到什么权限在这个系统下面。不过你可以在这个系统下面写一些配置文件来管理这些用户可以做什么或者不能干什么。

SELinux 的作用及权限管理机制:

SELinux 主要作用就是最大限度地减小系统中服务进程可访问的资源(最小权限原则)。

SELinux是做什么的?

SELinux控制应用程序和资源之间的访问。通过使用强制安全策略,SELinux强制实现系统的安全目标,而不管应用程序是否行为不当或用户是否粗心。SELinux能够实现广泛的安全目标,从简单的沙箱应用程序到锁定面向网络的守护进程和限制用户只使用他们需要的资源。

如何知道SELinux是否开启?

Red Hat Enterprise Linux或Fedora默认开启。你可以运行getenforce来查看它是否在积极地执行策略:

[root@localhost /]# getenforce
Enforcing
[root@localhost /]#

enforce 实施;强制;加强

如果输出显示强制执行(enforcing),那么您的系统将受到SELinux的保护。如果它说启用了许可的SELinux(permissive),但只是记录失败的访问,而不是拒绝它们。如果它说禁用(Disabled)
,那么SELinux在您的系统上没有启用。

SELinux 三种工作模式:

  • enforcing:强制模式。违反 SELinux 规则的行为将被阻止并记录到日志中。
  • permissive:宽容模式。违反 SELinux 规则的行为只会记录到日志中。一般为调试用。
  • disabled:关闭 SELinux。

    SELinux 工作模式可以在 /etc/selinux/config 中设定。

    如果想从 disabled 切换到 enforcing 或者 permissive 的话,需要重启系统。反过来也一样。

    enforcing 和 permissive 模式可以通过 setenforce 1|0 命令快速切换。

    需要注意的是,如果系统已经在关闭 SELinux 的状态下运行了一段时间,在打开 SELinux 之后的第一次重启速度可能会比较慢。因为系统必须为磁盘中的文件创建安全上下文。

    SELinux 日志的记录需要借助 auditd.service 这个服务,请不要禁用它。

临时关闭SElinux

[root@localhost /]# getenforce  //查看Selinux状态
Enforcing
[root@localhost /]# setenforce 0 //临时关闭Selinux
[root@localhost /]# getenforce
Permissive

永久关闭SElinux

方法一:

[root@localhost /]# vi /etc/selinux/config

将文件中的SELINUX="" 改为 disabled ,然后重启。

......
SELINUX=enforcing  //修改此处为disabled
SELINUXTYPE=targeted
......

方法二:

sed -i 's/^SELINUX=enforcing/SELINUX=disabled/g' /etc/selinux/config

注意sed命令选项特点

  • -i The default operation mode is to break symbolic and hard links. 会破坏软链接和硬链接
  • -c will avoid breaking links (symbolic or hard). 不会破坏软链接和硬链接
  • --follow-symlinks follow symlinks when processing in place; hard links will still be broken. 这个保护软链接,但是会破坏硬链接。

    所以使用sed -我的s / ^ SELINUX =执行/ SELINUX =禁用/ g /etc/selinux/config的修改/ etc
    / sysconfig / SELINUX文件后。它已经不在是/ etc / selinux /
    config的链接文件,从而变成了一个普通文件。

如何获取SElinux?

Distribution(发行版) How to get it
Red Hat Enterprise Linux (4+) Default
Fedora (2+) Default
Ubuntu Hardened Ubuntu
Debian add-on
Gentoo Hardened Gentoo

为什么SElinux会存在?

您的发行版或供应商可能已经选择默认启用SELinux。他们这样做是因为他们希望在他们发布的Linux版本上增加安全保护。为了创建安全策略来保护您的系统免受入侵,同时允许用户按照他们正常的方式操作,已经付出了大量的努力。在这些系统上启用SELinux是一个好主意,因为它可以保护您免受已知漏洞的伤害,同时平衡您的系统使用需求。

The SELinux Notebook

SELinux笔记本演示了SELinux的一些功能。

主要部分是:

  • SELinux的概述
  • 核心组件
  • 强制访问控制(MAC)
  • SELinux用户
  • 基于角色的访问控制
  • 安全上下文
  • 对象
  • 计算安全上下文
  • 计算访问决策
  • SELinux策略的类型
  • 允许和强制模式
  • Linux安全模块和SELinux
  • SELinux用户空间库
  • SELinux网络支持
  • SELinux虚拟机支持
  • SELinux - windows支持
  • 沙箱服务
  • SELinux的配置文件
  • 全局配置文件
  • ......

Linux之SELinux的开启、关闭。的更多相关文章

  1. Linux服务管理(开启关闭防火墙)

    1.firewalld的基本使用 启动: systemctl start firewalld 关闭: systemctl stop firewalld 查看状态: systemctl status f ...

  2. Linux下开启关闭SeLinux

    SELinux (Security-Enhanced Linux) in Fedora is an implementation of mandatory access control in the ...

  3. Linux系统默认服务建议开启关闭说明列表

    服务名称 功能简介 建议 acpid 电源管理接口.如果是笔记本用户建议开启,可以监听内核层的相关电源事件. 开启 anacron 系统的定时任务程序.cron的一个子系统,如果定时任务错过了执行时间 ...

  4. linux下查看 SELinux状态及关闭SELinux

    SELinux全称为安全增强式 Security-Enhanced Linux(SELinux),是一个在内核中实践的强制存取控制(MAC)安全性机制.SELinux 首先在 CentOS 4 出现, ...

  5. linux下防火墙与SELinux状态与关闭

    linux下防火墙与SELinux状态与关闭 在使用ftp命令以及wget命令测试两台linux机器之间ftp下载是否正常,虽然关闭了防火墙,但是一直还是提示以下错误 然来还需要将SELinux 设置 ...

  6. Linux防火墙(Iptables)的开启与关闭

    Linux防火墙(iptables)的开启与关闭 Linux中的防火墙主要是对iptables的设置和管理. 1. Linux防火墙(Iptables)重启系统生效 开启: chkconfig ipt ...

  7. linux 6 查看防火墙状态及开启关闭命令

    linux 6 查看防火墙状态及开启关闭命令 https://blog.csdn.net/lv_shijun/article/details/52453882 存在以下两种方式: 一.service方 ...

  8. Linux下开启关闭防火墙

    一.Linux下开启/关闭防火墙命令 1) 永久性生效,重启后不会复原 开启: chkconfig iptables on 关闭: chkconfig iptables off   2) 即时生效,重 ...

  9. Linux防火墙开启关闭查询

    1.centos7防火墙 命令含义: –zone #作用域 –add-port=80/tcp #添加端口,格式为:端口/通讯协议 –permanent #永久生效,没有此参数重启后失效 服务与端口的启 ...

  10. SELinux一键开启与禁用脚本

    SELinux是美国国家安全局(NSA)对于强制访问控制的实现,是 Linux历史上最杰出的新安全子系统.但是SELinux的并不能与众多服务很好的兼容,有些人会关闭SELinux一了百了.在日常的运 ...

随机推荐

  1. [转]如何将 PDF 批量导入到iPhone或iPad?| 技能Get!

    电脑上没看完的 PDF,想在移动端继续阅读? 问题来了!如何随身携带大量PDF文档?如何将电脑上的 PDF 文档快速导入到你的 iPhone 和 iPad 呢?链接数据线已经 out 了,现在告诉大家 ...

  2. 自动化测试工具-Katalon Studio

              Katalon 代码片段: 1)if(WebUI.verifyTextPresent(findTestObject('Page_Skin/p_Are you ok?'),10,Fa ...

  3. Solution -「AGC 020F」Arcs on a Circle

    \(\mathscr{Description}\)   Link.   在一个周长为 \(c\) 的圆周上放置长度分别为 \(l_1,l_2,\cdots,l_n\) 的弧,每条弧的位置独立均匀随机. ...

  4. LOL(英雄联盟) API 接口

    /*LOL(英雄联盟) API 接口 By wgscd /*LOL(英雄联盟) API 接口 By wgscd QQ:1009374598 */ GET https://127.0.0.1:58182 ...

  5. cpa-财务成本管理

    1.财务管理基本原理 2.财务报表分析和财务预测 3.价值评估基础 4.资本成本 5.投资项目资本预算 6.债券.股票价值评估 7.期权价值评估 8.企业价值评估 9.资本结构 10.长期筹资 11. ...

  6. javaIO类--File类

    -------------------- File类 是对文件系统中文件以及目录(文件夹)进行封装的对象,可以通过面向对象的思想来操作文件和目录(文件夹).File类保存文件或目录的各种元素的信息,包 ...

  7. window service 2012 R2 0x8007000d

    今天遇到了一个很无语的问题,我的一个.net core 项目,部署到IIS上之后,启动网站,报500.19的错误.尝试了网上N种办法始终没办法解决,最后重装了我的.net core,解决了. 第一步: ...

  8. 什么是 SNI?

    参考: 链接1   链接2 介绍 是什么:SNI(Server Name Indication)是 TLS 的扩展,这允许在握手过程开始时通过客户端告诉它正在连接的服务器的主机名称. 作用:用来解决一 ...

  9. DC/DC layout建议

    DCDC电路的重要性不言而喻,不合理的PCB Layout会造成芯片性能变差,甚至损坏芯片.如:线性度下降.带载能力下降.工作不稳定.EMI辐射增加.输出噪声增加等. 环路面积最小原则 DC/DC电路 ...

  10. dp 常见套路总结

    dp 里存的东西值域不大的时候,考虑把状态中某一维和 dp 里存的东西交换,进行 dp. 连续段 dp 时,考虑把连续段化为对每个元素考虑接上一个元素. dp 里的值可能存在某个上界,超过这个值一定不 ...