Selinux讲解
- 手动开启/关闭/查询 SELINUX状态的方法在Limx操作系统运行过程中无法使用命令停用 SELINUX,可以在内核启动参数或使用修改配置文件的方式去关闭 SELINUX安全机制。若只是要将 SELINUX安全机制转为“警告模式Warn/Permissive Enforcing)”,则可利用如下命令进行。
l setenforce1:将 SELINUX设定成启用模式。
l setenforce0:将 SELINUX设定成警告模式.
l sestatus:查询系统目前的 SELINUX状态
- 为了设定方使, Selinux中内建了许多布尔值 boolean I的参数,可以通过修改这些参数接来变更一些 Selinux的设定。 SELINUX布尔值 booleans属性的操作,常用的命令有如下两Getsebool:取得目前系统上 Selinux booleans属性的状态格式: getsebool [-al[boolean)getsebool-a可取得所有 booleans的属性状态。setsebool:立即变更 Selinux booleans的属性。格式: setsebool [-P] boolean value I boll= all bool-val2FP]:若没有附加-P选项,只会变更目前系统 Selinux booleans属性,但并没有去更新设定文件的状态,下次重新开机,还是会恢复到原来的属性。若需要永久变更这个属性,必须多选项便将设定文件一并变更ol-phttpdenableho说明:永久开启httpdenablehomedirs属性,让htpd可以读取每个用户的家目录下的个网页若需要单独关闭某个服务的 SELINUX机制,可直接使用命令 setsebool -P Iprogram名称应用实例如下disable_trans=1即可。例如,若想要关闭 dhcpd的 Selinux检查机制,可直接使用如下命令:setsebool -P dhcp _disable_ trans=1。然后重新启动。
Targeted Policy的上下文 contexts属性设定
上下文 contexts属性用来控制系统中每个用户、进程、文件案及目录的 SELINUX权限它可用来设定每个user、 process、文件及目的属性,可针对某个 process I的某个行为作严格的读写限制:也就是说,文件案可以针对某个身份(ur)、某个程序( program)的某个行为开放读写权限,可以做到最细致的权限调整,无须担心程序溢位( overflow)问题,从面造成文件案数据外泄或遭帘改。
(1) SELINUX的上下文格式如下:
·user_u: system_r: unconfined_t上述字符使用:分隔,第一个字段为用户{user},第二个字段为角色{rule},第三个字段为类型{type}。其他字段可以忽略
(2)安全相关上下文 contexts属性的操作命令较多,简单介绍几个常用命令如下:ls-Z和ps-Z命令用来査询上下文,-Z(大写)参数专为 SELINUX而增加。应用实例如下。
·ls-alZ:查看文件案目录的 contexts属性。id-Z:查看目前使用者身份的 contexts属性。如:
·id –Z
User_u: system_r: unconfined_t: systemlow-systemhigh上下文属性为{user}:{tule}: {type}:{ FMCS/MLS translations}
·ps-eZ:查看 process I的 contexts属性。如:
· pd –eZ
(3)设置上下文命令restorecon:改写部分目录内所有文件案目录的上下文 contexts重写home目录底下所有文件案系统的上下文 contexts:
· restorecon -v -R /home
·chcon:手动更改文件案或目录的上下文 contexts应用实例如下快速指定安全上下文 contexts给特定的目录,使用如下命
- chcon user_u: object_r: public_content_rw_t -R /home/tea001另外, Redhat Linux系统提供了一个图形工具( system-config-selinux),可以使用它来设置.
Selinux运维包括8个部分:状态,布尔值,文件标记,用户映射,selinux用户,进程域,网络端口和策略模块。
使用命令行工具管理selinux
1).setenforce:设置selinux模式
用法:sentence[Enforcing/Permissive/1/0]
·Enforcing :设置为强制模式
·Permissive:设置为允许模式
·1 :设置模式为强制(临时关闭)
·0 :设置模式为允许
2)getenforce:查看selinux模式
3)setsebool:设置selinux布尔值
·-P 设置永久
设置布尔变量ftpd_disable_trans为on
#setsebool ftpd_disable_trans=on
4)getsebool:查看selinux布尔值
·-a 显示所有布尔值
5)sestatus:selinux状态查看工具
6)avcstat:显示avc统计信息
7)audit2allow:生成策略允许规则
8)semanage:管理selinux策略
9)semodule:管理策略模块
10)chact:改变语境类别
11)restorecon:恢复文件安全语境
12)chcon:改变文件安全语境
13)setfiles:设置文件安全语境
14)seinfo:提取策略的规则数量统计信息
15)sesearch:搜索policy.conf或二进制策略中特别的类型
16)sealert:selinux讯息诊断客户端工具
selinux的操作会体现到日志中,包括/var/log/messages文件和/var/log/audit/audit.log文件。当selinux发生拒绝某些目录或者目录被访问时,通知方式会出现在桌面的右上角。
6.auditctl:对kernel中的audit进行控制,可以用来获取audit状态增删audit规则,auditctl命令控制行为、得到状态,从内核审计系统增加删除规则
用法:suditctl [options]
使用aureport生成报表、使用ausearch命令搜索记录
seaudit工具查看Linux用户空间审计系统信息
Linux提供了用来记录系统的安全信息的审计系统,审计系统分为用户空间和内核空间审计系统,用户空间审计系统用来设置规则和审计系统状态、将内核审计系统传来的审计消息写入log文件,内核审计系统用来产生和过滤内核的各种审计消息、用户空间审计系统通常是和selinux系统配合使用的。防火墙的使用,使用system-config-firewalld和fwbuilder快速构架Linux防火墙。
Selinux讲解的更多相关文章
- linux之添加切换用户、系统变量、selinux、防火墙、系统中文乱码的讲解
######linux用户分类1.root 用户 linux皇帝 2.普通用户 贫民百姓 [root@oldboyedu-01 oldboy]# useradd oldboy[root@oldboye ...
- 2-10~2-11 配置iptables防火墙增强服务 selinux简单讲解
学习一个服务的过程: 1.此服务器的概述:名字,功能,特点,端口号 2.安装 3.配置文件的位置 4.服务启动关闭脚本,查看端口 5.此服务的使用方法 6.修改配置文件,实战举例 7.排错(从下到上, ...
- linux基础-基本命令的讲解(1-7单元)
基本命令的讲解 主要内容介绍 1.LINUX操作系统安装及初始化配置(熟悉):2.LINUX操作系统目录组成结构及文件级增删改查操作(重点):3.LINUX操作系统用户.权限管理(重点):4.开源软件 ...
- Selinux 禁用
Selinux是对于强制访问控制的实现,在这种访问控制体系的限制下,进程只能访问那些在他的任务中所需要文件. 对于新手来说会影响我们的操作.一般情况下是不需要的,所以禁用他,如果需要的情况下,我们可以 ...
- Linux常用配置讲解
本文主要讲解Linux的用户设置.主机名设置.网络配置.防火墙配置 用户传输包的命令lrzsz的安装以及SSH服务配置等基本操作. 1. 用户名设置 服务肯定是为了用户,而用户可能对于Linux并不了 ...
- linux下目录简介——/SElinux
一.前言 安全增强型 Linux(Security-Enhanced Linux)简称 SELinux,它是一个 Linux 内核模块,也是 Linux 的一个安全子系统. SELinux 主要由美国 ...
- 分布式系统监视zabbix讲解七之分布式监控--技术流ken
分布式监控 概述 Zabbix通过Zabbix proxy为IT基础设施提供有效和可用的分布式监控 代理(proxy)可用于代替Zabbix server本地收集数据,然后将数据报告给服务器. Pro ...
- python编写shell脚本详细讲解
python编写shell脚本详细讲解 那,python可以做shell脚本吗? 首先介绍一个函数: os.system(command) 这个函数可以调用shell运行命令行command并且返回它 ...
- CentOS FTP服务器系统套件全面讲解
对大家推荐很好使用的CentOS FTP系统,像让大家对CentOS FTP系统有所了解,然后对CentOS FTP系统全面讲解介绍,希望对大家有用. 1.vsFTPd,目前常用CentOS FTP服 ...
- setsebool命令详解与SELinux管理
setsebool命令是用来修改SElinux策略内各项规则的布尔值.setsebool命令和getsebool命令是SELinux修改和查询布尔值的一套工具组.SELinux的策略与规则管理相关命令 ...
随机推荐
- SEO关键词布局方法
关键词在<title>标签. description属性. keywords属性中是如何布局的. 1.<title>标签中布局关键词 <title>标签是用来定义网 ...
- HelloWorld的常见问题与Notepad++使用-程序注释与Hello World说明
HelloWorld的常见问题与Notepad++使用 编译和运行是两回事 编译:是指将我们编写的Java源文件翻译成JVM认识的class文件,在这个过程中, javac 编译器会检查我们 所写的程 ...
- 浅谈Python中的with,可能有你不知道的
Python中的with,没那么简单,虽然也不难 https://docs.python.org/zh-cn/3.9/reference/compound_stmts.html#the-with-st ...
- windows10环境下的RabbitMQ安装步骤
RabbitMQ是一个在AMQP协议标准基础上完整的,可复用的企业消息系统.它遵循Mozilla Public License开源协议,采用 Erlang 实现的工业级的消息队列(MQ)服务器,Rab ...
- pycharm软件的基本使用、python的注释语法、变量与常量、变量的命名风格、垃圾回收机制、数据类型、数据类型之整型、数据类型之浮点型
一.pycharm软件的基本使用 修改主题背景 修改字体大小 切换解释器 如何新建python文件 创建后缀是py的文件 注意:pycharm的语言 一定要使用英文的 二.python语法注释 (1) ...
- gitlabApi如何获取项目文件夹的commitId
在我们做配置管理系统和gitlab系统集成的时候,有一个常见的场景,就是要获取某个文件的commitId,来记录本次配置文件提交的版本.这个通过gitlabApi很容易实现: GET /proje ...
- P15_了解小程序的版本阶段与上线的主要步骤
协同工作和发布 - 小程序的版本 软件开发过程中的不同版本 在软件开发过程中,根据时间节点的不同,会产出不同的软件版本,例如: 开发者编写代码的同时,对项目代码进行自测(开发版本) 直到程序达到一个稳 ...
- Ubuntu18.04编译ZLMediakit支持webrtc
背景 最近在做流媒体相关的一些东西, 比较了一些开源的流媒体服务, 目前 srs 和 ZlmediaKit 项目是评价比较高的, 今天主要在 Ubuntu18.04 上编译 ZlmediaKit, 并 ...
- JZOJ 6799. 【2014广州市选day2】game
题目 思路 呵呵,正解并不是什么神奇的方法 而是最原始的最粗暴的最有用的最万能的----搜索 依题模拟即可 \(Code\) #include<cstdio> #include<cs ...
- vue2和vue3区别
1. vue2和vue3双向数据绑定原理发生了改变 vue2的双向数据绑定是利用了es5 的一个API Object.definepropert() 对数据进行劫持 结合发布订阅模式来实现的.vue3 ...