首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >使用安全隔离在LAMP上运行多个站点

使用安全隔离在LAMP上运行多个站点
EN

Stack Overflow用户
提问于 2009-10-21 18:45:31
回答 3查看 3.3K关注 0票数 3

我一直在管理一些LAMP服务器,每个服务器上有2-5个站点。这些程序基本上属于同一个用户/客户端,因此除了通过易受攻击的守护程序或脚本进行攻击外,不存在任何安全问题。我正在建立自己的服务器,并想开始托管多个网站。我首先关心的是...与世隔绝如何避免c99脚本损坏所有虚拟主机?另外,我是否应该阻止该c99能够写入/读取其他站点的目录?(从另一个站点“猫”一个config.php,然后进入mysql数据库是很容易的)我的服务器是一个512M的1G的VPS。在免费的托管管理器中,有没有为我的VPS工作的小管理器?(这可能与我想要的安全方法兼容)目前我不打算托管超过10个网站,但我不接受客户端/黑客可以导航到不想要的目录,或者更糟糕的是,运行恶意脚本。FTP管理就可以了。我不想让SSH隔离的事情复杂化。

这种情况下的最佳实践是什么?基本上,托管公司怎么做才能睡个好觉?:)

非常感谢!大卫

EN

回答 3

Stack Overflow用户

发布于 2009-10-30 21:05:46

您应该在Apache配置中为每个虚拟主机使用PHP指令open_basedir,方法是添加以下行:

代码语言:javascript
复制
<VirtualHost x.x.x.x:80>
ServeName www.example.com
DocumentRoot /path/to/your/virtualroot
...
... usual stuff ...
...
php_admin_value open_basedir /path/to/your/virtualroot:/some/other/path
</VirtualHost>

这将限制所有PHP进程只能访问文件系统上的这个(或这些)路径。在其他位置打开文件将被禁止,甚至是通过chdir()或使用symbolik链接。

从PHP5.3.0开始,您也可以在运行时使用ini_set()提供此指令,但更好的做法是直接在您的vhosts.conf文件中应用此指令。

PHP Manual

票数 8
EN

Stack Overflow用户

发布于 2009-10-28 22:35:59

查看ITK MPM for Apache2.x:http://mpm-itk.sesse.net/

我已经在一些繁忙的网站上使用了几年了,没有任何问题。

票数 1
EN

Stack Overflow用户

发布于 2009-11-06 08:23:12

要实现终极隔离,可以考虑轻量级虚拟化( Linux上的OpenVZ、FreeBSD jails或类似的虚拟化)。它类似于原始虚拟机,但共享内核,因此不承担完全虚拟化的开销。轻量级虚拟机还可以以协作的方式共享磁盘空间,而不是每个虚拟机使用单独的磁盘映像,并且所有虚拟机都可以使用相同文件的单个副本。缺点是轻量级虚拟机总是运行相同的内核,即你不能在另一个操作系统中运行一个操作系统,这对你来说似乎不是问题。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/1600039

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档