SELinux:允许 Zend webapp 读取/写入 htdocs 之外的树

SELinux:允许 Zend webapp 读取/写入 htdocs 之外的树

我在 CentOS 服务器上运行了一个 Zend Web 应用程序,SELinux 以宽容模式运行(即记录访问控制决策/var/log/audit/audit.log但不强制执行)。该应用程序允许人们上传文件,这些文件保存在外部的目录结构中htdocs(例如/var/acme/myapp/files)。该应用程序需要写入和删除该目录中的文件,以及创建、修改和删除该目录下的目录。

FWIW,httpd 以 启动root,然后作为名为 的单独用户生成进程apache

我想将 SELinux 置于强制模式,但仍严格允许 Zend 应用程序执行上述 IO 操作。我还希望这些 SELinux 设置在重启后仍然有效。我该怎么做?

答案1

您需要重新标记该文件夹以使 httpd 可以写入。

如果 http 是唯一可以写入它的东西(比如 ftp 或 ssh),那么这应该可以工作。

semanage fcontext -a -t httpd_sys_rw_content_t '/var/acme/myapp/files(/.*)?'
fixfiles restore /var/acme/myapp/files

然后尝试写入文件夹,它应该可以工作。

相关内容