selinux-denied

SELinux 拒绝的定位与修复

现象

服务启动或访问文件失败,ls -l 权限看起来正常,但 ausearch 里有 AVC denied。常见于自定义路径、非标准端口和容器挂载。

快速定位

getenforce
ausearch -m avc -ts recent
sealert -a /var/log/audit/audit.log
ls -Z /path/to/file
semanage fcontext -l | grep /path
semanage port -l | grep <port>
getsebool -a | grep <service>

常见根因

  1. 文件/目录的 SELinux 上下文类型不正确。
  2. 服务使用了非标准端口,端口没有打标签。
  3. 需要的布尔值未开启。
  4. 自定义应用缺少策略模块。
  5. 容器挂载卷的上下文或 :z/:Z 选项不对。

修复

相关命令