谈一下对待DDoS攻击的一种想法

王朝other·作者佚名  2008-05-18
窄屏简体版  字體: |||超大  

突然突发奇想,想了一个抵制DDoS的方法,不知道是否可行

DDoS攻击可以伪造IP源,因此无法用“堵”的方法来制止,因此,我想了很久,想试试“开”的方法

原理是这样的……

分为几步(不知道这个原理的可行性如何,有机会应该实验一下)

1、开一个简单的服务(只要能产生ESTABLISHED就可以),端口定为80,把真正的HTTP服务移动到60000

2、每分钟运行一次脚本,该脚本负责检查80端口的ESTABLISHED状态和IP地址,把产生了ESTABLISHED的IP进行PREROUTING,映射到60000端口

3、同时,80端口做并发数限制,只允许一定量的并发数,这样不会影响已经映射好的IP地址对WEB的访问,因为那些IP地址已经进行 PREROUTING了,而不会进入filter表的INPUT链去和80端口进行连接,因此不会占用并发数,只有没登记过的IP才进入filter表的 INPUT链

以上方法也未必可行,存在以下几个问题

1、因为浏览器产生的是短连接,未必会ESTABLISHED,有可能是TIME_OUT,但是DDoS绝对是含有“SYN”字样的,如果进行这个的试验,可以先按照ESTABLISHED进行,如果不行再换“非SYN”

2、平时可以不启用这个方案,HTTP端口还开在60000,对所有IP做PREROUTING,当发现有大量SYN状态时,判定收到DDoS攻击,马上清除PREROUTING规则,使所有IP连接到80端口,并启用DDoS策略

3、由于crond的限制,开IP的SHELL只能每分钟运行一次(最高频率),所以有可能会出现问题,ESTABLISHED的存在概率可能太小了,因为用户打开浏览器,没有看到页面的最大等待时间一般是10秒钟,不可能有人等上1分钟,然后再刷新的

可能写成一个程序,在后台运行会好些,但是,只有思想,不会写LINUX下的C……

 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
 
 
© 2005- 王朝網路 版權所有 導航