Linux之SELinux的开启、关闭。
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的开启、关闭。的更多相关文章
- Linux服务管理(开启关闭防火墙)
1.firewalld的基本使用 启动: systemctl start firewalld 关闭: systemctl stop firewalld 查看状态: systemctl status f ...
- Linux下开启关闭SeLinux
SELinux (Security-Enhanced Linux) in Fedora is an implementation of mandatory access control in the ...
- Linux系统默认服务建议开启关闭说明列表
服务名称 功能简介 建议 acpid 电源管理接口.如果是笔记本用户建议开启,可以监听内核层的相关电源事件. 开启 anacron 系统的定时任务程序.cron的一个子系统,如果定时任务错过了执行时间 ...
- linux下查看 SELinux状态及关闭SELinux
SELinux全称为安全增强式 Security-Enhanced Linux(SELinux),是一个在内核中实践的强制存取控制(MAC)安全性机制.SELinux 首先在 CentOS 4 出现, ...
- linux下防火墙与SELinux状态与关闭
linux下防火墙与SELinux状态与关闭 在使用ftp命令以及wget命令测试两台linux机器之间ftp下载是否正常,虽然关闭了防火墙,但是一直还是提示以下错误 然来还需要将SELinux 设置 ...
- Linux防火墙(Iptables)的开启与关闭
Linux防火墙(iptables)的开启与关闭 Linux中的防火墙主要是对iptables的设置和管理. 1. Linux防火墙(Iptables)重启系统生效 开启: chkconfig ipt ...
- linux 6 查看防火墙状态及开启关闭命令
linux 6 查看防火墙状态及开启关闭命令 https://blog.csdn.net/lv_shijun/article/details/52453882 存在以下两种方式: 一.service方 ...
- Linux下开启关闭防火墙
一.Linux下开启/关闭防火墙命令 1) 永久性生效,重启后不会复原 开启: chkconfig iptables on 关闭: chkconfig iptables off 2) 即时生效,重 ...
- Linux防火墙开启关闭查询
1.centos7防火墙 命令含义: –zone #作用域 –add-port=80/tcp #添加端口,格式为:端口/通讯协议 –permanent #永久生效,没有此参数重启后失效 服务与端口的启 ...
- SELinux一键开启与禁用脚本
SELinux是美国国家安全局(NSA)对于强制访问控制的实现,是 Linux历史上最杰出的新安全子系统.但是SELinux的并不能与众多服务很好的兼容,有些人会关闭SELinux一了百了.在日常的运 ...
随机推荐
- Python开发环境的构建:使用Anaconda与Pycharm
Anaconda是一个科学计算环境,当在电脑上安装好Anaconda3以后,就相当于安装好了Python,还有一些常用的库,如numpy,scrip,matplotlib等库. (如果你这里没有安装a ...
- 在Eclipse配置并编译worldwind java2.1.0源码,选中Src目录下gov.nasa.worldwindx.examples包下ApplicationTemplate.java类文件run时提示“javax.xml.parsers.DocumentBuilderFactory.setFeature(Ljava/lang/String;Z)V”异常的解决办法
问题现象: 在Eclipse配置并编译worldwind java2.1.0源码,选中Src目录下gov.nasa.worldwindx.examples包下ApplicationTemplate.j ...
- IM跨平台技术学习(四):蘑菇街基于Electron开发IM客户端的技术实践
本文由蘑菇街前端技术团队分享,原题"Electron 从零到一",有修订和改动. 1.引言 本系列文章的前面几篇主要是从Electron技术本身进行了讨论(包括:第1篇初步了解El ...
- 阿里云产品之数据中台架构-copy
1. 场景描述 客户打包买了很多阿里云的产品,但是阿里云不负责实施,基于阿里云产品与客户需求,拟采用的数据中台架构,有类似需求的,可以参考下,拿走不谢! 2. 解决方案 阿里产品大数据架构图: 从下到 ...
- linux:搭建Drupal
了解 Drupal 是使用 PHP 语言编写的开源内容管理框架(CMF),由内容管理系统(CMS)及 PHP 开发框架(Framework)共同构成.Drupal 具备强大的定制化开发能力,您可使用 ...
- Android平台从上到下,无需ROOT/解锁/刷机,应用级拦截框架的最后一环,SVC系统调用拦截。
Android平台从上到下,无需ROOT/解锁/刷机,应用级拦截框架的最后一环 -- SVC系统调用拦截. ☞ Github: https://www.github.com/iofomo/abyss ...
- 微信小程序slot(一)
在我们封装组件的时候,有些时候,我们需要使用类似于vue中的slot插槽: 小程序借鉴了这个优秀的想法: 在小程序中,组件模板中可以提供一个 <slot> 节点,用于承载组件引用时提供的子 ...
- CBR云备份与恢复管控简介
本文分享自天翼云开发者社区<CBR云备份与恢复管控简介>,作者:c****n 1.CBR云备份与恢复介绍 CBR (Cloud Backup & Restore)是一般云厂商提供的 ...
- 操作系统发展历史与Linux
操作系统发展历史与Linux 随着计算机技术的迅猛发展,操作系统作为计算机系统的核心软件,经历了从单一到多样.从封闭到开放的演变过程.从最初的批处理系统,到分时操作系统的兴起,再到个人计算机操作系统的 ...
- Q:plsql中文显示??处理
1.查询数据库字符集select userenv('language') from dual; 2.修改NLS_LANG环境变量:将NLS_LANG环境变量设置为正确的字符集 windows设置系统环 ...