RedHat Enterprise Linux 4新安全机制
named nscd ntpd portmap postgres snmpd squid syslogd 这样,我们的系统便受到了SELinux的保护,但我们知道,通常安全性越高,表示受到限制加多,管理起来也变得更加不方便。对于我们现在的系统到底有什么样的影响了呢?你可以发现,很多原本root可任意开启的服务,现今因为受到SELinux 控制而无法顺利执行。 在下一章节,笔者会用httpd这个实例来让读者体会启用SELinux 会对系统造成什么影响 另外,还有几个基本的SELinux 指令: ls -Z ps -Z id -Z 这三个命令的-Z(大写)参数专为SELinux而增加的,可以看到文件,进程和用户的SELinux属性情况. 另外一个重要命令:chcon,用于改变文件的SELinux属性! 这里就不详细的介绍这些命令的使用了,有兴趣的读者可以查看相关资料。 七:SELinux 对httpd的保护 1、启用SELinux 若读者安装时关闭了SELinux,可再次启动SELinux,点击应用程序—系统设置—安全级别(gnome),勾选即可,或使用命令system-config-securitylevel(如果安装了系统工具对应项),如图4。其中的强制对应着前边配置文件中的enforcing,亦即安装时的“活跃”,如果不选此项配置文件对应为“permissive”,亦即安装时的“警告”。 图4 当前状态 当然,也可以直接修改/etc/selinux/config文件中的内容,把SELINUX 参数项设成enforcing即可,然后保存重新开机即可。 重启系统时,读者会发现开机时出现奇怪的错误信息,可看到是关于syslogd启动项失败的提示。其实这个信息正是因为启动了SELinux 而产生的,因为targeted policy 有针对syslogd的安全控管,所以才会出现这样的提示。当然如果你启用了其他一些由SELinux控管的服务,亦会出现同样的错误提示。 图5 启用SELinux 时开机错误提示 2、启动httpd 待开机完成后,请用root身份启动httpd daemon 图6 启动httpd失败 出现这样的错误讯息,竟然用root启动httpd 也出现权限问题。读者想 到原因了吗?对,就是SELinux在作怪!SELinux默认启用的环境下,root不再具有所有权限了。下面我们关闭SELinux再试试。 3、停用SELinux,重新启动httpd 可以通过图形界面方式来停用SELinux,位置就在以图形方式启动一样,把启动项勾掉,或修改SELinux设定文件/etc/selinux/config,把SELinux 这个参数设成disable(如图),然后重新开机。
更多相关文章
|
推荐文章
精彩文章
|