56

未雨绸缪 | 一文简介 Azure Front Door

 4 years ago
source link: http://mp.weixin.qq.com/s?__biz=MzAwNTMxMzg1MA%3D%3D&%3Bmid=2654076977&%3Bidx=7&%3Bsn=6449b9bbf4b17feab706615540f100ca
Go to the source link to view the article. You can view the picture content, updated content and better typesetting reading experience. If the link is broken, please click the button below to view the snapshot at that time.

点击上方蓝字关注“汪宇杰博客”

Jf6ru2n.png!web

导语

昨天早晨微软服务器发生了核爆,Office 365,Bing,Azure DevOps全线完蛋。人类文明危在旦夕之际,微软美国的死士凌晨2点爬起来收福报,修好了服务器,拯救了全人类!究其原因是一个叫 Front Door 的服务部署了新版本,代码有毒,自动化测试没有发现故障,直接上线了。那么这个 Front Door 是个咩呀?今天我研究并实践了一番。真正的软粉,就要和微软同呼吸共命运,要爆一起爆!

Azure Front Door

通常,我们把网站部署到 Azure App Service 或者别家云,甚至自己的数据中心后,用户访问网站的过程非常简单,直接从客户端连接到我们的服务器。这里面会有几个问题。

首先是访问速度,比如我的博客在 East Asia 地区,那么美国用户访问速度一定会比中国用户慢。这个好解决,对于静态资源,我早就使用了 Azure CDN 来改善全球范围内的速度。然而 CDN 并不能解决所有问题,有些资源访问还是需要直接到网站服务器的连接。这时候物理位置上靠近用户的部署会有明显优势。Azure Front Door 就可以自动判断当前离用户最近的部署,并将用户转到该部署。

uiqEv2e.png!web

其次是防爆问题,比如香港废青摧毁了 East Asia 数据中心,Azure Front Door 能够检测到其中一个部署爆掉了,在几十秒到数分钟之内,将中国用户的流量切换到正常运行的部署上,用户最多感觉网站变慢,但依然可用。

jAbAZvi.jpg!web

另外是安全问题,黑客或自动化脚本经常会扫描互联网上的网站,试图用SQL注入、XSS等手段攻击网站。那么 Azure Front Door 自带的 WAF 防火墙可以识别并阻止这些攻击,包括DDOS、请求频率等。或者由于法律法规,你可能想屏蔽某一国家或地区对你网站资源的访问,WAF 也可以配置地区限制。

如何使用

首先,在All services 里找到并创建一个 Front Door 服务

NV7vUjU.png!web

第一步 Frontend hosts  就是用户的入口,你需要创建一个 自定义名称.azurefd.net 的入口,随后可以添加自己的域名。这个入口的意思也就是最终你需要给用户使用的URL。比如你的网站原本是:https://996.icu 你给它配了个 https://996icu.azurefd.net 那么用户访问后者的效果和访问前者是一样的。等全部配置完成后,你可以把域名切到 996.icu,对用户访问来说不会有任何变化。

iiqeEnI.png!web

在绑定自己域名的时候,Azure 还会免费赠送一个SSL证书:

NrMnAbI.png!web

第二步 Backend pools 是后台有哪些服务器,你可以选择 Azure App Service 里既有的网站或者存储账户, 也可以自定义到其他云或者自己的数据中心上,反正就是个URL而已,微软并不强制你要使用 Azure 一条龙。

r2IJBn2.png!web

由于我太穷,Azure上只买得起一个 instance,所以截图里我就配了一个后端服务器。各位在全球范围内有服务器的都可以加到这个列表里去,然后就能使用负载均衡功能了。

U7zyauZ.png!web

第三步是路由规则,可以根据自己需要来配置。

byEn6jB.png!web

防火墙在 Web application firewall 菜单底下可以找到,你可以创建一个或多个策略,用于不同的入口。

6RbymeZ.png!web

其中,微软免费赠送了一些符合OWASP规范的防火墙规则,比如防SQL注入、XSS、PHP漏洞以及JAVA漏洞的攻击(咦,.NET去哪儿了?我们就当.NET没有安全漏洞吧……)

B326fuV.png!web

当然,你也可以加自己的规则,比如封掉某个地区的IP之类的。为了避免不必要的麻烦,这里我就不截图我封了哪个地方了……

Vn6FRfJ.png!web

WAF 还可以点点鼠标限制请求频率而不用自己写代码996:

baaYnqE.png!web

落魄街头

用过 Azure 的朋友都知道一个字:贵。那么这个牛逼的 Front Door 使用以后,会不会导致我们落魄街头呢?

Azure 官网给出了价格计算表: https://azure.microsoft.com/en-us/pricing/details/frontdoor/

Front Door 本身主要流量计费

eiEBF3r.png!web

WAF 和 Front Door 分开计费

2eUFzi2.png!web

看起来并不会落魄街头!

想要了解 Azure Front Door 的更多操作,可以点击【阅读原文】,或访问微软官方文档:

https://docs.microsoft.com/en-us/azure/frontdoor/?WT.mc_id=AZ-MVP-5002809  


About Joyk


Aggregate valuable and interesting links.
Joyk means Joy of geeK