免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
1234下一页
最近访问板块 发新帖
查看: 5645 | 回复: 32
打印 上一主题 下一主题

[系统安全] SELinux [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2013-03-07 09:29 |只看该作者 |倒序浏览
实现把类分配给用户
[root@localhost 桌面]# chcat -l -- +Marketing zhangsan
libsemanage.validate_handler: MLS range s0-s0:c1 for Unix user zhangsan exceeds allowed range s0 for SELinux user user_u (No such file or directory).
libsemanage.validate_handler: seuser mapping [zhangsan -> (user_u, s0-s0:c1)] is invalid (No such file or directory).
libsemanage.dbase_llist_iterate: could not iterate over records (No such file or directory).
/usr/sbin/semanage: 无法提交 semanage 交易
执行命令后,有这样的错误提示信息。
请各位大神给点意见啊!!

论坛徽章:
0
2 [报告]
发表于 2013-03-11 13:17 |只看该作者
本帖最后由 sgm277 于 2013-03-11 13:20 编辑

你创建zhangsan这个selinux 的user了吗? 你用semanager user -l 看下.

论坛徽章:
0
3 [报告]
发表于 2013-03-11 13:33 |只看该作者
回复 2# sgm277


    创建了,而且我确定该用户已经被设置为SELinux用户了。

论坛徽章:
0
4 [报告]
发表于 2013-03-11 13:40 |只看该作者
本帖最后由 sgm277 于 2013-03-11 13:45 编辑

回复 3# liyaweihesmz


你是吧zhangsan map到user_u 了?

论坛徽章:
0
5 [报告]
发表于 2013-03-11 14:36 |只看该作者
回复 4# sgm277


    通过执行semanage login -a zhangs命令建立的联系,因为我也是看的个文档练习做了,我也不清楚这属于那种方式建立的联系。

论坛徽章:
0
6 [报告]
发表于 2013-03-12 16:55 |只看该作者
我猜你肯定是参考http://www.centos.org/docs/5/htm ... mcs-getstarted.html做的。昨天时间紧,今天我也实践了一把,其实报错很明显了。就是map一个系统用户到selinux用户的时候,默认是map到user_u这个selinux user了,而user_u这个selinux的MCS level默认只是s0即SystemLow, 所以报错第一个就是 libsemanage.validate_handler: MLS range s0-s0:c1 for Unix user zhangsan exceeds allowed range s0 for SELinux user user_u (No such file or directory).

Selinux的MCS一共有1024个categories,所以你看"/etc/selinux/targeted/setrans.conf"这个文件的时候最高权限是s0-s0:c0.c1023=SystemLow-SystemHigh。 s0是最低权限不能获得更高的授权。如果你仔细看的话,参考的列子人家已经把user_u授予更高的权限了。user_u                  user           s0                      s0-s0:c0.c1023    system_r sysadm_r user_r, 这是用selinux user -l 看到的。问题是添加新的系统用户时候,一般都会map到user_u里,用于confine用户的权限,如果需要别的权限,再设置可以transfer的roles.

我刚才试了一下,新建一个selinux Role,mcstest(这是为了不影响别的已经存在的roles),然后创建一个新的selinux user,赋予这个user s0-s0:c0.c1023,把用户map到这个新的user上,然后运行chcat就没有问题了。

希望这些可以帮到你

论坛徽章:
0
7 [报告]
发表于 2013-03-14 09:54 |只看该作者
回复 6# sgm277


    还真是怎么一回事了,我就没有注意到那点,谢谢楼主。我还想问下你说的新建个SELinux 角色如何创建了,又如何指定将新用户map到存在的SELinux角色呢?
   我根据你给的建议修改了权限执行chcat命令正常了。但是查看新添加的用户所分到了类别时,没显示类,而是对应的权限。
   紧接着我试着做把类别分配给文件,修改类别后,用户仍然能看见文件内容。楼主方便的话,可以把你做的帖子发给看看吗?麻烦你了啊!!

论坛徽章:
0
8 [报告]
发表于 2013-03-14 13:23 |只看该作者
都是用semanage创建的。你可以看下命令的man文档。我没有帖子,我只是简单操作一下。举例说,有user1, user2这两个用户。user1可以访问user2 home下某个文件,而user2不可以访问user1目录下的某个文件。那么假如说提前定义好了mcs/mlss的”类“,u1(c1)那么就可以用如下命令实现。
1 chcat -l c1 user1
2 chcat c1 files  
这样就实现了。 很简单。不要想得太复杂。

另外说一句,selinux只是linux的加强,所以如果linux的DAC如果设置为deny的话,selinux就不会执行了。

上面的例子假如说files文件的权限是777,那么user2还是不能访问。因为被selinux deny了。

论坛徽章:
0
9 [报告]
发表于 2013-03-14 13:40 |只看该作者
回复 8# sgm277


    恩,明白了。

论坛徽章:
0
10 [报告]
发表于 2013-03-18 18:34 |只看该作者
回复 8# sgm277


    楼主,我做把类别分配给文件。能添加成功,但还是能访问到那个文件,Selinx就没有起了作用。请再帮帮忙啊!!
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP