利用阿里云 DDoS、WAF、CDN 和云防火墙为在线业务赋能
在这篇博客中,我们将详细讨论使用阿里云 CDN 和安全产品保护您的在线业务所需的步骤。
方案描述
创新技术的快速发展为世界各地的在线业务带来了新的机遇。今天的人们不仅习惯了,而且依靠互联网来开展他们的日常生活,包括购物、玩游戏、看电影以及几乎所有其他事情。从2016年到2021年,全球互联网流量将增长3.2倍,复合年增长率为26%。2020 年,美国电子商务的增长增长了 30% 以上,加速了向在线购物的转变近 2 年。
然而,这也给企业在扩展/扩展以满足要求时带来了新的挑战。在线企业主正在密切关注他们的网站,因为页面加载时间的任何负面结果都会影响对话率。提高网站性能是DevOps团队始终执行的任务。
随着在线业务变得越来越先进,不断应对随之而来的安全威胁非常重要。以下是在线业务面临的 5 大安全威胁:
- DDoS 攻击
- 信用卡欺诈
- 恶意软件
- 恶意机器人
- 电子略读
托管安全性和更快的性能是当今在线业务为保护和推动更多业务成功而投入巨资的原因。
本文将为您介绍如何结合使用阿里云DDoS高防(高防)、Web应用防火墙(WAF)和云防火墙来保护您的在线业务。我们还将讨论如何使用阿里云CDN同时提高网站性能。
多层保护
阿里云有多种安全产品可供您选择,以保护您的在线业务。在本文中,我们将向您展示如何同时设置 DDoS、WAF 和云防火墙,同时启用 CDN,以加速在线业务最终用户体验。
客户有时不确定设置的顺序。建议使用多层设置,如解决方案图所示:
- DDoS 高防 IP 是最外层的防护。DDoS 防护支持两种模式。一种是始终在线模式,即所有流量首先定向到Anti-DDoS清洗中心,然后干净的流量返回网站源站。另一种模式是待机模式,客户可以在发现攻击时手动启用,另一种模式是监视模式,通过阿里云 Anti-DDoS 和 CDN 服务之间的交互自动触发流量重定向。在以下分步指南中,我们将向您展示如何设置手表模式。您可以在始终开启模式或待机模式下工作时引用它。区别在于您手动管理 DNS CNAME 配置。阿里云 DDoS 高防在中国抵御了 50% 的 DDoS 攻击。
- 接下来,清理 Anti-DDoS 清洗中心后,将请求流量清理到 CDN 节点。如果请求的内容缓存在 CDN 节点中,则 CDN 节点将直接响应最终用户。这可以显着缩短页面加载时间。如果 CDN 节点中没有内容缓存或内容是动态的,并且请求必须返回网站源站,则 CDN 节点会根据配置的 CDN 结构将请求传输到下一个 CDN 节点或源站。阿里云对TCP协议栈进行改造,提高实时数据传输的可靠性。实现秒级智能路由切换,避免数据传输过程中丢包。阿里云CDN是中国和亚洲顶级的CDN供应商之一。
- WAF 防护是在线业务的下一层防护。WAF可以抵御HTTP洪水攻击,过滤掉恶意机器人流量,保证网站源站的性能。它也是业务风险控制的工具,用于解决安全风险,例如滥用业务 API。阿里云 WAF 凭借在主动防御和基于机器学习的检测方面的优势,获得了 Gartner、Forrester、IDC 和 Frost & Sullivan 这四大研究公司的认可。它在大中华区拥有49%的市场份额。
- 如果您的源站是在阿里云中构建的,您可以使用阿里云的多种安全产品来保护源站的基础设施。阿里云防火墙集中管理控制从互联网到您业务的流量的策略。它还控制VPC网络之间的流量、高速通道实例上的流量以及基于VPN的远程访问产生的流量。云防火墙内嵌入侵防御系统(IPS),可以检测来自您资产的出站连接。阿里云防火墙还可以可视化网络流量和业务之间的访问,并可以存储最近六个月内生成的网络流量日志。
让我们开始构建这些多层保护。
步骤一:在源站前配置防火墙防护
内部网络和互联网之间的防火墙保护是必不可少的,是源服务器的第一层保护。
如果您在阿里云中设置了源站,则可以为源站配置安全组,从而控制源站的入站和出站端口。以下是安全组的最佳实践,Best practices of the security group (part 1) - Elastic Compute Service - Alibaba Cloud Documentation Center
云防火墙提供控制公网边界流量的公网防火墙、控制VPC间流量的VPC防火墙和控制ECS实例间流量的内墙防火墙。您可以使用云防火墙对安全组策略进行集中管理,并实现安全组间流量的可视化。
1.1 购买云防火墙。
1.2 在防火墙页面开启云防火墙服务。
1.3 单击访问控制页面右上角的创建策略,配置访问控制策略。
1.4 在入侵防御页面配置入侵防御策略。
1.5 在“流量分析”页面查看流量分析。您可以查看外部连接、互联网访问、VPC访问、入侵检测、IPS分析以及所有访问活动的流量分析。
步骤二:配置WAF
2.1 购买WAF
WAF 有四个版本:专业版、商业版、企业版和独家版。每个版本的容量和功能都不同。
下表是关于四个版本之间的容量差异。
有关功能差异,请参阅此文档,WAF deployment plans and editions - Web Application Firewall - Alibaba Cloud Documentation Center
2.2 添加网站到WAF
在WAF中添加网站时,您需要将网站的域名添加到WAF控制台,并修改DNS记录,将流向网站的流量跳转到WAF进行防护。
将源服务器 IP 或负载均衡器 IP 添加为“目标服务器”
对于“WAF 前面是否存在第 7 层代理(DDoS 防护/CDN 等)”的问题,请选中“是”。我们将在后续步骤中配置 CDN 和 Anti-DDoS。
2.3 配置WAF防护策略
Web应用防火墙提供多种防护功能,保护您的网站免受不同类型的攻击。其中,默认只开启了正则表达式保护引擎和HTTP Flood Protection。正则表达式防护引擎功能可保护您的网站免受常见的Web攻击,例如SQL注入、XSS、Webshell上传等。HTTP 洪水保护功能可保护您的网站免受 HTTP 洪水攻击。您需要手动开启其他功能并配置防护规则。有关更多信息,请在 Overview - Web Application Firewall - Alibaba Cloud Documentation Center 查看详细信息
2.4 为网站开通WAF
修改域名的DNS记录,将域名映射到WAF分配的CNAME地址。
您可以进行此 DNS 更改以验证 WAF 是否正常工作。由于我们将在下一步中配置 CDN 以连接到 WAF 服务,因此在验证 WAF 功能后,我们不需要更改此 DNS。
步骤三:配置CDN
在本说明中,我们配置 CDN 以提高网站性能。CDN 使用我们在上一步中配置的 WAF CNAME 作为源。
3.1 购买CDN
使用CDN服务前,您需要完成实名注册。
3.2 验证域名的所有权
首次将域名添加到阿里云内容分发网络(CDN)时,阿里云CDN会验证域名的所有权。如果您通过验证,阿里云CDN会识别您为域名的所有者。如果您再次将域名添加到阿里云CDN或将其子域名添加到阿里云CDN中,则无需进行所有权验证。您可以使用域名系统 (DNS) 记录或上传验证文件来证明所有权。在以下示例中,a.com 用于演示如何证明域名的所有权。
3.3 添加域名到CDN
选择在“源信息”中使用站点域,这是我们在上一步中配置的 WAF CNAME。
要在“仅限中国大陆”和“全球”地区加速,您的域名必须具有有效的 ICP 备案。
3.4 为域启用 CDN
将域名添加到阿里云内容分发网络(CDN)后,阿里云CDN会为该域名分配一个规范名称(CNAME)。要为域名开通阿里云CDN服务,您需要添加CNAME记录,将域名映射到CNAME。这样,发送到域名的请求就可以重定向到 CDN 节点。
您可以进行此 DNS 更改以验证 CDN 是否正常工作。由于我们将在下一步中配置 DDoS 高防来连接 DDoS 高防服务,因此在验证 CDN 功能后,我们不需要更改此 DNS。
步骤四:配置DDoS高防
阿里云提供多种DDoS防护产品。在下表中,您可以找到产品及其主要区别。
DDoS 原生防护是一种云原生防护,无需将外部流量重定向到清洗中心即可启用。这是最方便和推荐的保护。DDoS原生防护:BGP分流是面临容量攻击时最强大的工具,DDoS原生防护无法抵御攻击带宽。客户可以使用 BGP 公告将流量重新路由到阿里云清洗中心。
DDoS 防护服务是使用 DNS 重定向将流量重新路由到阿里云清洗中心的常规服务。DDoS高防服务有两个版本。DDoS高防服务区域为中国大陆,DDoS高防服务区域为中国大陆以外地区。阿里云清洗中心容量为 10 Tbps。
在本说明中,我们选择使用DDoS高防服务,因为我们的网站源站位于中国大陆的VPC中,并且大多数最终用户来自中国大陆。
4.1 购买DDoS高防
登录阿里云控制台,在“产品和服务”中搜索“DDoS高防”,进入DDoS高防控制台。在 Assets -> Instances 下,单击 Purchase Instances。
您需要选择以下选项进行购买:
- 基本保护 - 这是您为获得适当保护规模而预付的基本缓解能力。
- 突发保护 - 这是您获得的最大缓解能力。
- 业务规模 - 这是您在线业务的带宽容量。
- 标准功能或增强功能
- 要保护的域数
- 干净的QPS
- 要保护的端口数
4.2 将您的域添加到保护中
进入DDoS高防控制台,单击“配置”下的“网站配置”,单击“添加域名”。
您需要先根据下表选择功能方案。
有关如何添加域的详细说明,请参见 https://www.alibabacloud.com/help/doc-detail/143347.htm
选择“源站域”作为服务器IP,并使用我们在上一步中配置的CDN CNAME作为域名。
4.3 (可选)对于非基于 Web 的应用程序,创建端口转发规则。Configure port forwarding rules - Anti-DDoS - Alibaba Cloud Documentation Center
4.4 配置防护策略、通用策略和自定义策略。Protect website services - Anti-DDoS - Alibaba Cloud Documentation Center
4.5 将流量重新路由到DDoS高防清洗中心。如果您希望使用DDoS高防服务常开模式,可以通过DDoS高防CNAME修改域名CNAME的DNS记录。您还可以选择在发生攻击时进行更改,这称为待机模式。
如果您的源站使用阿里云服务,如弹性公网、CDN,您可以在需要时使用Sec-Traffic Manger进行DDoS防自动防护。
在本说明中,我们启用了 CDN,并选择使用监视模式。我们使用 Sec-Traffic Manager 实现 DDoS 高防 IP 和 CDN 之间的交互。如果没有攻击发生,正常流量会直接转发到CDN服务,不会增加延迟。当攻击发生时,流量会切换到DDoS高防IP进行清洗转发。
如下图所示,当每秒对 CDN 服务的请求超过 1000 时,可以触发 Anti-DDoS。
然后,我们将域 DNS CNAME 更改为 Sec-Traffic Manager CNAME,如下面的屏幕截图所示。
至此,我们完成了这款多层防护方案的配置,该方案同时使用云防火墙、WAF、CDN和Anti-DDoS。在实际项目中,您可以选择使用所有保护措施或部分保护措施。如果您对本分步指南有任何意见,请告诉我们。