全球加速联动Web应用防火墙(WAF)和全局流量管理(GTM)实现企业ERP管理系统加速,基于云安全大数据能力,同时依托阿里巴巴优质BGP带宽和全球传输网络,实现全球网络就近接入和跨地域部署,为企业ERP管理系统提供一套高安全的跨地域加速方案。

前提条件

您已经注册了阿里云账号。如未注册,请先完成账号注册

背景信息

某企业ERP管理系统部署在德国(法兰克福)地域的阿里云上,后端服务器通过两个阿里云弹性公网IP对外提供服务,转发端口为9000端口。终端用户主要集中在中国香港和新加坡地域。终端用户跨地域访问ERP管理系统时经常出现文件数据传输交互慢、系统登录超时等问题,而且企业现有ERP服务架构无法进行灵活变动并易受到各类Web应用攻击,严重影响了企业ERP管理系统的安全性和可用性。为了解决此类问题, 您可以通过全球加速联动WAF和GTM,实现跨国访问请求就近接入阿里云加速网络,经过WAF的流量过滤和GTM的流量智能调度,提高跨地域ERP服务的安全性、可用性和互通效率。ERP架构3

如上图,您可以创建全球加速实例,设置中国香港和新加坡为加速区域,并部署WAF和GTM。部署完成后,WAF将按照配置的防护策略检测并过滤恶意访问请求,只放行合法请求到源站服务器;GTM将按照配置的访问策略帮您实现访问ERP管理系统的流量转发和对ERP管理系统服务器的实时健康检查,并能够根据健康检查结果实现故障隔离或流量切换。在本次场景中,中国香港和新加坡用户的访问请求先通过全球加速就近从中国香港和新加坡接入点进入阿里云加速网络,再经过WAF进行流量的检测和过滤,最后由GTM向源站服务器进行流量转发,并根据健康检查结果进行故障隔离或流量切换,实现ERP服务的高安全性和高可用性,并降低网络时延。

配置流程

配置流程

步骤一:创建全局流量管理实例

全局流量管理(GTM)可以帮助您实现用户访问应用服务的高并发负载均摊、应用服务的健康检查,并能够根据健康检查结果实现故障隔离或流量切换。

完成以下操作,创建GTM实例。
说明 首次使用全局流量管理,需要同意云资源访问授权,授权后全局流量管理产品将拥有对您云监控产品报警通知组的访问权限。详情请参见云资源访问授权
  1. 登录阿里云云解析DNS控制台
  2. 在左侧导航栏,单击全局流量管理
  3. 全局流量管理页面,单击创建实例
  4. 在购买页面,根据以下信息配置全局流量管理实例。
    1. 套餐版本:默认为标准版,且不支持修改。
      标准版套餐说明如下:
      • 支持应用服务IP地址健康检查:pingtcphttp(s)
      • 支持DNS Failover进行故障切换:主备切换、异常隔离。
      • 支持DNS按照区域进行智能解析。
      • 支持多个IP地址(包括云内/云外)轮询负载均衡。
    2. 购买数量:选择购买实例的数量。
    3. 购买时长:选择购买实例的时长。
  5. 单击立即购买完成支付。

步骤二:配置访问策略

访问策略可为不同网络或区域来源的访问用户设置不同的解析响应地址池,并最终实现用户就近访问接入和故障自动切换的效果。

