什么是DDoS 分布式拒绝服务(DDoS:Distributed Denial of Service)×××指借助于客户/服务器技术,将多个计算机联合起来作为×××平台,对一个或多个目标发动DDoS×××,从而成倍地提高拒绝服务×××的威力。通常,×××者使用一个偷窃帐号将DDoS主控程序安装在一个计算机上,在一个设定的时间主控程序将与大量代理程序通讯,代理程序已经被安装在网络上的许多计算机上。代理程序收到指令时就发动×××。利用客户/服务器技术,主控程序能在几秒钟内激活成百上千次代理程序的运行。
DdoS×××是×××最常用的×××手段,下面列出了对付它的一些常规方法。 (1)定期扫描 要定期扫描现有的网络主节点,清查可能存在的安全漏洞,对新出现的漏洞及时进行清理。骨干节点的计算机因为具有较高的带宽,是×××利用的最佳位置,因此对 这些主机本身加强主机安全是非常重要的。而且连接到网络主节点的都是服务器级别的计算机,所以定期扫描漏洞就变得更加重要了。 (2)在骨干节点配置防火墙 防火墙本身能抵御DdoS×××和其他一些×××。在发现受到×××的时候,可以将×××导向一些牺牲主机,这样可以保护真正的主机不被×××。当然导向的这些牺牲主机 可以选择不重要的,或者是linux以及unix等漏洞少和天生防范×××优秀的系统 (3)用足够的机器承受×××××× 这是一种较为理想的应对策略。如果用户拥有足够的容量和足够的资源给××××××,在它不断访问用户、夺取用户资源之时,自己的能量也在逐渐耗失,或许未等用 户被攻死,×××已无力支招儿了。不过此方法需要投入的资金比较多,平时大多数设备处于空闲状态,和目前中小企业网络实际运行情况不相符。 (4)充分利用网络设备保护网络资源 所谓网络设备是指路由器、防火墙等负载均衡设备,它们可将网络有效地保护起来。当网络被×××时最先死掉的是路由器,但其他机器没有死。死掉的路由器经重启 后会恢复正常,而且启动起来还很快,没有什么损失。若其他服务器死掉,其中的数据会丢失,而且重启服务器又是一个漫长的过程。特别是一个公司使用了负载均衡设 备,这样当一台路由器被×××死机时,另一台将马上工作。从而最大程度的削减了DdoS的×××。 (5)过滤不必要的服务和端口 过滤不必要的服务和端口,即在路由器上过滤假IP ……只开放服务端口成为目前很多服务器的流行做法,例如WWW服务器那么只开放80而将其他所有端口关闭或在防 火墙上做阻止策略。 (6)检查访问者的来源 使用Unicast Reverse Path Forwarding等通过反向路由器查询的方法检查访问者的IP地址是否是真,如果是假的,它将予以屏蔽。许多××××××常采用假IP地址方 式迷惑用户,很难查出它来自何处。因此,利用Unicast Reverse Path Forwarding可减少假IP地址的出现,有助于提高网络安全性。 (7)过滤所有RFC1918 IP地址 RFC1918 IP地址是内部网的IP地址,像10.0.0.0、192.168.0.0 和172.16.0.0,它们不是某个网段的固定的IP地址,而是Internet内部保留的区域性IP地址,应该把 它们过滤掉。此方法并不是过滤内部员工的访问,而是将×××时伪造的大量虚假内部IP过滤,这样也可以减轻DdoS的×××。 (8)限制SYN/ICMP流量 用户应在路由器上配置SYN/ICMP的最大流量来限制SYN/ICMP封包所能占有的最高频宽,这样,当出现大量的超过所限定的SYN/ICMP流量时,说明不是正常的网络访问 ,而是有×××***。早期通过限制SYN/ICMP流量是最好的防范DOS的方法,虽然目前该方法对于DdoS效果不太明显了,不过仍然能够起到一定的作用。 DDoS ×××主要要两大类: 带宽耗尽×××和资源耗尽×××. 为了有效遏制这两种类型的×××,可以按照下面列出的步骤来做: 1、如果只有几台计算机是×××的来源,并且已经确定了这些来源的 IP 地址, 你在防火墙服务器上放置一份 ACL(访问控制列表) 来阻断这些来自这些 IP 的访问。如果可能的话将 web 服务器的 IP 地址变更一段时间,但是如果×××者通过查询服务端的 DNS 服务器解析到新设定的 IP,那这一措施及不再有效了。 2、如果确定×××来自一个特定的国家,可以考虑将来自那个国家的 IP 阻断,至少要阻断一段时间。 3、监控进入的网络流量。通过这种方式可以知道谁在访问你的网络,可以监控到异常的访问者,可以在事后分析日志和来源IP。在进行大规模的×××之前,×××者可能会使用少量的×××来测试你网络的健壮性。 4、对付带宽消耗型的×××来说,最有效(也很昂贵)的解决方案是购买更多的带宽。 5、也可以使用高性能的负载均衡软件,使用多台服务器,并部署在不同的数据中心。 6、对web和其他资源使用负载均衡的同时,也使用相同的策略来保护DNS。 7、优化资源使用提高 web server 的负载能力。例如,使用 apache 可以安装 apachebooster 插件,该插件与 varnish 和 nginx 集成,可以应对突增的流量和内存占用。 8、使用高可扩展性的 DNS 设备来保护针对 DNS 的 DDOS ×××。可以考虑购买 Cloudfair 的商业解决方案,它可以提供针对 DNS 或 TCP/IP3 到7层的 DDOS ×××保护。 9、启用路由器或防火墙的反IP欺骗功能。在 CISCO 的 ASA 防火墙中配置该功能要比在路由器中更方便。在 ASDM(Cisco Adaptive Security Device Manager)中启用该功能只要点击“配置”中的“防火墙”,找到“anti-spoofing”然后点击启用即可。也可以在路由器中使用 ACL(access control list)来防止 IP 欺骗,先针对内网创建 ACL,然后应用到互联网的接口上。 10、使用第三方的服务来保护你的网站。有不少公司有这样的服务,提供高性能的基础网络设施帮你抵御拒绝服务×××。你只需要按月支付几百美元费用就行。 11、注意服务器的安全配置,避免资源耗尽型的 DDOS ×××。 12、听从专家的意见,针对×××事先做好应对的应急方案。 13、监控网络和 web 的流量。如果有可能可以配置多个分析工具,例如:Statcounter 和 Google analytics,这样可以更直观了解到流量变化的模式,从中获取更多的信息。 14、保护好 DNS 避免 DNS 放大×××。 15、在路由器上禁用 ICMP。仅在需要测试时开放 ICMP。在配置路由器时也考虑下面的策略:流控,包过滤,半连接超时,垃圾包丢弃,来源伪造的数据包丢弃,SYN 阀值,禁用 ICMP 和 UDP 广播。