SELinux中文教程
Getting Started with SE Linux HOWTO:the new SE Linux
Getting Started with SE Linux HOWTO:
the new SE Linux
(简体中文版)
Getting Started with SE Linux HOWTO:the new SE Linux
Getting Started with SE Linux HOWTO: the new SE Linux
(译者注:本文的最原始版本为2004年3月所写,此份HOWTO是作者在今年2月根据最
新的SE Linux所作的修改后的版本。新的SE Linux与以前的有比较大的变化,而且这项技
术本身也正在飞速的发展,并未最后成熟。阅读本文是需要对Linux本身有一定深度的了解
作为基础的。本文并不是Linux的初级教程,但却是SE Linux技术的初级教程。)
原著:Faye Coker, March 2004.
faye@www.doczj/doc/902143757.html,
中文译者:邹立巍, 2006年7月
mini.jerry@www.doczj/doc/902143757.html,;
重要的提示!注意!
我正在根据最新的SE Linux来根本的升级这份文档。我用了很长时间来做这件事情,不过
看来我好像永远没有足够的时间作完它。我现在正在继续做,请相信我!
Faye Coker, Feb 04, 2006
(译者注:本人技术出身,英语实在比较差。翻译如有不当之处,敬请指正!)
这份文档已经根据最新的SE Linux做了更改。旧的"Getting Started with SE Linux HOWTO"
的内容将保留在此份文档里,不过绝大多数的内容是根据最新的SE Linux的特点作了修改。新的SE Linux是基于2.6.*内核的,但是仍然支持2.4.*的内核。这份文档的大部分内容是原
来的,我在需要修改的地方做了调整。
这份文档是美国国家安全局的安全加强的Linux(NSA SE Linux)的概述性的说明。我们主
要的环境是基于Debian Linux的,而且大部分的软件包的操作命令实例都是基于Debian的。这份文档主要是针对那些想要基础了解SE Linux的人,所以这里没有对SE Linux比较进介
的介绍。你可以在附录的资源部分到其它介绍SE Linux的资料。
这份文档已经被Ivan Pesin翻译成了俄文。你可以在
www.doczj/doc/902143757.html,/rus/articles/intro_selinux.html到俄文的版本。谢谢Ivan做了这些。
1.介绍
1.1.欢迎反馈!
1.2.注意!
1.3.最新的SE Linux的特
1.4.Fedora用户的策略(policy)源代码目录介绍
2.概览
2.1.为什么要使用SE Linux?
2.2.术语的使用
址上到:www.doczj/doc/902143757.html,/kwade/fedora-docs/selinux-faq-en/
2.2.1.身份(identity)
2.2.2.域(domain)
2.2.3.类型(type)
2.2.4.角(role)
linux中文名
2.2.5.安全上下文(security context)
2.2.6.转换(transition)
2.2.7.策略(policy)
3.安装
3.1.
基于Debian的安装
修改Debian包管理工具
3.1.1.
基于Fedora的安装
3.2.
4.登录
4.1. 在登录时提供用户上下文
4.2. 用newrole -r命令改变上下文
4.3. 在sysadm_t域中执行命令
4.4. Permissive 和 Enforcing 模式
4.5. 不同角运行命令的比较
5.建立用户帐户
5.1. 建立一个新的用户
5.2. 给用户分配角和申请改变
5.3. 给用户设置缺省的安全上下文
5.4. 重新标记用户主目录
6.添加新的用户域
6.1. 编辑用户的域文件
6.2. 在此建立一个新的测试用户
7.日志文件信息的说明
8.资源
1. 介绍
这份文档是一个SE Linux的简介,可以指导一部分人初步的学会SE Linux。它
涵盖和解释了SE Linux 的各方面的术语,安装和添加用户并且涵盖了一小部分
别的知识。一个更高级的帮助文档将会在不久发布(译者注:正在翻译中), 包
含了如何编辑策略等内容。 (which causes a little too much information
overload with users new to SE Linux and is not included here).
例 3
avc: denied { append } for pid=6153 exe=/bin/bash path=/.bash_history dev=03:03 ino=498 \
scontext=faye:user_r:user_t tcontext=faye:object_r:root_t tclass=file
这条提示是说属于user_r:user_t 角:域的faye 身份的用户想要在属于 root 的类型为root_t .bash_history 文件里添加内容被拒绝。
例 4
avc: denied { write } for pid=605 exe=/bin/touch dev=09:03 ino=2 \ scontext=root:user_r:user_t tcontext=system_u:object_r:root_t tclass=dir
这个例子显示的是路径不到。然而我们可以知道的是因为inode 号是2,所以是根目录。
8. 资源
在下面是和SE Linux 的相关的链接材料。 请参照NSA 的白皮书。
NSA
NSA的官方SE Linux 网站: www.doczj/doc/902143757.html,/selinux
官方SE Linux FAQ在: www.doczj/doc/902143757.html,/selinux/info/faq.cfm NSA 出版的文件, 技术上的报告在 www.doczj/doc/902143757.html,/selinux/info/docs.cfm
邮件列表
NSA 为所有有关 SE Linux 的讨论建立了一个邮件列表
www.doczj/doc/902143757.html,/selinux/list.html ,相同的网址上也说明了该如何获得目录文件。
SE Linux 的Sourceforge 项目
SE Linux的Sourceforge 在: http:/www.doczj/doc/902143757.html,/projects/selinux.
Fedora Core 2 SE Linux FAQ
Karsten Wade 已经为在Fedora Core 2上使用SE Linux 的用户写了一份 FAQ ,可以在下面地
1.1. 欢迎反馈!
我们欢迎对这份文档的反馈信息,请发邮件给faye@www.doczj/doc/902143757.html, (中文的就给我吧!;)mini.jerry@www.doczj/doc/902143757.html,)
1.2. 注意!
这份文档只是一份指导。我强烈的建议你在实际工作的机器上应用之前先一台试验机器来做练习 。
1.3. 最新的SE Linux 的特点
最新的SE Linux 有一些新的特点,下面先介绍一下:
/selinux 文件系统
加入了一个/selinux 文件系统. 因此有些安装程序需要你编辑/etc/fstab 文件。 /selinux 文件系统和 /proc 文件系统类似,都是虚拟的文件系统。你可以用ls -l /selinux 命令来显示。
total 0
-rw-rw-rw- 1 root root 0 Nov 25 11:27 access -rw-rw-rw- 1 root root 0 Nov 25 11:27 context -rw-rw-rw- 1 root root 0 Nov 25 11:27 create -rw------- 1 root root 0 Nov 25 14:19 enforce -rw------- 1 root root 0 Nov 25 11:27 load
-r--r--r-- 1 root root 0 Nov 25 11:27 policyvers -rw-rw-rw- 1 root root 0 Nov 25 11:27 relabel -rw-rw-rw- 1 root root 0 Nov 25 11:27 user
运行cat 命令查看 "enforce"文件将会显示一个值,代表SE Linux 当前的状态,1 代表 enforcing 状态, 0代表permissive 状态。
使用了文件系统的扩展属性
新的 SE Linux 使用了文件系统的扩展属性(Extended attributes)来存放安全上下文(secu
rity contexts)。你必须让你的内核支持这种扩展属性属性。 扩展属性是一个 名称—数据 元组 (name-data tuple)-- 举个例子说,
security.selinux 就是一个属性的名称,安全上下文(security context)就
是要存的数据。 当SE Linux 正在运行时,你可以用 ls
--context filename 命令来查看一个文件的安全上下文(我们将在后面进一步解释这个命令),无论SE Linux 是否打开,你都可以用getfattr 命令查看文件系统的扩展属性。不过你要先装支持 attr 的软件包并且通过 getfattr 命令的manpage 学会使用它。这个命令的运行方法是:

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。