CentOS SELinux故障排查步骤如下:
- 查看SELinux状态:用
sestatus或getenforce确认是否启用及当前模式(Enforcing/Permissive/Disabled)。 - 查看日志:通过
ausearch -m avc -ts recent或cat /var/log/audit/audit.log | grep avc定位拒绝操作的详细信息。 - 分析错误:用
audit2why解释日志中的拒绝原因,或用audit2allow生成策略模块。 - 临时禁用:用
setenforce 0切换至Permissive模式,验证是否为SELinux导致的问题。 - 调整策略:
- 用
semanage修改文件/端口/布尔值策略,如semanage fcontext调整文件上下文,setsebool修改服务权限。 - 用
restorecon恢复文件默认上下文。
- 用
- 永久生效:修改
/etc/selinux/config文件,设置SELINUX=disabled/permissive并重启。 - 工具辅助:安装
setroubleshoot生成可视化报告,辅助分析复杂日志。
操作前建议备份重要数据,生产环境谨慎修改策略。