php安全设置之open_basedir 不指定

zzh , 2010/08/10 16:12 , 网站服务器 , 评论(0) , 阅读(2370) , Via 本站原创 | |
今天尝试了下php后门PhpSpy测试了下服务器安全性,发现竟然可以以Parent Directory的方式列出根目录,原来没有设置open_basedir.

于是马上编辑php的配置文件php.ini

vim /etc/php/etc/php.ini //为了方便我做软连接了,自己搜索下php.ini即可

取消open_basedir = 的注释,添加网站根目录位置,多个位置用冒号连接.

open_basedir = /var/www/web1:/var/www/web2:/var/www/web3

重启php

/etc/php/sbin/php-fpm restart

再次用PhpSpy测试搞定,php执行位置无法离开pen_basedir.

2010年5月10日12:51:51更新

改完之后Discuz部分上传功能无法正常使用:附件没有问题,不过不能上传图像.

估计Discuz上传图片的临时空间走的是php默认的,然而我没有将这个路劲添加到open_basedir中.

于是乎在php.ini中定义了upload_tmp_dir = , 然后将定义的目录添加到open_basedir中去重启php就OK了.