完成以下操作,为GTM实例配置访问策略。

  1. 登录阿里云云解析DNS控制台
  2. 在左侧导航栏,单击全局流量管理
  3. 全局流量管理页面,找到目标全局流量管理实例,单击操作列下的配置
  4. 选择配置方法对话框,选择快速入门
  5. 访问策略配置向导下,根据以下信息配置访问策略。
    1. 策略名称:输入访问策略的名称。
    2. 解析请求来源: 选择解析请求来源。
      选中解析请求来源后,该区域的用户访问应用服务时会智能调度到所配置的后端服务器地址池。本方案选择全局
      说明
      • 如果只有一个访问策略,则访问策略必须选择全局
      • 如果有多个访问策略,则必须有一个访问策略中区域选择全局,否则可能会造成部分地区无法访问该应用服务。
      • 在其他访问策略中已勾选过的选项不能再勾选(选项会置灰)。
      • 若有多个访问策略,按运营商大陆地区设置解析请求来源的方式只能二选一,不能混用。
    3. 默认地址池:选择默认地址池。
      默认地址池是业务正常情况下,GTM将用户访问流量转发到的后端服务器地址池。

      本方案您需要先单击+新增地址,将德国(法兰克福)ERP服务器A的地址添加到默认地址池,并配置HTTP协议的健康检查,然后再选择默认地址池。健康检查配置详情请参见HTTP(S)health check地址池配置详情请参见地址池配置

    4. 备用地址池:选择备用地址池。
      备用地址池是在默认地址池中的服务器因故障不可用时,GTM将用户访问流量切换到的后端服务器地址池。

      本方案您需要单击+新增地址,将德国(法兰克福)ERP服务器B的地址添加到备用地址池,并配置HTTP协议的健康检查,然后再选择备用地址池。健康检查配置详情请参见HTTP(S)health check地址池配置详情请参见地址池配置

  6. 单击下一步

步骤三:配置基础信息

配置访问策略后,您需要配置GTM实例的基础信息,包括主域名信息、CNAME接入域名、负载均衡策略、全局TTL、报警通知组等相关信息。

  1. 基础信息向导下,配置基础信息。
    1. 实例名称:输入实例名称。
      实例名称是便于识别该实例用于某个应用服务的标识。
    2. 主域名:输入终端用户访问的域名。本方案输入www.example.de
    3. CNAME接入域名:选择接入域名的类型。
      • 系统分配接入域名:适用于后端服务地址池中都是阿里云地址或海外地址。
      • 自定义接入域名:适用于后端服务地址池中有自建IDC的地址。

      本方案中,后端服务地址均为阿里云弹性公网IP,所以选择系统分配接入域名

    4. 均衡策略:选择GTM的均衡策略。
      • 负载均摊:默认策略。是指当地址池内存在多个IP地址,由各个IP地址平均分配访问流量。
      • 加权轮询:如果应用服务的用户分布在全国或世界范围内,可以根据IP地址的处理能力,选择加权轮询策略。加权轮询可以实现将解析流量按照权重进行分配,在DNS查询请求时,IP地址按照预先设置的权重进行返回。

      本方案选择默认策略负载均摊

    5. 全局TTL:域名解析对应IP地址的生效时间。本方案选择1分钟
      GTM是以域名形式对外提供流量管理服务,全局TTL即域名对应IP地址信息在运营商DNS系统内的缓存生效时间,默认提供1分钟的TTL时间。如果使用自定义接入域名方式,全局TTL需要与自定义域名的云解析套餐支持的最小TTL保持一致。
    6. 报警通知组:当业务出现异常时,用于接收通知消息的联系组。
      说明
      • 如果您未配置报警通知组,请先前往云监控控制台设置。详细信息,请参见删除报警联系人或报警联系组
      • 如果您已经配置了报警通知组,但您使用子账号配置基础信息,请先使用主账号授权。授权成功后,子账号才能读取到报警通知组信息。
  2. 单击完成
基本信息配置完成后,系统会自动分配一个CNAME接入域名用于解析要调度的后端服务IP。cname

步骤四:开通Web应用防火墙

WAF基于云安全大数据能力,用于防御SQL注入、XSS跨站脚本、常见Web服务器插件漏洞、木马上传、非授权核心资源访问等OWASP常见攻击,并过滤海量恶意CC攻击,避免您的网站资产数据泄露,保障网站的安全与可用性。

