我曾经写过两篇日志,都是关于SELinux的安全设置问题,请参考:

我们到底该不该使用SELinux

关于SELINUX的权限问题

前两天,一同事去现场给客户部署系统,装好RHEL5.6之后,发现ftp和http都连不上,但是服务器的启动和服务状态都正常,ftp的返回结果是

500 OOPS: cannot change directory:/home/userDir

我再让他查看下权限、登陆的用户等,这些都没有问题,然后我问他,SELinux的状态是什么样的?他说是打开的,我就知道是这个问题了,在这些版本之后,默认SELinux都对网络操作本地文件系统做了很严格的控制,我觉得有必要在说一说这些东西。

首先是两个命令,getsebool和setsebool,从名字上面就可以知道,这是设置SELinux相关配置的开关(布尔值),那就说明各项开关的作用就行了。继续阅读

首先,我得为取的这个标题道歉,因为相关的介绍很多,但是又能有多少人直接认知它呢?

2001年上半年,美国国家安全局向开放源码社区发布了一个安全性增强型版本的 Linux (Security-Enhanced Linux ,SELinux)包括所有代码!到现在,可以毫不夸张的说,它成了linux服务器维护员们的一块心病,到底是打开呢?还是关闭?打开的话由于它过于复杂,又缺乏有效的配置工具(知道近几年来才陆陆续续的出现一些)。不打开悬着的心放不下,因为关闭它后,裸linux的安全直下一个等级。

当别人打电话给我问“新装的linux为什么其他机器访问不了?ftp访问不了?Home目录下的应用访问不了?”的时候,我的第一句话就是问“SELinux打开了没有?”,相信这也是很多管理员的回答,但是作为我个人来说,还是比较钟情它的,很多服务器一直是开着的。在这里我还是建议,不要彻底的关掉了,至少打开到Permissive的方式(只记录风险操作,并不阻挡)!

至于它的工作原理,个人认为说的还全面的这里有:揭开 SE Linux 的秘密,请特别关注他的参考资料。要进去读之后才知道真正的linux。我这里就不翻版了!

以Redhat为例,RHEL4被作为试验品,有15个可由应用程序访问的目标程序组。然而,在RHEL5之中目标程序组达到了200个,引用Redhat的Walsh的话说就是:“RHEL5的目标是让SELinux无处不开。”!由此他们在RHEL5中引入了SELinux故障排解器(Troubleshooter),故障排解器(Troubleshooter)也被称为故障排解集合(settroubleshoot),是一个为存取向量高速缓存(AVC)消息监视稽核记录文件的工具。

继续阅读