具有 NFS 共享的 SELinux 上下文

lys*_*rge 6 nfs selinux centos apache-2.2

我正在尝试在 2 个 CentOS 服务器(filesrv 和 websrv)之间为一个需要由 Apache 进程读取和写入的文件夹设置 NFS 共享。我在可写方面遇到了麻烦,我已将其范围缩小到 SELinux 配置:如果我setenforce 0在 NFS 客户端上,Apache 可以写入共享。

NFS 服务器的导出文件中的相关行是:

/data/files/sitefiles websrv(rw,sync,no_root_squash)


NFS 服务器上共享文件夹的 SELinux 上下文是:

system_u:object_r:httpd_sys_rw_content_t:s0


我在 NFS 客户端上的 fstab 中的条目是:

filesrv:/data/files/sitefiles /var/www/html/webroot/files nfs context="system_u:object_r:httpd_sys_rw_content_t:s0" 0 0


据我所知,这应该使用httpd_sys_rw_content_t上下文安装 NFS 共享,但是当我检查它时,它实际上是:

system_u:object_r:httpd_sys_content_t:s0


什么可能导致它对共享应用更严格的上下文?

HBr*_*ijn 9

简单的解决方案应该是使用 SELinux 布尔值httpd_use_nfs来允许您的网络服务器显示和写入存储在 NFS 共享上的内容:

setsebool -P httpd_use_nfs=1 
Run Code Online (Sandbox Code Playgroud)