本方案以包年包月为例,介绍如何开通WAF。

  1. 进入阿里云官网Web应用防火墙产品详情页,并登录您的阿里云账号。
  2. 单击包年包月购买
  3. Web应用防火墙(包年包月)页面,完成以下配置。
    1. 地域:选择WAF服务主机所在地域。
      本方案中访问流量经全球加速后转到WAF,选择海外地区
    2. 套餐选择:选择要开通的WAF服务的版本。
      不同WAF版本适用的业务规模和支持的防护功能不同。详细信息,请参见套餐和版本说明。本方案选择企业版
    3. 域名扩展包:指定要开通的域名扩展包数量。
      当您有多个域名(或超过10个子域名)需要接入WAF进行防护时,您可以开通域名扩展包。详细信息,请参见域名扩展包。本方案不购买域名扩展包。
    4. 带宽扩展包:指定要开通的带宽扩展包大小,单位Mbps。
      当您需要接入WAF进行防护的业务总带宽超过所选套餐规格时,您可以开通带宽扩展包。详细信息,请参见额外带宽扩展包。本方案选择不购买带宽扩展包。
    5. 域名独享资源包:指定要开通的独享IP数量。
      当您有重要的域名需要使用独立的WAF IP进行防护时,您可以开通域名独享IP资源包。详细信息,请参见独享IP包。本方案不购买域名独享资源包。
    6. 智能负载均衡:选择开启或关闭智能负载均衡。
      智能负载均衡通过多节点智能接入技术,助力业务支持多节点、多线路自动调度容灾,提高业务的可靠性。本方案选择关闭
    7. 日志服务:选择开启或关闭日志服务。
      日志服务将WAF所有的日志信息实时存储至日志服务存储空间中,同时提供查询分析和展示在线报表等功能。本方案选择关闭
    8. Bot管理:选择开启或关闭Bot管理功能。
      如果您需要缓解机器流量对业务造成的安全威胁,您可以开通Bot管理功能模块。详细信息,请参见设置爬虫威胁情报规则设置合法爬虫规则。本方案选择关闭
    9. APP防护:选择开启或关闭APP防护。
      如果您的业务支持原生APP端且存在可信通信、防机器脚本滥刷等安全需求,您可以开通APP防护模块。详细信息,请参见设置App防护。本方案选择关闭
    10. 可视化大屏服务:选择要开通的可视化大屏服务类型。
      如果您需要通过接入数据大屏来展示和分析网站的整体业务及安全状况,您可以开通可视化大屏服务。详细信息,请参见数据大屏。本方案选择未开启
    11. 产品专家服务:选择是否开通产品专家服务。本方案选择不开通。
    12. 购买时长:选择WAF服务的有效时长。
  4. 单击立即购买完成支付。

步骤五:添加网站配置

开通WAF后,您需要配置WAF防护网站的转发信息。

