Nginx限制目录访问

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

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

配置如下:
location ~* /admin/.*\.(action|jsp)?$ {
                proxy_pass  ;
                root   /opt/tomcat/service;
                index  index.jsp index.html index.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  301 1h;
                proxy_cache_valid  any 1m;
                proxy_temp_path /opt/nginxtemp;
                allow 192.168.1.23;
                allow 192.168.2.20;
                deny all;
}   
上述配置的意思是限制这个页面只允许被192.168.1.23、192.168.2.20两个IP来访问。
-The End-

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:http://www.heiqu.com/be9e3dcc20478c623dec28300be06d61.html