Fedora禁用/去除SELinux的办法

本文介绍三个层次的去SELinux办法,最简单的是修改SELinux配置实现禁用的效果(SELinux不会再运行),高阶一点的去除selinux-policy并在内核中将安全配置改成DAC,第三个即最彻底的则是自己搭建koji环境编译不依赖于libselinux的Fedora(同样适用于RHEL、CentOS等发行版及其衍生发行版)……

简单禁用

也是网上随便能搜到的,即便是简单禁用都有四种甚至更多途径,这里介绍两种。其一是内核启动参数加上:

selinux=0

另一种则是修改SELinux的配置文件/etc/selinux/config,如下:

SELINUX=disabled
SELINUXTYPE=minimum

以上二选一都能达到禁用SELinux的效果,在终端下执行下面这条语句可以查看是否成功禁用SELinux(注:selinuxenabled是libselinux包中的命令)

if selinuxenabled; then echo Enabled; else echo Disabled; fi

部分卸载、内核清除

这个网上别家就找不到了~~

首先用yum包管理器卸载selinux-policy,

su -c 'yum remove selinux-policy selinux-policy-doc selinux-policy-devel selinux-policy-targeted'

然后自己编译Fedora的内核(看我之前发的文章),make menuconfig配置时在Security options —>下面,关闭NSA SELinux Support,Default security module选择Unix Discretionary Access Controls(即DAC)。

引导新的内核吧,SELinux模块已经从新内核中移除了……

注意:不能卸载libselinux!Fedora的软件包基本都依赖于libselinux!

完全根除SELinux

到了更高段位了!系好安全带!Let’s Go!

应该知道koji这个东西吧?Fedora RPM包的编译环境……实际上我并不了解。。@_@

所以我没有进行到这一步,何况用Fedora其中一个重要原因就是直接用现成的二进制包而不用自己编译,如果要走到自己编译整个系统环境这一步的话,何不去用有文档支持的Gentoo呢?

WARNING

SELinux是NSA开发出来的安全模块,用于增强Linux系统的安全性(虽然会有误报),效果确实比较显著,Fedora项目也强烈建议不要关闭SELinux(觉得烦人可以改为permissive),了解SELinux的规则创建和修改也能有所帮助。

Anyway,我禁用SELinux都一年多了,而且是个人桌面系统,实在不太需要SELinux,服务器就另当别论了。

参考文章:

4 Effective Methods to Disable SELinux Temporarily or Permanently

FedoraForum.org