先说下本vps 搭建的网站采用的是nginx + php + mysql 组合。
今天无聊上传了一个php webshell到我的vps server上。 结果是惨不忍睹。整个linux服务器的文件全可见,安全问题被我忽视了。看看截图。
看看截图吧被webshell了连我的备份文件都要被xxx。上面也丢了几个虚拟主机,一旦有一网站有程序漏洞被webshell了整个服务器都沦陷了。到百度 google 去搜索了下nginx的权限控制问题,虽然看到了解决方案,不过太不爽了。nginx真的非常好用,不过现在的问题是要解决权限问题。期待nginx以后的版本能解决这个问题,虚拟主机上的安全配置问题。
找个时间准备把nginx换成apahce,鉴于个人站根本没上面流量Apache也绝对没问题。
http://key0.cn/index.php/archives/588
希望对你有用,我已经在虚拟主机生产环境使用
这个和Nginx是没有关系的,你怪错地方了。
主要是php-cgi,给不同的网站运行属于不同用户组的php-cgi就可以了。
做到不同的网站运行在不同的系统用户下,然后这个系统用户不给登录权限,php-cgi也用这个用户运行,开放一下啊/tmp的权限就行了,或者不同网站加载不同的php.ini,将tmp指定到网站目录下也行。
这样才是比较彻底的解决办法,像Apache的open_base_dir是不可靠的,有多种方法可以绕过。
我知道和nginx无关,标题的鳌头而已。
对linux用户权限控制一直不会,的好好学学。 感谢你的指点 [大笑]
phpcgi是 单独的 www 组 www用户的。 不清楚怎么设置权限而让php只在该主机下的web根目录·
其实不用如此
在nginx里面 配置下 location 就可以了 设置下 几个目录的执行权限
那就虚心求教了·
对于我们来说,安全是仅仅只是一个意识问题
nginx貌似也有很多优点啊。不过现在apahce运用很广泛。
是这样的。不过nginx设计的初衷并没不是apche这样的纯web server。在性能上nginx比apahce没的说。具体很多细节功能上nginx还有路要走·