Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/security/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何限制PHP';s对文档的文件访问\u根目录_Php_Security_Centos_Vhosts - Fatal编程技术网

如何限制PHP';s对文档的文件访问\u根目录

如何限制PHP';s对文档的文件访问\u根目录,php,security,centos,vhosts,Php,Security,Centos,Vhosts,是否可以将PHP的文件访问限制为其文档根?基本上,在我的工作服务器上,我们的域是一个文件结构,如: /home/something/domains/domain1/ /home/something/domains/domain2/ /home/something/domains/domain3/ /家/某物/域/域1/ /主页/某物/域/域2/ /家/某物/域/域3/ 现在,domain1上的任何脚本都可以读写/home/something/domains/中的任何内容,包括我们所有的其他域。我

是否可以将PHP的文件访问限制为其文档根?基本上,在我的工作服务器上,我们的域是一个文件结构,如:

/home/something/domains/domain1/ /home/something/domains/domain2/ /home/something/domains/domain3/ /家/某物/域/域1/ /主页/某物/域/域2/ /家/某物/域/域3/ 现在,domain1上的任何脚本都可以读写/home/something/domains/中的任何内容,包括我们所有的其他域。我想限制对域1中脚本的文件访问仅限于该域

服务器由mediatemple托管,它是他们的网格服务,因此我没有根访问权限,甚至没有vhost-config访问权限。我们可以更改php.ini,我知道它提供了open_basedir,但这并不能解决我的问题,因为我只能限制对/domians/而不是单个域的文件访问。谢谢你的帮助

我真正想做的是:


该服务器最近遭到黑客攻击,黑客正在覆盖域/.htaccess,这影响了我们所有的网站。我们有很多网站,其中很多都有很多糟糕的代码。他们上传了WSO,这是一个黑客后门/外壳,让他们可以完全访问所有内容。我不知道他们是如何获得访问权限的,我想可能是因为timthumb漏洞,数百万行错误代码中的一行,或者他们只是不知何故获得了我们的FTP密码。我们更新了旧的timthumbs,更改了密码并删除了我们发现的所有坏文件,但由于他们发现的任何漏洞仍有可能存在于服务器上,或者我们错过了一些后门,我至少想限制他们访问包含漏洞或未找到后门的实际域。

我最初的想法是为每个虚拟主机设置权限(即使您必须要求您的主机管理员为您设置),但我怀疑这是否可行,因为


经过更多的考虑,我能想到的配置您的设置并获得您想要的最接近的方法是为每个vhost设置chroot-jailed用户帐户,并让您的Web服务器通过以下机制使用这些用户帐户:,我只能假设您的主机提供商在设置时遇到问题。

服务器的操作系统是什么?您熟悉配置SELinux吗?它听起来并不是一个解决黑客问题的解决方案。服务器是Cent OS,但我们非常有限,因为它是一个奇怪的共享托管环境。我知道解决方案是审核代码,确保我们不会让人们上传php文件或通过不安全的做法获得访问权限,但不幸的是,我们有超过一百万行可怕的、不可读的代码,保护这些代码是不可行的。我已经搜索了eval并获得了数千次点击。我只是不知道该怎么办。谢谢你的回复。我曾考虑在每个虚拟主机的基础上设置open_basedir,但当我询问禁用.htaccess文件和/或将url重写移动到虚拟主机文件的能力时,他们说“在网格上,您无法修改Apache web服务器配置。所有Apache指令都需要包含在.htaccess文件中。”因为他们甚至不允许我修改vhost配置,我高度怀疑他们会接受像被监禁的用户帐户这样的东西。我想他们的限制让你们几乎不可能在这方面帮助我:(你的问题可能会得到更好的答案,甚至。我是一个有点服务器管理经验的开发人员,一个真正的服务器管理员可能会给你一个更好的答案。或者他可能只是说你的主机是你的问题。:-)哈哈,谢谢。这个托管环境在整个考验过程中一直是个问题。我想我们只希望我们摆脱了他们的访问,如果它回来,移动到一个服务器,在那里我们有根访问权限来做我们需要做的事情。谢谢你抽出时间。