完成以下操作,通过DNS配置模式将被防护域名的访问流量指向WAF。

  1. 登录Web应用防火墙控制台
  2. 在顶部状态栏,选择WAF实例的地域。本方案选择非中国内地
  3. 在左侧导航栏,选择资产中心 > 网站接入
  4. 网站接入页面,单击网站接入
  5. 填写网站信息对话框,完成添加网站的配置。
    1. 域名:输入要防护的域名。 本方案输入www.example.de
      说明
      • 支持填写泛域名,例如*.aliyun.com。WAF将自动匹配该泛域名对应的子域名。
      • 如果同时存在泛域名和精确域名配置(例如*.aliyun.comwww.aliyun.com),WAF优先使用精确域名所配置的转发规则和防护策略。
      • 暂不支持添加.edu域名。如果您需要添加.edu域名,请加入钉群(钉群号:21715946),联系产品技术专家进行咨询。
    2. 协议类型:选中网站支持的协议类型。本方案选中HTTP
      说明
      • 如果网站支持HTTPS加密认证,请勾选HTTPS,并在添加网站后上传证书和私钥文件。详细信息,请参见添加域名
      • 勾选HTTPS后,可使用高级设置实现HTTP强制跳转和HTTP回源等功能,保证访问平滑。详细信息,请参见添加域名
      • 使用HTTP2.0协议,需要符合以下要求:
        • 您的WAF实例已升级至企业版或旗舰版。
        • 您已勾选HTTPS协议。
    3. 服务器地址:选择服务器地址类型,然后输入网站的源站服务器地址。
      支持IP地址其它地址格式。网站接入WAF后,WAF将过滤后的访问请求转发至该地址。本方案选择其他地址,然后输入GTM实例生成的CNAME,详情请参见步骤三:配置基础信息
    4. 服务器端口:配置网站的协议端口。
      WAF通过所配置的端口为网站提供流量的接入与转发服务,网站域名的业务流量只通过所配置的服务端口进行转发;对于未配置的端口,WAF不会转发任何该端口的访问请求流量到源站服务器,因此这些端口的启用和漏洞不会对源站服务器造成任何安全威胁。
      重要 配置的协议和端口必须与您所接入的网站业务源站IP(在WAF中配置的服务器IP地址)的协议和端口(在WAF中配置的服务器端口)一致,不支持端口转换功能。
      本方案输入自定义9000端口。
      说明 WAF默认支持以下端口:80/8080(HTTP)和443/8443(HTTPS)。企业版和旗舰版WAF实例支持更多的非标端口,且对被防护域名使用的不同端口的总数有相应限制。详细信息,请参见WAF支持的端口
    5. WAF前是否有七层代理(高防/CDN等):根据该网站业务的实际情况选择是否有七层代理(高防/CDN等)。本方案选择
    6. 负载均衡算法:如果配置了多个源站IP,勾选IP hash轮询。WAF将根据所选择的方式在多个源站IP间分发访问请求,实现负载均衡。
    7. 流量标记:输入一个空闲的Header字段名称和自定义Header字段值,用来标识经过WAF转发到源站的Web请求。流量经过WAF后,WAF在请求中添加此处指定的字段,方便您的后端服务统计信息。
      说明 如果Web请求中本身包含此处定义的头部字段,WAF将用此处的设定值覆盖原Web请求中对应字段的内容。
  6. 单击下一步。在修改DNS解析页面,单击复制Cname,记录下WAF分配的CNAME地址,为后面流量接入WAF做准备。
    WebCNAME
  7. 单击下一步。单击完成,返回网站列表
    说明 若您的服务器正在使用其他防火墙,请关闭或将下图中的WAF的地址加入其白名单,避免误拦。若您的服务器未使用其他防火墙,请忽略下图内容。
    WAF地址

步骤六:创建全球加速实例

全球加速是一款覆盖全球的网络加速服务,依托阿里巴巴优质BGP带宽和全球传输网络,实现全球网络就近接入和跨地域部署,减少延迟、抖动、丢包等网络问题对服务质量的影响,为全球用户提供高可用和高性能的网络加速服务。

完成以下操作,创建全球加速实例。

  1. 登录全球加速管理控制台
  2. 实例列表页面,单击创建加速实例
  3. 在购买页面,根据以下信息配置全球加速实例,然后单击立即购买
    1. 选择购买全球加速实例的规格。本方案选择小型Ⅱ。关于实例规格,请参见标准型全球加速实例规格
    2. 选择购买全球加速实例的时长。
    实例创建好,系统会自动分配一个CNAME用于解析要加速的后端服务的域名,请记录下此CNAME用于后续DNS解析时使用。CNAME

步骤七:购买并绑定基础带宽包

基础带宽包提供了覆盖全球的公网接入带宽和阿里云内网传输带宽。实现全球加速您需要购买基础带宽包并将基础带宽包绑定到全球加速实例。

