CDN教程

经常被DDOS/CC攻击?

2023-11-15 23:53


                                            




一、常见攻击方式

2.1 DDoS攻击

DDoS攻击是利用网络上被攻陷的电脑作为“肉鸡”,通过一定方式组合形成数量庞大的“僵尸网络”,采用一对多的方式进行控制,向目标系统同时提出服务请求,超出服务器的承载量,导致服务器崩溃的攻击技术。

简单的说,就是你的饭馆最多承载100个客人在店里面消费,当被人家恶意攻击时,突然有很多人往店里挤,不光是从大门进,还有后门,爬窗,各式各样的,导致店里没办法控制,并且人满为患,真正的消费者无法进入饭店消费,最后歇菜。

一般DDoS攻击有 NTP Flood、ICMP Flood、UDP Flood、SYN Flood、DNS Query Flood 等,由于专业描述过于复杂,此处不做详细介绍。

2.2 Cc攻击

cc攻击主要分代理cc和肉鸡cc,其目的都是通过控制大量的请求,访问受害主机的合法网页或接口,导致服务端应用层(如java的tomcat)无法正常响应,服务器CPU长时间处于100%状态,网络带宽被占满,数据库被拖死等情况。

简单的说,当你的饭馆被恶意cc攻击时,突然来了很多客人,他们虽然不爬窗不抄后门,但是仍然把你的大门给挤满堵死,真正的客人无法进入,人又多,饭馆的服务员忙不过来,最后歇菜。

这种攻击技术性含量高,见不到真实源IP,见不到特别大的异常流量,但服务器就是无法进行正常连接。所以cc攻击成本也相对高一些,如果不是真的有什么深仇大恨,一般不会持续多久。

二、DDoS攻击防护

3.1 理解DDoS攻击原理

首先我们要知道,最基础的网站部署是怎么实现的,用户通过浏览器访问域名,域名再转发到你的源服务器。

然后我们要了解DDoS攻击原理,他们攻击的,是你的源服务器,也就是你的饭馆门店。因为一般域名都是显示指向服务器的ip,也就是你的门店定位是暴露给客户的,所以攻击者是可以直接找到门店进行攻击。

3.2 前置路由服务器,保护源服务器

所以要防护DDoS攻击第一步,是要保护好我们的源服务器,不让对方知道我们的源服务器地址,即加一个前置路由服务器,一般我们是使用NGINX、Apache等软路由,部署如下图。 

3.3 路由服务器被打死怎么办

上述架构图中,只是保证了源服务器不被影响,但是前置路由服务器被打死,用户依然访问不了,所以有的朋友已经想到了,我们再换一个路由服务器,部署如下图。

但这种方式,必须要人工将域名转发配置重新改成新的路由服务器,并且域名转发最慢可能要10分钟,所以存在部分用户短时间内无法正常访问的弊端。

3.4 高富帅的完美做法

前面讲到的多路由服务器的方式,存在明显的体验差的弊端,那么有没有更好的方式呢?当然有,就是费点钱。比如阿里云,就有他们自己的高防服务,20000元包月,打底30G流量,超出的流量按量付费。 举个例子,这个月,你被攻击了5次,每次平均流量时100G,那么也就是说,你要额外再出 70G * 5 * 平均小时 的额外流量费用。(我一个搞游戏的朋友被同行恶意攻击,一个晚上的功夫,就是1万多的超额费用。。。),部署架构图如下。

3.5 想要有阿里云高防IP的服务又想节省成本

阿里云高防IP的做法,其实就是自己做了一套清洗规则,我们百度阿里云高防可以看到,很多竞价排名在前面的都是一些机房,他们的做法跟阿里云的做法原理也是差不多的,并且价格要比阿里云便宜不少,那么靠谱吗?

竞价排名嘛,羊毛出在羊身上,所以对于他们的同行来说,价格肯定也是偏高的,稳不稳定得看口碑了。我们之前做互联网金融的时候,被别人敲诈勒索,最后也是找到一个比较靠谱的机房做的防护,他们24小时在线查处问题,后面也一直处于比较清静的状态。

三、Cc攻击防护

4.1 理解Cc攻击原理

cc攻击不同于普通的DDoS攻击,玩的是合法的网络请求,也就是说他就是通过域名网页请求过去的,也是因为他本身就不需要绕过门面直接攻击源服务器,那么即使加上普通的前置路由服务器,也是没用的。

既然不需要隐式保护源服务器,那要怎么处理呢?

一般cc攻击都是有策略的,通过识别出当时攻击的策略,防护修改对应的应对策略即可。(当然,没点专业技术能力的,这个应对策略也是做不到的)

4.2 如何找到专业的Cc攻击策略防护

同样,也是使用类阿里云的高防IP,当服务器被攻击时,会提示你的服务器当前在被什么策略的cc攻击,对应的人为在高防管理后台修改防护策略即可应对。

另一个就是前面说的机房,他们也是同样的方式,只是因为接入了机房,被攻击的对象就是他们的服务器,所以就让他们机房自己修改策略应对就好了,你只需要观察你的客户是否可以正常访问即可。