通过联合部署DDoS高防和WAF提升网站防护能力

如果您的网站遭受的攻击既有流量型攻击,又混杂精巧的Web应用层攻击时(例如SQL注入、跨站脚本攻击、命令注入等)时,推荐您组合使用阿里云DDoS高防和Web 应用防火墙 WAF(Web Application Firewall),通过多层次的安全防护对抗多种潜在威胁。本文九河云介绍如何同时部署DDoS高防和WAF。

网络架构

DDoS高防和WAF同时部署时采用以下网络架构:DDoS高防(入口层,防御DDoS攻击)->WAF(中间层,防御Web应用攻击)->源站服务器(ECS、SLB、VPC、IDC等)。网站业务流量会先经过DDoS高防清洗,然后转发到WAF过滤Web攻击,最后只有正常的业务流量被转发到源站服务器,保障网站的业务安全和数据安全。业务流量的转发过程如下图所示。

注意事项

访问请求将经过多层中间代理才到达源站,源站不能直接获取请求的真实来源IP。

前提条件

  • 已购买DDoS高防实例。

  • 已购买WAF实例

    说明

    本文以WAF 3.0为例介绍,如果您使用的是WAF 2.0也可以参考本文操作。

步骤一:网站业务接入WAF

支持CNAME接入和云产品接入两种方式,接入前请您详细了解各接入方式的推荐场景。

  1. 登录Web应用防火墙3.0控制台。在顶部菜单栏,选择WAF实例的资源组和地域(中国内地非中国内地)。

  2. 在左侧导航栏,单击接入管理

  3. 通过CNAME接入云产品接入,将业务接入WAF。

    1. CNAME接入

      配置项

      说明

      负载均衡算法

      源站有多个服务器地址时,根据业务需要设置,以实现负载均衡。

      服务器地址

      填写网站对应的源站服务器的公网IP地址或源站域名,用于接收WAF转发回源的正常业务请求(回源请求)。

      HTTPS高级设置

      根据业务需要,设置是否开启HTTP回源、是否启用回源SNI。

      其它高级设置

      根据业务需要,设置是否启用流量标记、WAF回源到源站的超时时间、回源重试、回源长连接。

      1. CNAME接入页签,单击接入

      2. 配置监听向导页,完成如下配置后,单击下一步

        配置项

        配置说明

        域名

        填写您的网站域名。

        协议类型

        选择网站使用的协议类型并填写对应端口。每输入一个端口,按回车确认。

        说明

        • 选中HTTPS后,您还需要将网站域名关联的证书上传到WAF。

        • 选中HTTPS并配置证书后,您也可以根据业务需要,设置是否开启HTTP2、是否开启HTTPS的强制跳转、选择TLS协议版本、选择HTTPS加密套件。

        WAF前是否有七层代理(高防/CDN等)

        选择,并设置客户端IP判定方式

        • (默认)取X-Forwarded-For中的第一个IP作为客户端源IP

          WAF默认读取请求Header字段X-Forwarded-For(XFF)中的第一个IP地址作为客户端IP。

        • 【推荐】取指定Header字段中的第一个IP作为客户端源IP,避免XFF伪造

          如果您的网站业务已通过其他代理服务的设置,规定将客户端源IP放置在某个自定义的Header字段(例如,X-Client-IP、X-Real-IP),则您需要选择该选项,并在指定Header字段框中输入对应的Header字段。

          说明

          推荐您在业务中使用自定义Header存放客户端IP,并在WAF中配置对应Header字段。该方式可以避免攻击者伪造XFF字段,躲避WAF的检测规则,提高业务的安全性。

        更多配置

        根据您的业务,设置是否开启IPv6、是否开启独享IP,选择要使用的防护资源类型。

        资源组

        从资源组下拉列表中选择该域名所属资源组。如果不选择,则默认加入默认资源组

      3. 配置转发向导页,完成如下配置后,单击提交

      4. 接入完成向导页,获取WAF提供的CNAME地址。

    2. 云产品接入

      如果Web业务已启用阿里云应用型负载均衡(Application Load Balancer,简称ALB)、微服务引擎(Microservices Engine,简称MSE)、函数计算(Function Compute,简称FC),建议您选择SDK插件接入。如果Web业务已启用阿里云传统型负载均衡(Classic Load Balancer,简称CLB)上、云服务器(Elastic Compute Service,简称ECS),建议您通过反向代理集群接入

步骤二:网站业务接入DDoS高防

  1. 登录DDoS高防控制台。

  2. 在顶部菜单栏左上角处,选择地域。

    • DDoS高防(中国内地):选择中国内地地域。

    • DDoS高防(非中国内地):选择非中国内地地域。

  3. 在左侧导航栏,选择接入管理 > 域名接入

  4. 域名接入页面,单击添加网站,按照页面提示完成配置。

    配置项

    说明

    功能套餐

    选择要关联的DDoS高防实例的功能套餐。

    实例

    选择要关联的DDoS高防实例。

    一个网站域名最多可以关联8个DDoS高防实例,且只能关联同一种功能套餐下的多个实例。

    网站

    填写您的网站域名。

    协议类型

    选择网站支持的协议类型。

    说明

    • 选择HTTPS协议时,完成网站配置后,请上传网站域名使用的证书。

    • 选中HTTPS协议后,可以根据需要开启HTTPS的强制跳转、是否开启HTTP回源、是否启用HTTP2。

    启用OCSP

    选择是否启用OCSP(Online Certificate Status Protocol)功能。

    重要

    该功能适用于网站HTTPS业务。如果您已选择的协议类型包含HTTPS,推荐启用该功能。

    服务器地址

    • 域名在WAF上的接入模式为CNAME接入时,选择源站域名并填写步骤一中获取的WAF的CNAME地址。

    • 域名在WAF上的接入模式为云产品接入时,选择源站IP并填写源站服务器的公网IP。

    服务器端口

    根据协议类型,设置源站提供对应服务的端口。

    • HTTP协议、Websocket协议的端口默认为80。

    • HTTPS协议、HTTP2协议、Websockets协议的端口默认为443。

    您可以单击自定义,自定义服务器端口,多个端口间使用半角逗号(,)分隔。

    Cname Reuse

    仅DDoS高防(非中国内地)支持配置该参数。选择是否开启CNAME复用。

  5. 复制DDoS高防提供的CNAME地址。

