SElinux下通过setroubleshoot工具排错

setroubleshoot是查看SElinux日志报错的命令,对于这个命令的用法,本人现总结如下,如有有用得着的朋友,可以瞅瞅哦

 

 1.首先查看一下个个的主机上是否安装了setroubleshoot,如果没有安装 则yum安装就行了(yum的配置暂不赘述)

技术分享

2.检查是否有安装http vsftp 若没有安装,则也先要安装下

 

技术分享

技术分享

3.重启httpd服务  service httpd restart  或 /etc/init.d/httpd restart 

技术分享

4.回到根目录下,echo 一个html文件  即:echo "test" > index.html

技术分享

5.cd /var/www/html目录下将里面所有内容删除掉

 技术分享

6.将根目录下的index.html文件 mv 到  /var/www/html (这个文件是Apache的网页文件所在位置)

技术分享

 

7.通过elinks 来访问此文件 elinks 192.168.1.111 (以本机测试为例),因为不会成功,所以最终会显示一个 deny的报错回传信息 为了收集这个报错信息,需要这样处理

 

elinks 192.168.1.111 -dump  如图:

技术分享

技术分享

 

8,因为对系统 操作的所有日志报错广场均是在/var/log/messages  我们只需grep出 setroubleshoot那一行即可看到报错的真实内容

 

技术分享

 

技术分享

 

总结:1 所有操作之前需要在配置文件里面需要将SElinux的状态改为enforcing

          2.在根目录和在 /var/www/html/下新的文件或文件夹,其安全性文本的type是不一样的,

             因而导致在访问时受限 (若想要破除受限,restorecon target-file 或 在/var/www/html下新建一下文件,用chcon -t (字段改成和新建字段一样的) index.html  )

 

          3.此文档的书写只是提供一个查看日志报错的参考,给我们判断问题提供一个思路

 

谢谢各位。

               

 

 

本文出自 “技术成就人生” 博客,请务必保留此出处http://promot.blog.51cto.com/1029077/1657485

郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。