Chinaunix首页 | 论坛 | 博客
  • 博客访问: 24200
  • 博文数量: 20
  • 博客积分: 325
  • 博客等级: 一等列兵
  • 技术积分: 170
  • 用 户 组: 普通用户
  • 注册时间: 2011-11-11 17:31
文章分类

全部博文(20)

文章存档

2012年(20)

我的朋友
最近访客

分类: LINUX

2012-10-27 13:16:36

看到大家重炒古老的nginx的FAST-CGI解析PHP_PATH_INFO漏洞,真不知该做何感想,下面分享一段NGINX的配置代码,具体作用附有简单注释。

大家要记住一个原则,那就是:能执行php程序的目录一定不要开放读写权限,而可以读写的目录(比如上传)一定不要赋予php执行权限。

这段代码需要放在server段里面(较前位置,最好放在location / {...}前面),也可以存成一个文件在每个vhost里include一下。

代码:
# 2011 (C) cnpanel.org
# Disable visitors without agent
if ($http_user_agent ~ ^$) { return  412; }
# Disable possible Apache access files
location ~ /\.ht {deny  all;}
# Never can not visit or download files or DIRs starting with #
location ~ /\# {deny all;}
# Disable risk request in some DIRs for secure
location ~* /(image|images|img|imgs|upload|uploads|upimg|upimgs|upfile|upfiles|down|download|downloads|attachment|attachments|js|css|style|styles|tpl|template|templates|theme|themes|view|views|lang|language|languages|setting|settings|app|apps|include|includes|class|classes|mod|mods|model|models|lib|libs|control|controls|source|sources|plugin|plugins|data|datas|database|tmp|temp|ipdata|html|avatar|avatars)/(.*)\.(php|php3|php4|php5|cgi|asp|aspx|jsp|shtml|shtm|pl|cfm|sql|mdb|dll|exe|com|inc|sh)$ {deny all;}

【提示】Igor说过if clause和正则会降低一点点nginx的性能,极高并发时会比较明显 (但是谁的配置离的了这两样呢?)
【声明】这段代码的思路是网上综合而来,是我即将发布的lnmp一键脚本的关于nginx的配置的一个文件里面摘抄出来的,绝无雷同,保留权利。
最后再说一句,安全是相对的,是全方位、综合性的,nginx再安全也敌不过系统被人拿shell,或者如果网站程序本身就是筛子,那都根本不用费力气搞什么牛啊马啊的了
配置的最后一句有可能对某些冷门或自编程序不兼容
阅读(1339) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~