可以说,DDoS是目前最凶猛、最难防御的网络攻击之一。现实情况是,这个世界级难题还没有完美的、彻底的解决办法,但采取适当的措施以降低攻击带来的影响、减少损失是十分必要的。将DDoS防御作为整体安全策略的重要部分来考虑,防御DDoS攻击与防数据泄露、防恶意植入、反病毒保护等安全措施同样不可或缺。

首先,防御DDoS攻击是一个系统化的工程,仅仅依靠某种操作、某个服务就实现全垒打很傻很天真,就如同预防流行感冒一样,既要穿着保暖,又要注意饮食,还要加强锻炼。根据攻击流量大小等实际情况灵活应对,采取多种组合,定制策略才能更好地实现防御效果。毕竟,攻击都流行走混合路线了,防御怎么还能一种功夫包打全能。

其次,由于DDoS攻击和防御都面临着成本开支,当我们的防御强度逐步增加,攻击成本也对应上升,当大部分攻击者无法持续而选择放弃,那防御就算成功了。也因此我们需要明白,防御措施、抗D服务等都只是一种“缓解”疗法,而不是一种“治愈”方案,我们谈防御是通过相应的举措来减少DDoS攻击对企业业务的影响,而不是彻底根除DDoS攻击。

基于以上,我们将从三个方面(网络设施、防御方案、预防手段)来谈谈抵御DDoS攻击的一些基本措施、防御思想及服务方案。

一.网络设备设施

网络架构、设施设备是整个系统得以顺畅运作的硬件基础,用足够的机器、容量去承受攻击,充分利用网络设备保护网络资源是一种较为理想的应对策略,说到底攻防也是双方资源的比拼,在它不断访问用户、夺取用户资源之时,自己的能量也在逐渐耗失。相应地,投入资金也不小,但网络设施是一切防御的基础,需要根据自身情况做出平衡的选择。

  1. 扩充带宽硬抗
    网络带宽直接决定了承受攻击的能力,国内大部分网站带宽规模在10M到100M,知名企业带宽能超过1G,超过100G的基本是专门做带宽服务和抗攻击服务的网站,数量屈指可数。但DDoS却不同,攻击者通过控制一些服务器、个人电脑等成为肉鸡,如果控制1000台机器,每台带宽为10M,那么攻击者就有了10G的流量。当它们同时向某个网站发动攻击,带宽瞬间就被占满了。增加带宽硬防护是理论最优解,只要带宽大于攻击流量就不怕了,但成本也是难以承受之痛,国内非一线城市机房带宽价格大约为100元/M*月,买10G带宽顶一下就是100万,因此许多人调侃拼带宽就是拼人民币,以至于很少有人愿意花高价买大带宽做防御。

  2. 使用硬件防火墙
    许多人会考虑使用硬件防火墙,针对DDoS攻击和黑客入侵而设计的专业级防火墙通过对异常流量的清洗过滤,可对抗SYN/ACK攻击、TCP全连接攻击、刷脚本攻击等等流量型DDoS攻击。如果网站饱受流量攻击的困扰,可以考虑将网站放到DDoS硬件防火墙机房。但如果网站流量攻击超出了硬防的防护范围(比如200G的硬防,但攻击流量有300G),洪水瞒过高墙同样抵挡不住。值得注意一下,部分硬件防火墙基于包过滤型防火墙修改为主,只在网络层检查数据包,若是DDoS攻击上升到应用层,防御能力就比较弱了。

  3. 选用高性能设备
    除了防火墙,服务器、路由器、交换机等网络设备的性能也需要跟上,若是设备性能成为瓶颈,即使带宽充足也无能为力。在有网络带宽保证的前提下,应该尽量提升硬件配置。

二、有效的抗D思想及方案