步骤三:修改域名的DNS解析

请将域名解析指向DDoS高防提供的CNAME地址。以域名DNS托管在阿里云云解析DNS为例介绍,使用其他DNS服务商的域名解析服务时请参考配置。

  1. 登录阿里云云解析DNS控制台。

  2. 域名解析页面,定位到目标域名,单击操作列的解析设置

  3. 解析设置页面,定位到目标解析记录,单击操作列的修改

    说明

    如果要操作的解析记录不在记录列表中,您可以单击添加记录

  4. 修改记录(或添加记录)页面,选择记录类型CNAME,并将记录值修改为域名对应的DDoS高防CNAME地址。

  5. 单击确认,等待修改后的解析设置生效。

  6. 使用浏览器测试网站访问是否正常。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/512233.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

NumpyPython 笔记2 3.5

如果不是矩阵的话,也可以用索引 矩阵也可以 np.vstack 上下合并两个数组 np.hstack 左右合并两个数组 没看懂 np.array 可以合并三个 np.concatenate 可以在后面axis定制是在行还是列上进行合并 np.split(A,2,axis1):对哪个东西,分成多少块&#…

Linux安全加固功能

提示:工具下载链接在文章最后 目录 一.加固功能介绍二.配置加固功能1.配置安全加固功能1.1 开放目前设备监听的所有端口1.2 只开放80、443、20、21、22端口1.3 防火墙配置工具1.3.1 开放允许访问的端口1.3.2 删除允许访问的端口1.3.3 添加IP地址允许访问规则1.3.4 添加IP地址禁…

数据库设计革命:逻辑模型的演变与面向对象的突破

✨✨ 欢迎大家来访Srlua的博文(づ ̄3 ̄)づ╭❤~✨✨ 🌟🌟 欢迎各位亲爱的读者,感谢你们抽出宝贵的时间来阅读我的文章。 我是Srlua,在这里我会分享我的知识和经验。&#x…

Typescript的联合类型和交叉类型

联合类型 在 TypeScript 中,可以使用联合类型来定义对象接口,从而表示一个对象可以具有多种不同结构的类型。联合类型是或的关系!!! interface Circle {kind: "circle";radius: number; }interface Square {kind: "square";sideLe…

【C++干货基地】面向对象核心概念 | 访问限定符 | 类域 | 实例化 | 类对象模型

🎬 鸽芷咕:个人主页 🔥 个人专栏: 《C干货基地》《粉丝福利》 ⛺️生活的理想,就是为了理想的生活! 引入 哈喽各位铁汁们好啊,我是博主鸽芷咕《C干货基地》是由我的襄阳家乡零食基地有感而发,不知道各位的…

React报错 之 Objects are not valid as a React child

原文链接: 1、React报错之Objects are not valid as a React child 2、Objects are not valid as a React child error [Solved] 作者:Borislav Hadzhiev 以下文中涉及到的链接均来自于该作者,他写了很多相关的文章,可以多看看他的…

【MySQL】事务、锁

目录 事务案例场景模拟实现转账:从张三的账户转账500元到李四的账户SQL示例异常 什么是事务事务的特性,简称ACID 属性实现原理redo logundo log MySQL 中一条 SQL 更新语句的执行过程( InnoDB 存储引擎)事务的提交流程隔离性并发事务产生的问题事务隔离级…

MySQL基础-----SQL语句之DQL数据查询语句(上篇)

目录 前言 select基本语法 一、基础查询 1.查询多个字段 2.字段设置别名 3.去除重复记录 案例 二、条件查询 1.语法 2.条件 案例 三、聚合函数 1.聚合函数 2.语法 案例 前言 前面我们学习了DML和DDL语句,那么本期我们学习数据查询的语句(DQ…

并查集(数据结构)

并查集是一种数据结构,他的作用有两个: 1,合并:将两个子集合并成一个集合 2,查找:确定某个元素处在哪个集合 fa[x]存节点x的父节点 查找: 就是为了找到某个点的根节点,如果找到了…

LZO索引文件失效说明

在hive中创建lzo文件和索引时,进行查询时会出现问题.hive的默认输入格式是开启小文件合并的,会把索引也合并进来。所以要关闭hive小文件合并功能!

每日一练 | 华为认证真题练习Day192

1、下面是路由器RTB的部分输出信息,关于输出信息描迷错误的是: A. 接口上动态加入的组播组个数是1。 B. 加入的组播组地址是225.1.1.2 C. DISPLAY IGMP GROUP命令用来查看IGMP组播组信息,包括通过成员报告动态加入的组播组和通过命令行静态加入的组播组…

Python里的全局变量、局部变量、类的self.*

问题 困惑,leetcode第538题,写成下面这种,不能得到正确的答案: class Solution_a:def traverse(self, root, cur_sum):# 思路:中序遍历可以打印出有序的数组,那么反一下,先右后中再左就可以打…