SELinux的功能熟悉

简介: 版权声明:您好,转载请留下本人博客的地址,谢谢 https://blog.csdn.net/hongbochen1223/article/details/45610691 此时,玩SELinux系统就有些价值了。
版权声明:您好,转载请留下本人博客的地址,谢谢 https://blog.csdn.net/hongbochen1223/article/details/45610691

此时,玩SELinux系统就有些价值了。例如,我们使用一个带有严格策略的Fedora Core 4 的发行版。这些大多数例子基本上都能在Red hat Enterprise Linux version 4或者是Fedora Core 5上运行了。虽然可能有些不同,但是你也可能能够使用其他发行版运行。“获取SELinux例子策略”,描述了如何获取贯穿我们这本书作为例子使用的策略文件和其他资源,并且描述了应该如何相应的配置你的系统。

以Permission模式运行:
SELinux能够在访问检查发生地方,以permission模式运行,但不是允许访问,他仅仅就是简单的检查他们。当首次学习SELinux的时候,这个模式是非常有用的,你可能想要以这个模式来探索系统。当然,如果你想要提高SELinux访问的安全性的话,permission模式是不应该被用在操作系统中的。注意,一些工具能够在/usr/sbin中找到,这些通常不会存放在普通的用户路径当中。

查询SELinux当前的模式最简单的方式 就是运行getenforce命令。如果想要设置系统的安全模式为permission模式的话,运行命令setenforce 0。(你一定要以root身份登录系统,并且域标识为sysadm_t才能改变系统到permission模式)。为了是系统回到enforcing模式,运行命令setenforce 1。(因为你是在permission模式下,你需要一root的身份登录来改变系统的模式到enforcing模式。)

我们已经提及到了添加到系统命令的-Z 选项。例如ls和ps这样的命令显示文件和进程的安全上下文。作为一个练习,运行命令ps -Z和ls -Z来为运行的进程和可执行文件检查各种各样的安全上下文。

重新审视密码例程

纵观这一章节,我们使用了shadow密码文件和密码程序的例子。如果你检测这两个文件的安全上下文,他们的类型分别应该是shadow_t和passwd_exec_t。正如之前讨论过的,passwd_exec_t是passwd_t域
的entrypoint类型。为了见证域转换是如何工作的,我们运行下列的命令。你需要两个终端窗口或者是虚拟控制台了来运行这些命令。

在第一个窗口中,运行passwd命令

这里写图片描述

这一命令开始了密码程序,并且提示用户输入密码。不要输入密码,而是要换到第二个终端。在第二个终端中,使用su命令切换到root用户,然后运行ps命令:

这里写图片描述

正如你所看到的,运行着的密码程序的类型是passwd_t,正如在上面章节例子中描述的一样。

重新使用策略文件

在FC4系统中,包含内核策略的二进制文件放置为有名的目录/etc/selinux/中。在那个目录中的配置文件(config)指明了要被使用和在启动的时候被加载的策略。你也可以在这个文件中配置系统以permission权限启动。作为我们的联系,我们使用FC4的严格的策略,他应该在这个地方:

/etc/selinux/strict/policy/policy.[ver]

策略的版本映射了SELinux策略编译器(checkpolicy)的版本。在我们的例子中,版本是19。从策略源中配置一个SELinux系统并且创建一个内核策略文件将在第三部分详细讨论。现在,我们想要查看策略文件中都是有什么。

查看策略文件内容的一个有用的工具是 策略分析工具apol,他是由Tresys Technology创建的,发行在SELinux的工具包中,被称作SeTools。SeTools包被包含在大多数的SELinux发行版中。运行命令apol来检测你的系统中是否存在该工具。如果不存在,我们附录D提供了如何获取SeTools包的信息。

apol工具是一个精致的SELinux策略分析工具,在整本书中,我们都将使用这个工具来分析SELinux策略文件。就现在来说,我们想要使用这个工具的基本功能来分析策略文件的概要。运行apol并且打开一个严格的策略文件。在菜单Query->Policy Summary中,你可以查看策略统计资料的概述。

这里写图片描述

apol有一系列的主选项卡(Policy Components,Policy Rules,Analysis等等),这些选项卡能够帮助你以多种方式查询和分析策略。花费一些时间来探索Policy Components和Policy Rules,并且熟悉策略的这两部分内容和apol工具。你将会发现使用apol来分析你的策略和实例是非常有用的,在我们后面的”SELinux策略语言”这一章节中。

目录
相关文章
|
7月前
|
编解码 安全 Linux
技术笔记:SELinux详解
技术笔记:SELinux详解
92 0
|
7月前
|
安全 Ubuntu Linux
SELinux 简介
前段时间的工作遇到了一些关于 SELinux 的问题,初次接触不熟悉此概念,导致当时配置策略时束手束脚,焦头烂额,为此去系统的学习了下 SELinux 的东西。聊 SELinux 之前,先来看看什么叫做访问控制。
69 3
SELinux 简介
|
6月前
|
Shell Linux
Linux Shell 脚本入门教程:开启你的自动化之旅
Shell是一种计算机程序,它充当了用户与操作系统之间的接口。在Linux系统中,Shell允许用户通过命令行界面(CLI)来控制计算机。Shell脚本则是一种使用Shell语言编写的脚本,它可以自动执行一系列的命令,帮助用户实现任务自动化,提高工作效率。
155 2
|
8月前
|
安全 Linux 数据安全/隐私保护
Linux 学习笔记十八:SELinux 相关概念
Linux 学习笔记十八:SELinux 相关概念
|
Shell Linux 网络安全
[笔记]Linux Shell脚本实现自动输入 解放双手 自动测试
[笔记]Linux Shell脚本实现自动输入 解放双手 自动测试
138 0
|
监控 安全 Linux
18.10 SELinux auditd日志使用方法
auditd 会把 SELinux 的信息都记录在 /var/log/auditd/auditd.log 中。这个文件中记录的信息会非常多,如果手工查看,则效率将非常低下。比如笔者的 Linux 中这个日志的大小就有 386KB。
513 0
18.10 SELinux auditd日志使用方法
|
XML 数据采集 关系型数据库
《懒人Shell脚本》之五——一键修改分布式系统配置文件
0. 背景 分布式部署程序的时候,近20台机器部署了同样的环境进行数据采集。 当更换程序时,能否修改好一套,其他机器只需要一步scp,一步执行脚本。 一键修改配置,正是本文的目的。
279 0
|
Web App开发 监控 安全
SELinux初学者指南
SELinux(Security Enhanced Linux)是美国国家安全局2000年发布的一种高级MAC(Mandatory Access Control,强制访问控制)机制,用来预防恶意入侵。SELinux在DAC(Discretionary Access Control,自主访问控制)的基础上实现了强制访问控制,比如读、写和执行权限。
1220 0
|
安全 开发工具 网络安全
|
安全 Linux 数据安全/隐私保护