灯火互联
管理员
管理员
  • 注册日期2011-07-27
  • 发帖数41778
  • QQ
  • 火币41290枚
  • 粉丝1086
  • 关注100
  • 终身成就奖
  • 最爱沙发
  • 忠实会员
  • 灌水天才奖
  • 贴图大师奖
  • 原创先锋奖
  • 特殊贡献奖
  • 宣传大使奖
  • 优秀斑竹奖
  • 社区明星
阅读:2613回复:0

Nginx限制目录访问

楼主#
更多 发布于:2012-08-27 15:07


Nginx限制目录访问



2个月之前部署的一套客户的项目,使用了lvs+nginx+tomcat做了集群,一共5台,效果不错,只是nginx配置起来稍显麻烦。
今天突然提出了一个问题,由于项目是放在公网,为了配合安全审计和自身的安全考虑,要限制站点中的后台管理页面只能允许被某几个IP访问,客户提出了解决方案貌似没看懂。。。要我们帮忙评估。。。

好吧,据我所知的有几种,无非在TCP/IP协议中的某一层做策略,比如可在4、7层做限制,比如硬件负载均衡器、防火墙等等;比如手头的这个软件伪集群(用不起radwaref5啥的),直接在nginx处理吧。


配置如下:

location ~* /admin/.*.(action|jsp)?${

                proxy_pass  http://tomcat;

                root  /opt/tomcat/service;

                index  index.jsp index.htmlindex.htm;

                proxy_redirect off;

               proxy_set_header Host $host;

                proxy_set_header X-Real-IP  $remote_addr;

                proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;

               proxy_next_upstream http_502 http_503 http_504 error timeout invalid_header;  

                proxy_cache nginx_cache;

               proxy_cache_key $host$uri$is_args$args;

               proxy_cache_valid  200 302 10m;

                proxy_cache_valid  3011h;

                proxy_cache_valid  any 1m;

               proxy_temp_path /opt/nginxtemp;

                allow192.168.1.23;

                allow192.168.2.20;

                deny all;

}  

上述配置的意思是限制http://host/admin/这个页面只允许被192.168.1.23、192.168.2.20两个IP来访问。





喜欢0 评分0
游客

返回顶部