SELinux总有一天会阻止你访问你需要的东西,你要解决这个问题。SELinux拒绝文件、进程或资源访问有几个基本原因:
1一个贴错标签的文件。
2一个进程在错误的SELinux安全上下文中运行。
3政策错误。一个进程在编写策略时访问了一个意外文件,并生成了一条错误消息。
入侵的企图。
前三种情况我们都能处理好,第四种正是预期的表现。
首先安装setroubleshoot组件。有些信息说是默认安装的,但是我的CentOS5.5上没有。
Yum install setroubleshoot日志文件是解决任何问题的关键,SELinux也不例外。
SELinux默认省会通过Linux审计系统(auditd)将日志写入/var/log/audit/audit.log,默认开启该服务。如果auditd没有运行,
这些信息将被写入/var/log/messages。SELinux的日志都标有关键字AVC,这样就可以从其他信息中筛选出来。
从CentOS 5开始,您可以使用SELinux故障排除工具来帮助您分析日志文件,并将它们转换为人类可读的格式。
该工具包括一个以可读格式显示信息和解决方案的图形界面、一个桌面通知图标和一个setroubleshootd。
它负责查阅新的SELinux AVC警告,并发送给通知图标(如果X服务器没有运行,可以设置为邮件通知)。SELinux的故障排除工具是由setroubleshoot组件提供的,没有安装在省会。
该工具可以从系统菜单或命令行启动:
Sealert -b不运行X服务器的人可以生成报告供人们通过命令行阅读:
sealert -a /var/log/audit/audit.log /path/to/mylogfile.txt