完成以下操作,购买并绑定基础带宽包。

  1. 实例列表页面,单击购买基础带宽包
  2. 在购买页面,配置基础带宽包,然后单击立即购买完成支付。
    1. 带宽类型:选择购买基础带宽包的带宽类型。本方案精品加速带宽。
      基础带宽包支持标准加速带宽、增强加速带宽和精品加速带宽三种带宽类型。带宽类型不同,加速类型、加速后端服务和加速范围也不同,如下表所示。
      带宽类型加速类型加速后端服务加速范围
      标准加速带宽加速部署在阿里云上的应用
      • 标准型全球加速实例:
        • 阿里云公网IP
        • 云服务器ECS
        • 传统型负载均衡CLB(原SLB)
        • 应用型负载均衡ALB
        • 对象存储服务OSS
        • 交换机(vSwitch)
      • 基础型全球加速实例:
        • 传统型负载均衡CLB(原SLB)
        • 辅助网卡类型的弹性网卡ENI
        • 云服务器ECS
      默认的加速区域和后端服务区域都位于中国内地
      增强加速带宽
      • 加速部署在阿里云上的应用
      • 加速部署在非阿里云的应用
      • 标准型全球加速实例:
        • 阿里云公网IP
        • 云服务器ECS
        • 传统型负载均衡CLB(原SLB)
        • 应用型负载均衡ALB
        • 对象存储服务OSS
        • 交换机(vSwitch)
        • 自定义IP
        • 自定义域名
      • 基础型全球加速实例 :不涉及
      默认的加速区域和后端服务区域都位于中国内地
      精品加速带宽
      • 加速部署在阿里云上的应用
      • 加速部署在非阿里云的应用
      • 标准型全球加速实例:
        • 阿里云公网IP
        • 云服务器ECS
        • 传统型负载均衡CLB(原SLB)
        • 应用型负载均衡ALB
        • 对象存储服务OSS
        • 交换机(vSwitch)
        • 自定义IP
        • 自定义域名
      • 基础型全球加速实例 :
        • 传统型负载均衡CLB(原SLB)
        • 辅助网卡类型的弹性网卡ENI
        • 云服务器ECS
      默认的加速区域和后端服务区域都位于海外(如果要加速中国内地到海外的访问,需选择中国香港作为加速地域)
      说明
      • 对于标准型全球加速实例,专有网络类型ECS、专有网络类型CLB和ALB类型的后端服务默认不开放。如需使用,请向商务经理申请。
      • 基础型全球加速实例仅支持绑定带宽类型为标准加速带宽和精品加速带宽的基础带宽包,且终端节点后端服务类型仅支持辅助网卡类型的弹性网卡ENI、专有网络类型的CLB、云服务器ECS。
    2. 带宽峰值:选择购买基础带宽包的带宽峰值。本方案选择20 Mb
    3. 购买时长:选择购买基础带宽包的时长。
  3. 返回实例列表页面,单击已创建的全球加速实例ID。
  4. 单击带宽包管理页签。
  5. 基础带宽包区域,找到目标基础带宽包,单击操作列下的绑定
    绑定成功后,基础带宽包的状态变成可用20M精品带宽包

步骤八:添加加速区域

在购买基础带宽包后,您便可以添加加速区域,指定访问后端服务的用户的所在地域并分配加速带宽。

完成以下操作,添加加速区域。

  1. 实例列表页面,单击之前创建的全球加速实例ID。
  2. 在实例详情页,单击加速区域页签,然后选择需要进行访问加速的区域。本方案选择亚太
  3. 在加速区域页签下,单击添加接入地域
  4. 添加加速区域对话框,配置接入区地域,然后单击确定
    1. 地域:选择访问加速服务用户的所属地域。本方案选择新加坡
    2. 带宽:选择加速服务的地域带宽。本方案选择10 Mbps。
    3. 选择中国香港为加速地域,并为中国香港地域分配10 Mbps带宽。

加速区域添加成功后,全球加速会为每个加速区域中的地域分配一个加速IP,可用来加速用户访问。

步骤九:创建监听

监听负责检查连接请求。系统会根据您指定的端口和协议转发来自客户端的入站连接。

