Chinaunix首页 | 论坛 | 博客
  • 博客访问: 103753088
  • 博文数量: 19283
  • 博客积分: 9968
  • 博客等级: 上将
  • 技术积分: 196062
  • 用 户 组: 普通用户
  • 注册时间: 2007-02-07 14:28
文章分类

全部博文(19283)

文章存档

2011年(1)

2009年(125)

2008年(19094)

2007年(63)

分类: LINUX

2008-04-23 08:22:00

作者: Serge E. Hallyn/黄永兵译 出处:51CTO.com 
 
 
部署现金帐簿系统

部署现金帐簿会计系统的第一步建立在前面提及到的从零开始一个SELinux系统(可以在http://www.ibm.com/developerworks/linux/library/l-rbac-selinux/index.html?ca=drs-#download下载)之上,下面的步骤将展示完成一个从零开始的系统。

加载要使用的磁盘镜像(关闭qemu镜像):

mount -o loop,offset=32256 -t ext2 gentoo.img /mnt

http://www.ibm.com/developerworks/linux/library/l-rbac-selinux/index.html?ca=drs-#download下载code_for_fromscratch.tgz,然后在磁盘镜像下解压:

tar zxf selinuxregister.tgz -C /mnt
umount /mnt 

现在开始qemu镜像:

qemu -hda gentoo.img -m 512 -vnc :3 -kernel bzImage -append "ro root=
/dev/hda1 -p"

一旦你登陆进去,你必须编译并安装新的策略和新的PAM模块:

cd /usr/src
checkpolicy -c 19 -o policy.bin policy.conf
cp policy.bin /etc/
rc-update add selinuxenforce default
cp /etc/pam.d/system-auth /etc/pam.d/system-auth.orig
cp /etc/pam.d/system-auth.new /etc/pam.d/system-auth

在策略中的用户被创建,但是你必须创建与之对应的Linux用户:

adduser mary
passwd mary
  (passwd)
mkdir /home/mary
adduser boss
passwd boss
  (passwd)
mkdir /home/boss
adduser bob
passwd bob
  (passwd)
mkdir /home/bob

然后为数据存储创建目录结构:

mkdir /data
mkdir /data/cashier_r
mkdir /data/mgr_r
mkdir /data/final
chmod 777 /data/*
最后,给文件系统做上标记:
setfiles /usr/src/filecontexts /
poweroff

现在镜像准备好了,不加-p参数重新启动它,SELinux策略就被加载了:

qemu -hda gentoo.img -m 512 -vnc :3 -kernel bzImage -append "ro root=
/dev/hda1"

再以root登陆并再次尝试:
ls /data

权限被拒绝,注销root然后用bob登陆,我们的出纳,登记一个数值,例如:
register bob 25.22

然后尝试欺骗系统:
register bob commit

不能工作,注销bob然后用Mary登陆:
register bob commit

哦,Mary首先需要敲入她自己的数值:
register bob 27
register bob commit

数值不匹配,想知道Bob提交后的结果吗?
cat /data/cashier_r/bob/(day)

哦,你未被允许查看它,你将不得不去找Bob进行协商,或许你要重新统计你的帐簿并查出他是对的,因此:
register bob 25.22
register bob commit

这下没有问题了,现在你以root用户登陆并:
cat /data/final/bob/(day)

这下将显示所有输入的数值了。

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