Chinaunix首页 | 论坛 | 博客

TGL

  • 博客访问: 44320
  • 博文数量: 12
  • 博客积分: 490
  • 博客等级: 下士
  • 技术积分: 160
  • 用 户 组: 普通用户
  • 注册时间: 2009-05-12 17:07
文章分类
文章存档

2010年(2)

2009年(10)

我的朋友

分类: LINUX

2009-11-11 15:58:03

dvnlinux-distSELinux的安装



dvnlinux-dist的源码树中提供了系统安全模块,位于dvnlinux-dist根目录下的security目录,其中包括两个系统安全工具:iptablesSELinux,这也是其他Linux发行版提供的主流安全工具。

本文档主要介绍SELinux的安装。

1 SELinux简介

SELinuxSecurity-enhanced Linux)是安全增强了的Linux,是由NSA(National Security Agency)SCC(Secure Computing Corporation)共同开发的GPL项目。

SELinux改进了对内核对象和服务的访问控制

2 SELinux内核配置

SELinux已经整合进了Linux-2.6版内核,源码位于内核security/selinux目录。Linux内核中关于SELinux的配置选项如图所示,在内核配置选项主菜单的Security options栏下面。

3 SELinux用户空间工具

可以从下载到SELinux的安全策略工具。我们选择的是2008-09-09发布的稳定版本,主要包括如下几项:

这些都可以通过make && make install命令来安装,并且可以通过DESTDIR选项来控制安装的路径,比如要将他们安装在$(ROOTFS)目录下,可以使用如下命令:

make &&

make DESTDIR=$(ROOTFS) install

4 SELinuxinit进程

我们需要修改开始引导系统的程序 /sbin/init以使系统支持并启用 SELinux。需要给sysvinit打上一个SELinux补丁(sysvinit-init.c.diff),这个补丁会在系统引导时挂载selinuxfs虚拟文件系统到/selinux目录,并加载SELinux策略。

可以通过如下命令替换目标系统的init文件:

cd sysinit-2.86

cd src

patch -p0 < ../../sysvinit-init.c.diff

make init

mv $(ROOTFS)/sbin/init $(ROOTFS)/sbin/init.old

cp init $(ROOTFS)/sbin/init

5 SELinuxbootloader参数

Sysvinit-init.c.diff补丁引入了一个 标志 no_selinux,如果引导命令包括了 -p 选项,这个标志就被设置为 1。如果这个标志被设置 了,那么就会给出一条警告消息,然后像正常方式一样引导。否则就调用函数 load_policy(), 这个函数是在这个补丁中定义的。

比如,我们使用的bootloadergrubgrub的配置文件是/boot/grub/menu.lst,如果使用下列引导参数将不挂载SELinuxkernel /boot/kernel-2.6.28 root=/dev/hda1 -p,而去除-p选项即可在引导是启动SELinux

6 安装策略

可以使用checkpolicy程序编译策略:

checkpolicy -o policy.bin policy.conf

将编译生成的策略安装到/etc/目录下:

cp policy.bin /etc/

更换策略需要重新编译并安装。

7 配置文件

/etc/selinux/config文件控制SELinux是激活还是关闭,如果激活,SELinux的运行模式是许可(permissive)或者强制(enforcing)模式。关闭SELinux将关闭SELinux内核和应用程序代码,系统在没有任何SELinux保护下运行,许可模式表示激活了SELinux代码,但SELinux策略不否决操作,只是把违背策略的操作信息审核记录到log系统。强制策略则对违背策略的操作进行否决,并记录信息到log系统。

使用sestatus命令可以查看SELinux的运行状态,也可使用如下目录查看:

cat /selinux/enforce返回0表示许可模式,返回1表示强制模式。

也可通过如下命令更改模式:

echo 0 > /selinux/enforce将关闭强制模式;

echo 1 > /selinux/enforce将开启强制模式。

阅读(1402) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~