完成以下操作,为全球加速实例创建监听。

  1. 实例列表页面,单击步骤一中创建的全球加速实例ID。
  2. 在实例详情页,单击监听页签,然后单击添加监听
  3. 监听&协议页面,配置监听。
    1. 监听名称:输入监听的名称。 名称长度为2~128个字符,以大小写字母或中文开头,可包含数字、下划线(_)和短划线(-)。
    2. 协议:选择监听的协议类型。本方案选择TCP
    3. 端口:指定用来接收请求并向终端节点进行转发的监听端口,端口取值范围:1~65499。本方案输入9000
    4. 客户端亲和性:选择是否保持客户端亲和性。保持客户端亲和性,即客户端访问有状态的应用程序时,可以将来自同一客户端的所有请求都定向到同一终端节点。本方案选择源IP
    监听
  4. 单击下一步配置终端节点组。

步骤十:设置终端节点组

每个监听都关联一个终端节点组,通过指定要分发流量的地域,将终端节点组与监听关联。关联后,全球加速会将流量分配到与监听关联的终端节点组内的最佳终端节点。

完成以下操作,设置终端节点组。

  1. 节点组名称区域输入节点组名称。
  2. 选择终端节点组所属的地域,即请求要访问的目标服务器的所属地域。
    本方案选择德国
  3. 选择后端服务部署在阿里云还是非阿里云。本方案选择非阿里云
  4. 选择开启或关闭保持客户端源IP。开启后,后端服务器可以通过该功能获取客户端源IP。本方案选择关闭保持客户端源IP。
  5. 配置终端节点。
    1. 后端服务类型:选择自定义域名
    2. 后端服务:输入要加速的后端服务的域名。本方案输入WAF生成的CNAME,详情请参见步骤五:添加网站配置
    3. 权重:输入终端节点的权重,权重取值范围:0~255。全球加速根据您配置的权重按比例将流量路由到终端节点。
      警告 如果某个终端节点的权重设置为0,全球加速将终止向该终端节点分发流量,请您谨慎操作。
      德国域名节点组
  6. 单击下一步查看监听和终端节点组配置,确认无误后,再单击下一步

步骤十一:业务接入配置

添加全球加速的配置后,您必须更新DNS解析设置,将对应域名的DNS解析到全球加速分配的CNAME,使业务流量切换至全球加速。
说明 如果您使用其他DNS服务商的域名解析服务,请登录服务商系统修改网站域名的解析记录。

完成以下操作,将业务接入全球加速。

  1. 登录阿里云云解析DNS控制台
  2. 域名解析页面,找到目标域名,单击操作列下的解析设置
  3. 解析设置页面,找到要修改的解析记录,单击操作列下的修改
  4. 修改记录对话框,修改主机记录。
    1. 记录类型:修改为CNAME
    2. 记录值:修改为全球加速分配的CNAME地址,详情请参见步骤六:创建全球加速实例
    3. 其他设置保持不变。
    修改记录
  5. 单击确定

步骤十二:访问测试

完成以下操作,测试全球加速联动WAF和GTM后的防护和加速效果。

  1. 在接入地域(本方案为中国香港或新加坡)的电脑中打开浏览器。
  2. 输入ERP管理系统域名访问德国(法兰克福)地域部署的ERP系统服务。
  3. 在接入地域(本方案为中国香港或新加坡)的电脑中打开命令行窗口。
  4. 执行以下命令,查看数据包延迟情况。
    curl -o /dev/null -s -w "time_connect: %{time_connect}\ntime_starttransfer: %{time_starttransfer}\ntime_total: %{time_total}\n" "http[s]://<ERP系统域名>[:<端口>]"
    其中:
    • time_connect:连接时间,从开始到建立TCP连接完成所用的时间。
    • time_starttransfer:开始传输时间。在客户端发出请求后,到后端服务器响应第一个字节所用的时间。
    • time_total:连接总时间。客户端发出请求后,到后端服务器响应会话所用的时间。