如何限制php脚本访问父主机目录

如何限制php脚本访问父主机目录

我有一台安装了 apache2.2 和 php5 的 debian linux 服务器。
我在 apache 服务器上创建了许多虚拟主机,每个虚拟主机都有一个单独的根目录,并且所有虚拟主机都启用了 php。现在我需要以某种方式限制每个虚拟主机中的 php 脚本,使它们只能在 v-host 根目录及其子目录(而不是父目录)中读取、写入或修改,另一方面,我想为每个虚拟主机上运行的脚本创建一个监狱。
例如,位于 /var/www/vhost1 中的 php 脚本只能访问同一目录和子目录中的文件,而它们无权访问 /var/www/host2 文件(不能读取或修改它们)。
有什么想法吗?

答案1

您需要为每个主机创建一个 jail,并通过 CGI/FASTCGI 运行 PHP,并将 chroot 设置为正确的目录。

答案2

好吧,我怀疑你甚至无法在单个 CPANEL/帐户内实现这一点。这太可怕了(你必须设置open_basedir,,甚至需要对 cgi/perl/cron-jobs 进行其他限制……allowOverridesafe_mode

您最好使用经销商(WHM)帐户,或 DirectAdmin(cpanel 替代品)多用户。

相关内容