专栏名称: 运维帮
互联网技术分享平台,分享的力量。帮主一直坚信技术可以改变世界,从毕业到现在干了15年运维,有许多话要和你说。
目录
相关文章推荐
GitHubStore  ·  Docker镜像分析工具Dive ·  2 天前  
运维  ·  花 5 年时间,21 ... ·  5 天前  
InfoQ架构头条  ·  基于Java的无代码和低代码应用开发工具综述 ·  1 周前  
51好读  ›  专栏  ›  运维帮

Azure WAF防火墙工作原理分析和配置向导

运维帮  · 公众号  · 运维  · 2017-04-17 21:02

正文

作者:沙涛

转自:http://www.cnblogs.com/taosha/p/6716434.html 



本地数据中心往云端迁移的的趋势越来越明显,安全始终是最热门的话题之一。

本文讨论的内容是Azure WAF,即微软公有云Azure的Web application firewall(下均简称WAF)。内容概述:

  1. 什么是WAF

  2. Azure WAF功能和特点

  3. Azure WAF的工作原理

  4. 一步步配置WAF


1、什么是WAF

随着互联网的进一步发展,Web应用大行其道,承载了客户越来越多的应用,甚至各种核心应用,针对Web应用的"掘金行动"也越来越多,网上报道的各类受攻击事件呈直线上升趋势。WAF全称Web application firewall,就是网站应用程序防火墙,顾名思义是专门针对Web应用的防火墙,这是一个细分领域的针对性防火墙。

     

2、Azure WAF功能和特点

微软在云端提供了WAF功能,目前这个功能还仅仅在海外版提供使用,国内21V的版本还没有提供,不过海外有了,国内估计也快了,确实客户的刚性需求摆在这里呢。

WAF不仅仅只是防御Web的http访问,可以对Web应用做到全方位的立体防护。可以防范:

总结:微软WAF使用开源的通用OWASP 规则包进行防范,目前支持CRS 2.2.9和CRS 3.0两个版本的规则集。可以支持:

CRS规则集详细内容参见:https://www.modsecurity.org/crs/以及https://docs.microsoft.com/en-us/azure/application-gateway/application-gateway-crs-rulegroups-rules

注意:Azure数据中心自带防DDOS攻击,所以WAF没有防DDOS攻击的能力。

Azure WAF的特点是配置简单,功能强大,价格便宜;还可以将现有Application gateway快速升级为WAF。


3、Azure WAF的工作原理

这里要理解一下微软WAF的设计理念,专有名词和相关限制,这样在后面配置时就比较清晰。

从网络拓扑上来看,WAF是应用程序网关的一种,位置介于负载均衡器和后端服务器组之间,工作在OSI网络堆栈的最高层--第七层,如下图:

WAF可以分为前端捕获,规则设置和监控(大脑),规定动作(监控or阻断),日志存储/监控展现四大部分,这四个部分在Azure WAF都有一一对应处理单元如下图:

前端端口是前端流量入口点,绑定规则的监听器则负责将流量导向不同的后端服务器池,Azure WAF提供两种动作,一种是监控,即发现非法流量仅做记录;第二种是保护,发现非法流量后会拦截该流量,仅允许合法流量通过WAF;每个后端服务器池提供一个Web应用服务;


理解上文的专有名词,(吐槽一下各种名词多多,很容易搞晕)

  • Back-end server pool/后端服务器池:后台要保护的服务器池IP列表;每个池最大100台服务器,一个WAF最大支持20个后端服务器池;

  • Back-end server pool settings/后端服务器池设置:每个服务器池单独设置端口,协议等,注意配置会应用在该后端池的所有服务器上,针对不同应用建议设置不同的后端池;

  • Front-end port/前端端口:设置应用网关上的公共IP,所有流量通过这个IP进入网关,再由网关重定向到后端服务器池;注意一个WAF只有一个公网前端和内网前端;

  • Listener/监听器:监听器负责监听前端端口;一个WAF最大20个监听器;所有流量都必须经过监听器处理;可以设置多个监听器监听不同端口或者不同协议的流量;

  • Rule/规则:规则必须绑定到监听器方可发生作用,所有进来的流量经过规则裁定后,再到后端服务器池,每个监听器最大10条规则;规则有三个要素:监听器名,后端服务器池,http协议及端口设置。只有知道这些要素WAF才知道该把HTTP/HTTPS(也许是非缺省端口)流量导向哪一个后端服务器池。

  • Certificates/认证: 使用Https的时候会用到。

 

4、一步步配置Azure WAF

理论已经讲明白了,接下来配置非常简单,可以按照如下顺序配置:

第一步:首先你得先有个WAF,登陆Azure Global Portal在Application Gateway(应用程序网关)创建WAF;创建完成后如下图,前端IP已经自动生成了。

第二步:配置WAF

选择开启防火墙,防火墙模式就是动作模式,有两种,选择Detection监测模式,会记录流量,不会阻断非法流量;选择Prevention会主动阻断非法流量;

第三步:配置后端服务器池

后端服务器池就是Web应用服务器的IP或者域名,可以有多个后端池;在规则设置中区分流量导向哪个后端服务器池;

第四步:配置Http协议和端口

我们前面提到过规则的三要素,前端,后端,http配置,这里可以配置端口,如果你后端服务器池用的不是通用的80端口,这里一定要做一下配置;这里也可以设置HTTP or HTTPS。


第五步:配置监听器

如上图,针对不同端口的流量要用不同的监听器进行监听,一个WAF可以配置最大20个监听器;

第六步:配置规则

如果了解了WAF的工作原理,理解规则就非常容易,如前文所述,规则绑定在监听器上,根据流量的类型和端口再将流量导向到指定的后端服务器池,如下图所示,

到此为止,WAF就已经配置完成了,是不是非常简单,但是可以为您的Web应用加上全方位的保护,这下终于可以安心的睡个觉了。


结尾:Azure WAF功能非常强大,不但支持Web应用的安全防护,还可以支持多站点流量分发(一个WAF最大20个站点),还支持将站点不同内容比如图片PIC,视频Video等根据需要导向到不同的后端服务器等等,有这么强大的WAF您还在等什么,微软云海外用户可以赶紧用起来啦。


  运维帮本周六(4月22号)技术活动 
  期待与你线下相见 

北京站主打「安全」

长按识别二维码报名

上海站主打「容器」

长按识别二维码报名