selinux;全称安全加强的linux
安全的加强的linux:SELinux
原创
©著作权归作者所有:来自51CTO博客作者wg_rjaijdid的原创作品,请联系作者获取转载授权,否则将追究法律责任
secutity enhanced linux
上个世纪80年代美国国家安全属NSA研发出
MAC:强制访问控制
linux安全模型,每一个用户,他所拥有的文件,他想共享使用。
例如redhat用户,想让gentoo用户对自己的a.txt权限664的文件有写权限。
就需要修改权限664-->666(DAC自主访问控制)
这样一来就有很大的风险,其他用户也有了写权限。
进程的执行取决去用户所拥有的权限,我们只想让gentoo对a.txt具有写权限,进行修改。对其他任何文件都不能修改。
那么我们就需要对他进行一些限制,将他能执行的操作,仅限于a.txt这个文件。
我们就借助sandbox:沙盒 将他的权限限定在某个特定目标
我们定义一个进程类型为t1,在定义一个目标为t2
我们制定一个策略表,t1只能对t2执行什么操作,把活动范围限制在沙盒。
就是提供了一个域,将活动范围限定在这个域之内。
subject:domain(type)
例如:一个web网站,linux系统上需要用户发起httpd进程来访问。这个用户拥有rx权限。我们只需要用户查看网页就行了,不能让他访问我们的系统,那么只要将他限定在一个域内就行了。比如我们建一个目录
/var/www,我们把用户的httpd进程活动范围限制在这个目录。他就算搞破坏,也只是针对这个目录,无法搞坏我们整个系统。
MAC做进了内核,-->SELinux
selinux的模型:
strict模型:安全级别太高,每一个进程都需要严格设定,五角大楼才用 - -!!
target模型:只对可能有风险的进行限定,web,ftp,http等
在/etc/selinux/config定义了类型
SELINUXTYPE=target在最后一行
可以关闭,只要修改SELINUX=enforcing
enforcing-状态为生效
permissive-状态为生效,但不强制,只警告不阻止。发送邮件至日志
disabled-不开启
下次开机生效
getenforce查看当前生效的模型
setenforce 0 或1改变状态,在enforcing与permissive之间切换
/etc/sysconfig/selinux链接/etc/selinux/config
类型强制:selinux为每一个进程分配了一个标签
label:标签
user:用户
role:组
type:类型
#ls -Z 字段user:role:type 查看文件标签
#ps -axZ 查看进程标签
定义规则,策略在/etc/selinux/targeted/policy/policy.21
它是二进制格式,不可直接制定,需要文本文件,在进行转换
改变文件的类型# chcon -t 类型 文件名
我们可以通过修改文件标签来限制进程访问文件
restorecon -vvF 恢复文件类型
如果是目录,只改目录本身。要想对其子目录及其文件生效,使用-R
如果ftp被selinux限制,就不能上传了。
使用getsebool -a | less 查看进程功能的开启与关闭
修改方法:setsebool 功能名 no或off
当前生效,永久有效要加-P选项
上一篇:企业高级硬盘管理方案——RAID和LVM详解(图文)
下一篇:网路安全:加密技术
提问和评论都可以,用心的回复会被更多人看到
评论
发布评论
相关文章
-
linux安全---selinux安全控制
linux安全---selinux安全控制
linux 安全 selinux