SELinux 权限设置
SELinux 权限设置
2010-5-26
陈 恒
一、SELinux简介
SELinux全称是Security Enhanced Linux,由美国国家安全部(National Security Agency)领导开发的GPL项目,它拥有一个灵活而强制性的访问控制结构,旨在提高Linux系统的安全性,提供强健的安全保证,可防御未知攻击,据称相当于B1级的军事安全性能。比MS NT所谓的C2等高得多。
应用SELinux后,可以减轻恶意攻击或恶意软件带来的灾难,并提供对机密性和完整性有很高要求的信息很高的安全保障。 SELinux vs Linux 普通Linux安全和传统Unix系统一样,基于自主存取控制方法,即DAC,只要符合规定的权限,如规定的所有者和文件属性等,就可存取资源。在传统的安全机制下,一些通过setuid/setgid的程序就产生了严重安全隐患,甚至一些错误的配置就可引发巨大的漏洞,被轻易攻击。
而SELinux则基于强制存取控制方法,即MAC,透过强制性的安全策略,应用程序或用户必须同时符合DAC及对应SELinux的MAC才能进行正常操作,否则都将遭到拒绝或失败,而这些问题将不会影响其他正常运作的程序和应用,并保持它们的安全系统结构。
二、SELinux主要配制文件
SELinux主要配制文件位于/etc/selinux/下。在网络中的服务器,建议开启SELinx,以提高系统的安全性。我这里通过命令方式来改变SELinx的安全策略,就不在对SELinux的配制文件做具体说明。
三、SELinux常用的命令
Ø ls –Z | ps –Z | id –Z
分别用于查看文件(夹)、进程和用户的SELinx属性。最常用的是ls -Z
Ø sestatus
查看当前SELinux的运行状态
Ø setenforce
在SELinux为启动模式下,用此命令可以暂时停用SELinux
Ø getsebool
查看当前Policy(策略)的布尔值
Ø setsebool
设置Policy的布尔值,以启用或停用某项Policy
Ø chcon
改变文件或文件夹的content标记
四、SELinux实用案例
4.1 SELinux对Apache的保护
新安装的wordpress位于/vogins/share/wordpress下,按照系统的默认策略,/vogins,/vogins/share的SELinux属性为file_t,而这是不允许httpd进程直接访问的。为此,需要做如下高调整:
1) 改变/vogins,/vogins/share的SELinux属性
Shell> chcon –t var_t /vogins
Shell> chcon –t var_t /vogins/share
2) 改变wrodpress目录的SELinux属性
Shell> chcon –R –t httpd_sys_content_t wordpress
3) 允许apache进程访问mysql
setsebool -P httpd_can_network_connect=1
4) 关于Apache里虚拟主机的配制就里就不多说,重新启动apache,就可以正常访问wordpress
Shell> /etc/init.d/httpd start
注意:如果出现不能访问的情况,请查看/var/log/messages里的日志。一般来说,按照提示就可以解决了。
上一篇: Spring-Flex架构分析