硬碰硬的防御偏于“鲁莽”,通过架构布局、整合资源等方式提高网络的负载能力、分摊局部过载的流量,通过接入第三方服务识别并拦截恶意流量等等行为就显得更加“理智”,而且对抗效果良好。

  1. 负载均衡
    普通级别服务器处理数据的能力最多只能答复每秒数十万个链接请求,网络处理能力很受限制。负载均衡建立在现有网络结构之上,它提供了一种廉价有效透明的方法扩展网络设备和服务器的带宽、增加吞吐量、加强网络数据处理能力、提高网络的灵活性和可用性,对DDoS流量攻击和CC攻击都很见效。CC攻击使服务器由于大量的网络传输而过载,而通常这些网络流量针对某一个页面或一个链接而产生。在企业网站加上负载均衡方案后,链接请求被均衡分配到各个服务器上,减少单个服务器的负担,整个服务器系统可以处理每秒上千万甚至更多的服务请求,用户访问速度也会加快。

  2. CDN流量清洗
    CDN是构建在网络之上的内容分发网络,依靠部署在各地的边缘服务器,通过中心平台的分发、调度等功能模块,使用户就近获取所需内容,降低网络拥塞,提高用户访问响应速度和命中率,因此CDN加速也用到了负载均衡技术。相比高防硬件防火墙不可能扛下无限流量的限制,CDN则更加理智,多节点分担渗透流量,目前大部分的CDN节点都有200G 的流量防护功能,再加上硬防的防护,可以说能应付目绝大多数的DDoS攻击了。

  3. 分布式集群防御
    分布式集群防御的特点是在每个节点服务器配置多个IP地址,并且每个节点能承受不低于10G的DDoS攻击,如一个节点受攻击无法提供服务,系统将会根据优先级设置自动切换另一个节点,并将攻击者的数据包全部返回发送点,使攻击源成为瘫痪状态,从更为深度的安全防护角度去影响企业的安全执行决策。

三.预防为主保安全

DDoS的发生可能永远都无法预知,而一来就凶猛如洪水决堤,因此网站的预防措施和应急预案就显得尤为重要。通过日常惯性的运维操作让系统健壮稳固,没有漏洞可钻,降低脆弱服务被攻陷的可能,将攻击带来的损失降低到最小。

  1. 筛查系统漏洞
    及早发现系统存在的攻击漏洞,及时安装系统补丁,对重要信息(如系统配置信息)建立和完善备份机制,对一些特权账号(如管理员账号)的密码谨慎设置,通过一系列的举措可以把攻击者的可乘之机降低到最小。计算机紧急响应协调中心发现,几乎每个受到DDoS攻击的系统都没有及时打上补丁。统计分析显示,许多攻击者在对企业的攻击中获得很大成功,并不是因为攻击者的工具和技术如何高级,而是因为他们所攻击的基础架构本身就漏洞百出。

  2. 系统资源优化
    合理优化系统,避免系统资源的浪费,尽可能减少计算机执行少的进程,更改工作模式,删除不必要的中断让机器运行更有效,优化文件位置使数据读写更快,空出更多的系统资源供用户支配,以及减少不必要的系统加载项及自启动项,提高web服务器的负载能力。

  3. 过滤不必要的服务和端口
    就像防贼就要把多余的门窗关好封住一样,为了减少攻击者进入和利用已知漏洞的机会,禁止未用的服务,将开放端口的数量最小化就十分重要。端口过滤模块通过开放或关闭一些端口,允许用户使用或禁止使用部分服务,对数据包进行过滤,分析端口,判断是否为允许数据通信的端口,然后做相应的处理。

  4. 限制特定的流量
    检查访问来源并做适当的限制,以防止异常、恶意的流量来袭,限制特定的流量,主动保护网站安全。

对抗DDoS攻击是一个涉及很多层面的问题,抗DDoS需要的不仅仅是一个防御方案,一个设备,更是一个能制动的团队,一个有效的机制。我们都听过一句话——god helps those who help themselves. 天助自助者。因此,面对攻击大家需要具备安全意识,完善自身的安全防护体系才是正解。随着互联网业务的越发丰富,可以预见DDoS攻击还会大幅度增长,攻击手段也会越来越复杂多样。安全是一项长期持续性的工作,需要时刻保持一种警觉,更需要全社会的共同努力。

转载自:https://zhuanlan.zhihu.com/p/30150531

