【华安解密之DDoS攻防】18 流量引导方案之引流

digest [复制链接]
发表于 : 2017-2-7 09:21:10 最新回复:2019-11-06 00:55:26
10762 10
华安
华安 官方号

在前面的章节中我们介绍了华为Anti-DDoS解决方案的部署模式分为直路部署、旁路静态引流部署和旁路动态引流部署三种方式,除直路部署外,其它两种方式中我们的清洗设备都是处于旁挂位置,对于这样的部署,异常的流量要完成清洗并到达最终目的地还需要经过引流和回注两个过程。

0x01 概念

直路部署中,因为来回的流量都会经过设备转发,所以不需要经过特殊的操作;而当清洗设备在旁路部署时,检测设备检测到的有异常、有威胁的流量,会通过ATIC管理中心通知清洗设备对这些流量进行清洗,这就要求原有的流量要改变当前的路径,进入到旁挂的清洗设备上来,这个过程我们称之为引流。引流完成后,清洗设备会对引进来的流量进行清洗,即把异常、有威胁的流量剔除,留下正常的业务流量。清洗完成后,需要再把流量返回到原有的路径上,最终发送到目的地,这个返回流量到原路径的过程就是回注。

20170207091914456.png

0x02 分光和镜像

在详细介绍引流和回注之前,我们先来了解下分光和镜像的概念。

Anti-DDoS解决方案中,在流量清洗之前,我们都知道还有一个很重要的环节——检测,网络部署中,如果检测设备独立旁路部署,也需要将网络中的流量引导到检测设备上来。分光和镜像就是为检测设备引流的手段,不过我们引入的不是真实的流量,而是复制后的流量。这是因为检测设备只需要检测出流量中是否有威胁即可,至于检测的流量是真实的还是复制的是无所谓的,而且使用复制的流量不会影响正常业务的转发。

分光和镜像都是将流量复制一份到检测设备,但处理方式又不相同:

l  分光是通过分光器来完成的,它是一个独立的硬件,数据通过分光器后会将数据复制一份供检测设备使用,即原来的流量正常通行,同时分一股出来供检测设备分析。通过分光器复制流量时,不需要配置任何命令,也不需要外部能量,只要有输入光即可。但是,这也带来了一个缺点,那就是引入了一个故障点,同时也正是因为它是一个在线设备,所以在部署时,需要中断当前网络,对业务有一定的影响。

l  镜像分为端口镜像和流镜像,端口镜像是指将流经被监控端口的某个方向(入、出、双向)的所有报文复制到指定的目标端口进行分析。流镜像是在端口镜像的基础上增加了流分类条件,只复制满足特定条件的报文,过滤不关心的报文,提高报文分析设备的工作效率。对于Anti-DDoS检测设备来说,我们要分析所有进入网络的流量是否存在异常,所以我们一般都是通过端口镜像功能来复制流量。在端口镜像中:

n  被监控的端口称为:镜像端口

n  指定的目标端口称为:观察端口

20170207091931551.png 

端口镜像需要配置相关命令,如下图所示的Router1上我们需要配置如下命令,这里Router1以华为NE80E路由器为例,检测设备以华为AntiDDoS8000系列为例讲解相关配置。

20170207091959122.png

 

NE80E路由器

AntiDDoS8000系列

1.配置GE1/0/1为观测端口

<Router1> system-view

[Router1] interface gigabitethernet1/0/1

[Router1-GigabitEthernet1/0/1] port-observing observe-index 1

[Router1-GigabitEthernet1/0/1] quit

2.配置整板镜像的观测端口

[Router1] slot 3

[Router1-slot-3] mirror to observe-index 1

[Router1-slot-3] quit

3.GE3/0/0上使能上行端口镜像功能

[Router1] interface gigabitethernet3/0/0

[Router1-GigabitEthernet3/0/0] port-mirroring inbound

1.指定业务板子卡的检测功能

<AntiDDoS8000> system-view

[AntiDDoS8000] firewall ddos detect-spu slot 1 card 1

2.配置检测设备的接口功能

[AntiDDoS8000] interface gigabitethernet0/0/1

[AntiDDoS8000-GigabitEthernet0/0/1] anti-ddos detect enable

[AntiDDoS8000-GigabitEthernet0/0/1] anti-ddos flow-statistic enable

 

 

