診斷CentOS中SELinux問題可按以下步驟操作:
getenforce
或sestatus
命令確認是否啟用及當前模式(Enforcing/Permissive/Disabled)。/var/log/audit/audit.log
,用ausearch -m avc -ts recent
過濾最近的拒絕事件。audit2why
解析日志,了解操作被拒絕的原因。setenforce 0
(切換至Permissive模式,僅記錄不阻止)。setenforce 1
。semanage
管理策略,如添加端口、文件上下文規則:semanage port -a -t http_port_t -p tcp 8080
(允許HTTP服務使用8080端口)。restorecon
恢復文件默認上下文:restorecon -R /path/to/directory
。setenforce 1
恢復強制模式,驗證問題是否解決。/etc/selinux/config
,設置SELINUX=disabled/enforcing
并重啟。工具推薦:
sealert
:圖形化分析日志,提供解決方案。audit2allow
:根據日志生成自定義策略模塊。操作前建議備份重要數據,優先通過調整策略而非直接禁用SELinux解決問題。