阿里云CDN架构接入WAF应用防火墙案例实践

大致实现步骤:

​ 1.配置WAF防火墙接入网站(配置网站域名、协议类型、服务器地址、协议端口、负载算法)

​ 2.生成WAF CNAME域名地址

​ 3.在WAF网站接入中配置HTTPS证书,采用HTTPS方式访问网站。

​ 4.将CDN的回源地址调整为WAF的CNAME地址,回源到WAF。

​ 5.将将域名的DNS解析记录指向CDN的域名地址。

KodCloud是以HTTPS方式访问的,因此CDN、WAF、SLB都需要配置HTTPS,如果网站部署强转HTTPS,那么WAF回源SLB的端口号可以使用80。

1.网站架构变化

当前的网站架构为用户请求云盘系统,DNS会将域名解析到CDN提供的域名服务器,当请求的数据在CDN中不存在时,会向SLB回源获取数据。

image-20220216140907700

我们要为KodCloud云盘系统接入WAF应用防火墙,保障网站安全。

接入WAF后的架构图如下所示:DNS—>CDN加速—>数据回源到WAF—>数据回源到SLB。

image-20220216135147051

2.配置WAF应用防火墙

需要配置网站接入、WAF回源、配置HTTPS。

2.1.配置网站接入WAF防火墙

1)配置网站接入方式

点击网站接入—>域名列表—>网站接入。

接入方式为Cname手动接入。

image-20220216142958937

2)填写网站的信息

1)填写网站域名:kodcloud.jiangxl.com.cn

2)协议类型勾选HTTP和HTTPS以及HTTP2

3)勾选启用回源SNI与实际请求host保持一致(如果负载均衡器中有多个项目,这一项一定要勾选,跟随源地址转发)

4)服务器地址也就是要保护的地址、数据回源地址,这里填写负载均衡器的地址:47.95.212.251

5)服务器端口号HTTP为80、HTTPS为443

6)负载均衡算法选择轮询

7)WAF前是否有七层代理选择是,WAF前面会有CDN加速器,勾选取X-Forwarded-For中的第一个IP作为客户端源IP。

8)配置完成后点击下一步。

image-20220216143315220

2.2.WAF防火墙生成CNAME地址

配置完WAF网站接入后,在第二步会提供出WAF的CNAME地址,我们要将CNAME地址配置在CDN加速器中,此时先不进行配置。

WAF的CNAME地址:7wciklcupr28znnhkwrghcsgdjahwszt.yundunwaf1.com

image-20220216144901826

紧接着点击下一步完成网站接入WAF防火墙的配置,第三步会提示我们将WAF的地址加入到白名单,避免误拦。

image-20220216145005968

2.3.配置WAF防火墙HTTPS证书

网站接入WAF时选择了HTTPS协议,此时,需要在WAF防火墙中配置HTTPS证书,否则会无法访问程序。

1)在网站接入中找到kodcloud的网站,在源站信息一列点击上传证书。

image-20220216145305814

2)选择已有证书—>选中网站的域名证书即可

image-20220216145446420

3)证书添加完成。

image-20220216145522772

2.4.WAF防火墙开启HTTP回源SLB

在开始配置WAF时是没有这个选项的,当WAF配置完成后点击编辑时才有这个功能。

在网站接入列表中找到我们的网站点击操作一栏的编辑按钮。

进入编辑页面后,找到协议类型—>勾选开启HTTP回源,此时WAF回源SLB就会采用HTTP的方式。

要想让WAF采用HTTP的方式回源,必须要在SLB中关闭HTTP强转,否则网站请求会一直处于重定向状态导致网站无法访问

image-20220216145757153

由于我的网站是强转HTTPS,这里就不开启HTTP方式回源了。

3.配置CDN加速器回源WAF防火墙

1)进入CDN的域名管理页面—>基本设置—>找到之前添加的源站信息—>编辑。

image-20220216150219433

2)将源站信息修改为源站域名—>填写WAF的CNAME域名地址—端口使用443。

image-20220216150423252

3)CDN回源指向WAF配置完成。

image-20220216150502407

4.将域名DNS解析指向CDN的域名

解析在前面已经将域名指向了CDN的域名。

image-20220216151232733

5.测试网站是否能正常访问

此时kodcloud的网站架构已经接入了WAF防火墙,我们来测试一下网站是否能正常打开。

网站打开没问题。

image-20220216153312704

6.模拟攻击观察WAF的作用

目前网站接入WAF防火墙是可以正常访问的,但是我们并不能看出与之前有什么效果,我们现在来模拟网站共计,观察WAF的作用。

我们来模拟一个xss攻击,在我网站域名后面加上?alert('xss')模拟xss公攻击。

https://kodcloud.jiangxl.com.cn/index.php?alert(%27xss%27)

多访问几次就会出现如下图所示的页面,可以看到异常流量已经被WAF拦截了。

image-20220216154109511

这个用户的电脑多次尝试攻击我们的网站,已经被WAF拉入了黑名单,即使是正常的访问也无法成功。

image-20220216154725078

7.解除WAF的封禁的IP

高频率的工具kodcloud网站,会被WAF拦截并封禁,如上图所示,我们也可以人为解除封禁。

点击网站防护—>高频WEB攻击封禁—>解封当前封禁IP即可。

image-20220216155408674

再次刷新网站即可正常访问。

image-20220216155524318

8.查看WAF的防护记录

在WAF的总览中可以观察WAF拦截了多少入侵防护以及流量分析。

image-20220216154832313

在安全报表中也可以浏览。

image-20220216154936013

猜你喜欢

转载自blog.csdn.net/weixin_44953658/article/details/132845837