配置中,Router1上配置观测端口的索引号必须与该接口所在的接口板的槽位号一致。在slot 3上配置令mirror to observe-index 1命令后,此观测索引对应的观测端口将作为整个3接口板的观测端口,当此接口板上有接口进行镜像时,报文就会被镜像到这个整板镜像的观测端口上。完成上述配置后,端口GE3/0/0上接收的所有报文将被镜像到端口GE1/0/0上发往AntiDDoS8000系列检测设备。AntiDDoS8000系列检测设备需设置相应的检测板,以及在接口配置检测功能和开启流量统计功能。完成这些配置后,就可以对接收的流量进行分析检测了。

对比分光和镜像,它们各有优劣,具体对比如下表所示。

对比项

分光

镜像

适用场景

需要部署分光器,成本较高,常用于运营商网络。

需要在网络设备上增加观测端口,不需要额外部署其他设备或器件。成本低,常用于企业网络。

部署难度

需要安装分光器,安装简单。

需要在分流的网络设备上配置镜像功能,有一定难度。

对用户网络的影响

透明接入不影响原有网络拓扑。但分光会导致原来网络的光信号的光功率下降,会影响光信号的传输距离。

不影响原有网络拓扑。

对用户业务的影响

安装分光器时需要短暂中断业务。

配置镜像时不影响正常业务的转发。

 

网络部署中,请根据网络实际情况进行合理选择。

华为Anti-DDoS解决方案支持多种类型的检测设备,其中AntiDDoS8000系列、AntiDDoS1600系列检测设备是采用逐包检测的方法对流量进行检测,即对流量中的所有报文进行检测,所以通过分光和镜像功能将流量全部复制到检测设备上来。还有一些其他的检测设备,如华为NFA2000V,威睿GenieATM等,这类检测设备是逐流检测方式,它们的检测流量来源是通过各种流采集分析协议来完成的,比如CiscoNetflow协议,华为的NetStream协议等。这类流采集分析协议是对网络中不同的流进行提取,然后分类统计,最后将统计信息输出给检测设备进行分析检测,而不是像分光和镜像那样直接复制流量。关于这类协议的实现各厂商资料中都有详细的描述,本文中不进行具体的介绍。

0x03 引流

分光、镜像是复制流量输出给检测设备进行检测;流采集分析协议是提取流量特征,把符合条件的流统计信息给检测设备分析,这些措施都不会影响实际的业务流量转发。然而对于清洗设备来说,我们需要清洗的是实际业务流量中的威胁或异常内容,如果清洗设备旁挂,我们必须要改变原有的业务转发路径,把流量引导到清洗设备上来,通过分光和镜像等显然是不能完成的。那当清洗设备旁路部署时,为实现流量清洗,我们是如何引流的呢?

事实上,引流可分为静态引流和动态引流两种

l  静态引流:手动创建并下发引流策略到清洗设备引发引流,业务流量无论是否发生异常,都将改变原有流量的路径将流量引流到清洗设备。

l  动态引流:检测设备发现异常通告管理中心,管理中心自动生成引流策略并下发到清洗设备;攻击结束,管理中心下发取消引流策略到清洗设备。

但如果按照具体的配置方法来划分,可分为:策略路由引流和BGP引流。

l  策略路由引流:在引流的网络设备上配置策略路由,将目的地址为防护对象的流量发送到清洗设备。

l  BGP引流:通过在引流的网络设备和清洗设备上配置BGP实现引流。

策略路由引流通常用于静态引流方式,BGP引流根据配置的不同可以是静态引流方式,也可以是动态引流方式。

下面我们先从策略路由引流的具体实现和配置说起。

0x04 策略路由引流

策略路由(Policy-based Routing),也称为路由重定向(Redirect),顾名思义是指基于策略的路由机制。通常,路由设备是根据报文目的地址查找路由表进行报文转发的,而策略路由是一种依据用户制定的策略进行路由选择的机制,策略路由的操作对象是数据包,在路由表已经产生的情况下,不按照先行路由表进行转发,而是根据需要,依照某种策略改变其转发路径的方法。

策略路由引流,正是根据这种策略,改变报文原有的转发路径,引导流量到清洗设备上来。

在下图中,Router1为引流设备,为对到达防护对象的流量进行清洗,可以在Router1GE1/0/0接口配置策略路由,让从外网通过GE1/0/0接口到达防护对象的流量改变原有路径从GE1/0/1接口转发到清洗设备进行清洗。

20170316173905226.png

 

策略路由引流只需要在引流路由器Router1GE1/0/0上配置策略路由,无需在清洗设备上进行任何配置。Router1以华为NE80E路由器为例,具体配置如下:

1、定义流分类。

[Router1] acl 3001

[Router1-acl-adv-3001] rule permit ip destination 1.1.1.1 0