抗D十招:十个方法完美解决DDoS攻击防御难题的更多相关文章

  1. Discuz论坛UCenter无法登录问题修复方法完美解决无限刷新问题

    级20141225版本后,出现UC无法登录问题[完美]解决方法.自圣诞节发布 Discuz! X3.2 R20141225  小编手头多个站点也都在升级后出现了,后台登录[ UCenter]假死情况, ...

  2. 隐藏服务器真实IP的方法来防止DDOS攻击

    2017-08-22 作者:小唐 点击: 10,500次 在无盘系统的环境下,服务器软件存在漏洞,就容易受到DDOS攻击,隐藏服务器真实IP是解决问题最好的方法,下面小编与大家分享一下隐藏服务器真实I ...

  3. Fat Jar - Myeclipse插件安装使用方法- 完美解决

    Eclipse可以安装一个叫Fat Jar的插件,用这个插件打包非常方便,Fat Jar的功能非常强大. 工具/原料 Eclipse Kepler Fat Jar 方法/步骤 1 Fat Jar功能非 ...

  4. 域名做CDN来通过隐藏服务器真实IP的方法来防止DDoS攻击(转)

    隐藏服务器真实IP是解决问题最好和最快的方法,但只针对小流量,大流量同样会扛不住. 服务器前端加CDN中转,比如阿里云.百度云加速.360网站卫士.加速乐.安全宝等,如果资金充裕的话,可以购买高防的盾 ...

  5. 解决DDOS攻击生产案例

    根据web日志或者或者网络连接数,监控当某个IP并发连接数或者短时内PV达到100,即调用防火墙命令封掉对应的IP. 当然各个公司的IP并发数各有不同,上面只是举例说明. 因为我的Nginx的WEB日 ...

  6. CentOS 系统开启防火墙,屏蔽IP,解决DDOS攻击

    刚才发现网站特别慢,然后看了一下服务器状态 CPU 负载100%. 然后看了下网络,发现一个IP一直在请求本服务器的 443 端口,就是本站. 然后在终端通过 iftop 命令(一个流量健康软件,如果 ...

  7. 完美解决win10系统无法安装.NET Framework问题

    今天在安装willow插件的时候系统提示需要安装.NET Framework3.5的问题,当点击系统自动解决的时候,Windows系统又会提示错误,其实这也见怪不怪了,如果能自动解决的话也不会出现这种 ...

  8. java向python ,text文件动态传参或传值问题完美解决

    由于业务需要对python文件进行参数传递,通过下面两个java方法完美解决此问题,我的思路是:首先我要先把上次写的参数删除,第二我要新的参数写到python文件中. 第一个方法解决了删除上次传递的参 ...

  9. DDOS攻击与防御简单阐述,列出DDOS的攻击方法和防御方法

    参考1:https://www.hi-linux.com/posts/50873.html#%E7%BD%91%E7%BB%9C%E5%B1%82-ddos-%E6%94%BB%E5%87%BB 什么 ...

随机推荐

  1. Flyway:数据库版本迁移工具的介绍

    目录 Flyway介绍 Flyway的工作模式 Flyway的使用场景 命令行 使用Maven或Gradle插件 migrate clean info validate baseline Java A ...

  2. Windows下Java JDK环境变量的配置

    注意:前提是你已经在电脑上安装了JDK 1.打开控制面板—系统和安全—系统,选择高级系统设置 2.选择环境变量 3. 然后看看用户变量中有没有JAVA_HOME和CLASSPATH变量 4.新建JAV ...

  3. The inherit, initial, and unset values

    The  inherit, initial, and unset keywords are special values you can give to any CSS property. Tests ...

  4. MySQL SQL查询优化技巧详解

    MySQL SQL查询优化技巧详解 本文总结了30个mysql千万级大数据SQL查询优化技巧,特别适合大数据里的MYSQL使用. 1.对查询进行优化,应尽量避免全表扫描,首先应考虑在 where 及 ...

  5. [转]【JVM】调优笔记2-----JVM在JDK1.8以后的新特性以及VisualVM的安装使用

    [From]https://www.cnblogs.com/sxdcgaq8080/p/7156227.html               隔壁的,加个引用做书签! [JVM]调优笔记2-----J ...

  6. 461. 汉明距离(Hamming Distance)leetcode

    首先附上题目链接: https://leetcode-cn.com/problems/hamming-distance/ 一:题目 两个整数之间的汉明距离指的是这两个数字对应二进制位不同的位置的数目. ...

  7. Python程序猿面试杂谈

    不同的互联网公司面试环节不尽相同,总体而言,一般有技术面(1-3轮).leader面(组长/总监/CTO/CEO...).hr面,面试轮数视公司规模和公司实际具体情况而定.下文将就面试的不同环节阐述下 ...

  8. 8 Spring / Spring MVC / Mybatis 框架相关知识点

    1)Spring 的 IOC 和 AOP 有了解吗? IOC:控制反转,不需要手动 new 对象,将其交给 Spring 容器,降低程序耦合度. AOP:面向切面编程,动态代理技术.

  9. Oracle 行列转换公式

    1.行转列 SELECT STU_NAME,TERM,ZHANBI,COURSE_MARK FROM (SELECT '罗飞' STU_NAME, '2001-2002' TERM, ' 微积分, ' ...

  10. mysql 速度优化

    1.添加索引 ALTER TABLE `cw_base_house` ADD INDEX idx_house ( `villageCode`, `buildingNo`, `unitNo`, `hou ...