互联网创业公司如何防御 DDoS 攻击?采用CDN服务

收集了发表于2015年
攻击者是控制一个足够大的分布式集群来发起攻击,各种杂七杂八的包,什么都会有。根本不在乎你开的什么服务,也没那耐心分析你有什么服务。比如哪怕你根本没开UDP的任何服务,但他就是发一大堆UDP的包,把你带宽占满。还有啥办法。

十多年前的OS还没法应付大量TCP并发连接,于是那个年代有个SYN flood攻击,就是一大堆SYN包尝试握手。现代也有,效果大不如前,但是仍然在大流量下可以阻塞受害者的通信能力。

更现实的问题在于,机房的总带宽有限。当你的服务器IP段受到攻击时,他会直接找上级接入商将发给你的包在主干网上都丢掉。此时虽然知道自己正在被DDoS攻击,但攻击包根本就没到机房,更别说服务器,于是只能是守着服务器,毫无流量,等待。

上级接入商大多是垄断国企,根本没耐心跟你做任何深层次合作,直接丢包是最简单方便的方法。同时,即便此时攻击者停止了攻击,你也不知道。而想要上级接入商重新开启给你的包转发,动则就是个一天的流程。而一旦发现攻击还没完,就立刻又是丢包。

那几年被攻击时,也火烧火燎的找办法。尝试将网站部署到云计算平台上,依靠对方提供的带宽冗余来顶。甚至可能只是拼短期带宽的费用。当时国内的云计算提供商试了好几家,最终都因为没有足够的带宽应对攻击而拒绝了我们。他们都是出于对果壳网的喜爱和免费帮忙的,能做到这一步也挺不容易了。

有人提到攻击弱点,我感觉真正这样花费精力去分析的攻击者其实不多见。不过大多攻击确实会避开一些明显抗攻击能力不错的点,比如很多网站的首页会做静态化,所以攻击首页就不划算。图片同理,对CPU消耗太小了。

几个常见的弱点:

1、登录认证
2、评论
3、用户动态
4、ajax api

总之涉嫌写数据库,联表查询,缓存涧出的都是好目标。

所以,回答就是:没有啥好办法,耐心等待吧。

看了其他几个回答提供的方案,分别分析一下:

1、拼带宽:或者说拼软妹币,这不是一点点钱能搞定的,果壳网彼时只买了不足100M带宽,所在早期机房总带宽也不足40G,攻击带宽都没见过低于10G的(机房的人后来告诉我的)。假设某便宜机房(肯定不在北上广深),带宽价格为100元/M*月,每月按峰值计费。则要买10G带宽顶一下,需要的月费是100万,100万……

2、流量清洗&封IP:如前述,要这么做的前提是攻击包至少要到你的机房。而机房自保的措施导致了数据包根本到不了机房,无解

3、CDN服务:现代CDN提供商还没有完善的动态网页加速技术,所以结果就是,你充其量利用CDN保住静态化的主页可以访问,其他任何动态网站功能就只能呵呵了。

 
 

DDoS攻击通过大量合法的请求占用大量网络资源,以达到瘫痪网络的目的。 这种攻击方式可分为以下几种:

1.通过使网络过载来干扰甚至阻断正常的网络通讯; 2.通过向服务器提交大量请求,使服务器超负荷; 3.阻断某一用户访问服务器; 4.阻断某服务与特定系统或个人的通讯。

CC攻击可以归为DDoS攻击的一种。他们之间的原理都是一样的,即发送大量的请求数据来导致服务器拒绝服务,是一种连接攻击。CC攻击又可分为代理CC攻击,和肉鸡CC攻击。代理CC攻击是黑客借助代理服务器生成指向受害主机的合法网页请求,实现DDoS,和伪装就叫:cc(Challenge Collapsar)。而肉鸡CC攻击是黑客使用CC攻击软件,控制大量肉鸡,发动攻击,相比来后者比前者更难防御。因为肉鸡可以模拟正常用户访问网站的请求。伪造成合法数据包。

解决方案:

1.采用多节点分布,解决各地区不同网络用户的访问速度 ,解决并发量减轻源服务器压力。

2.隐藏源站IP,确保网站不会受到攻击

3.防御cc,ddos,确保网站稳定性

4.咨询量、客户量、成单量能得到大幅度提升

使用方式:需要提供源站IP和域名,把域名解析到自动生成的记录值上即可。

当网站没有攻击时走的是加速节点,受到攻击时自动切换到高防节点

其他CDN防御是集群防御,单节点防御不高,使网站很容易受到攻击的影响,我们的CDN却是单个节点都有套餐防御的对应防御,除非是攻击超过套餐防御,不然网站不会受到影响。

CDN系统基于用户实际访问的IP地址判断用户位置,直接将用户访问指向响应速度最快的站点。整个系统管理简单,用户可通过GUI确定有哪些内容需要做分布式分发,系统会自动完成内容的复制、更新及数据库同步的全过程。并且,系统具有自诊断、负载均衡的能力,任何环节发生故障,不会影响整个系统的可访问性

发表于2018年10月

总的是依靠CDN解决

上一篇:Oracle取月份-不带前面的0


下一篇:Spring集成Solr搜索引擎