[Router1-acl-adv-3001] rule permit ip destination 2.2.2.2 0

[Router1-acl-adv-3001] quit

[Router1] traffic classifier class1

[Router1-classifier-class1] if-match acl 3001

[Router1-classifier-class1] quit

2、配置流行为并配置报文转发动作。

[Router1] traffic behavior behavior1

[Router1-behavior-behavior1] redirect ip-nexthop 10.1.2.2 interface GigabitEthernet 1/0/1

[Router1-behavior-behavior1] quit

3、定义流量策略并在策略中为类指定行为。

[Router1] traffic policy policy1

[Router1-trafficpolicy-policy1] classifier class1 behavior behavior1

[Router1-trafficpolicy-policy1] quit

4、在接口上应用策略路由。

[Router1] interface GigabitEthernet 1/0/0

[Router1-GigabitEthernet1/0/0] traffic-policy policy1 inbound

[Router1-GigabitEthernet1/0/0] quit

策略路由引流,配置比较简单,方便操作,但使用这种引流方式时,如果回注流量的链路Down了,业务流量还是会通过策略路由送到清洗设备上来,这样清洗后的流量又不能回注回去,势必造成业务的中断。所以,为了保证引流策略路由也能及时Down掉,我们可以在清洗设备上配置类似Link-group这样的功能,将引流和回注链路加入到一个Link-group中,形成联动,回注的链路Down了,引流的链路也及时Down掉,保证业务的正常转发。

除此之外,策略路由引流不考虑流量中是否存在异常,统一的将流分类中定义的所有流量都送到清洗设备进行处理,对于正常的流量来说也会转发到清洗设备上来,一方面影响了正常业务的转发效率,另一方面也会消耗清洗设备的部分资源,造成不必要的浪费。相比之下,BGP引流会更加高效智能。

0x05 BGP引流

BGP是一种用于自治系统ASAutonomous System)之间的动态路由协议,如何通过它来引流,其实是需要Anti-DDoS解决方案中多个设备间配合完成的。

BGP引流分为静态引流和动态引流两种(其中动态引流又分为自动和手动),它们的区别在于:前者无论检测设备是否检测到异常,管理中心都会生成针对防护对象IP地址/IP地址段的引流任务,这种引流任务需要由管理员手工创建;而动态引流是当检测设备检测到异常时,管理中心会自动生成引流任务,引流任务生成后系统会直接下发(自动)或者通过管理员手动下发(手动)到清洗设备。异常或攻击结束后,系统会自动取消引流。

不管是BGP的静态引流还是动态引流,管理中心都会下发一条引流任务到清洗设备,此时,清洗设备上会为每个防护对象自动生成一条32位主机UNR路由,此路由的下一跳为与清洗设备回注接口直连的路由设备的接口地址,即下图中Router1GE1/0/2接口地址。

生成路由后,清洗设备会将这条UNR路由引入到BGP中,并通过BGP发布给BGP PeerRouter1,此时,Router1上就会有一条目的地址为防护对象,下一跳为清洗设备的引流接口的32位主机路由。

后续Router1收到Internet发来的到防护对象的报文时,查找路由表,根据最长掩码匹配原则,优先会匹配这条路由,从而转发到清洗设备上来进行流量清洗。

20170207092059485.png

 

BGP引流需要在Router1、清洗设备和管理中心上进行配置,具体引流部分的配置如下。

首先,在管理中心界面上选择“防御 > 策略配置 > 引流”,创建引流任务,配置被保护的IP地址为1.1.1.1,子网掩码为255.255.255.255。单击“确定”。

然后在清洗设备上,设置32位主机UNR路由下一跳地址,这里的下一跳为Router1回注接口GE1/0/2IP地址。

[sysname]  firewall ddos bgp-next-hop 10.1.3.1

上述步骤配置完成后,清洗设备上会生成一条到达1.1.1.132位主机UNR路由,下一跳为10.1.3.1

[sysname] display ip routing-table

Route Flags: R - relay, D - download to fib                                    

------------------------------------------------------------------------------ 

Routing Tables: Public                                                          

        Destinations : 8       Routes : 8                                    

                                                                               

Destination/Mask    Proto  Pre  Cost       Flags NextHop         Interface     

       1.1.1.1/32  Direct   0    0            D   10.1.3.1  GigabitEthernet2/0/2

---- More ----

关于BGP部分的配置如下表,其中Router1以华为NE80E路由器为例。

NE80E

清洗设备

[Router1] bgp 100

[Router1-bgp] peer 10.1.2.2 as-number 100

[Router1-bgp] quit

[sysname] route-policy 1 permit node 1

[sysname-route-policy] apply community no-advertise

[sysname-route-policy] quit

[sysname] bgp 100

[sysname-bgp] peer 10.1.2.1 as-number 100

[sysname-bgp] import-route unr

[sysname-bgp] ipv4-family unicast

[sysname-bgp-af-ipv4] peer 10.1.2.1 route-policy 1 export

[sysname-bgp-af-ipv4] peer 10.1.2.1 advertise-community

[sysname-bgp-af-ipv4] quit

[sysname-bgp] quit

 

配置apply community no-advertise命令,用于设置团体属性,在BGP路由策略中应用后,通告对等体Router1接收此32位主机路由后不再对其他任何对等体发布此路由,因为此路由只用于对需要清洗的流量进行引流,对外发布可能会造成不可预知的影响,如路由环路等。

相比策略路由引流,BGP引流更加灵活,既能对防护对象静态引流,达到策略路由引流的效果,也能根据流量异常情况动态智能化引流,合理控制清洗设备的资源分配,方便管理员维护管理。

引流完成后,清洗设备会对异常流量进行清洗,如何清洗在前面的章节中已经说过,这里不在赘述。清洗后的正常流量需要通过回注过程让业务流量能够回到原有网络中。华为Anti-DDoS设备支持多种回注配置方法,在下节中我们将详细介绍。

 

返回汇总贴

本帖最后由 pub_huaaninfo 于 2017-03-16 17:40 编辑

本帖被以下专题推荐:

  • x
  • 常规:

点评 回复

跳转到指定楼层
kmyd
kmyd  大师 发表于 2017-2-7 11:48:29 已赞(0) 赞(0)

好资料,感谢分享!!
  • x
  • 常规:

点评 回复

Cai_n
Cai_n   发表于 2017-2-7 14:26:56 已赞(0) 赞(0)

感谢分享
  • x
  • 常规:

点评 回复

2105snow
2105snow   发表于 2017-2-7 14:28:05 已赞(0) 赞(0)

感谢华安
  • x
  • 常规:

点评 回复

xukun
xukun  精英 发表于 2017-2-7 14:28:37 已赞(0) 赞(0)

nice !
  • x
  • 常规:

点评 回复

fffancy
fffancy   发表于 2017-2-7 14:29:42 已赞(0) 赞(0)

【华安解密之DDoS攻防】18 流量引导方案之引流-2179505-1【华安解密之DDoS攻防】18 流量引导方案之引流-2179505-2
  • x
  • 常规:

点评 回复

lingzhen
lingzhen   发表于 2017-3-28 19:40:54 已赞(0) 赞(0)

DDOS在MPLS VPN网络中的引流和回注怎么来做呢?防护对象的流量在VPN通道里
  • x
  • 常规:

点评 回复

喀什葛尔胡杨
喀什葛尔胡杨   发表于 2019-1-24 14:41:43 已赞(0) 赞(0)

清洗设备将流量清洗完之后发送到路由设备,路由设备再查看路由又将流量发送到清洗设备,路由设备和清洗设备之间不是就出现环路了吗【华安解密之DDoS攻防】18 流量引导方案之引流-2857401-1
  • x
  • 常规:

点评 回复

user_3279241
user_3279241   发表于 2019-2-1 17:17:15 已赞(0) 赞(0)

喀什葛尔胡杨 发表于 2019-01-24 14:41 清洗设备将流量清洗完之后发送到路由设备,路由设备再查看路由又将流量发送到清洗设备,路由设备和清洗设备 ...
走的不同平面
  • x
  • 常规:

点评 回复

tyni
tyni   发表于 2019-8-14 09:42:23 已赞(0) 赞(0)

感谢分享
  • x
  • 常规:

点评 回复

福建龙田网络科技有限公司
12
返回列表
发表回复
您需要登录后才可以回帖 登录 | 注册

警告 内容安全提示:尊敬的用户您好,为了保障您、社区及第三方的合法权益,请勿发布可能给各方带来法律风险的内容,包括但不限于政治敏感内容,涉黄赌毒内容,泄露、侵犯他人商业秘密的内容,侵犯他人商标、版本、专利等知识产权的内容,侵犯个人隐私的内容等。也请勿向他人共享您的账号及密码,通过您的账号执行的所有操作,将视同您本人的行为,由您本人承担操作后果。详情请参看“隐私声明
如果附件按钮无法使用,请将Adobe Flash Player 更新到最新版本!
登录参与交流分享

登录参与交流分享

登录