客户服务器被 ddos 攻击,应该怎么办?

2014-11-12 11:43:04 +08:00
 jarlyyn
如题。
网站在阿里云,纯粹的企业展示型网站。
第一次被攻击后,把数据库转移到了rds.做了主要页面的缓存,网站域名只想了阿里云盾的cname。
目前客户已经把带宽提高到50mb,依然被ddos全部占满。
我分析了下apache日志,几分钟就统计有几十个不重复的IP地址。user-agent之类也都不同。感觉难以从技术上区分攻击流量和正常流量。
这时候除了继续提高带宽,还有其他可以做的么?
11752 次点击
所在节点    问与答
80 条回复
jarlyyn
2014-11-13 10:21:43 +08:00
昨天下午到现在,IP数为
9171
tabris17
2014-11-13 10:28:00 +08:00
@extreme 只有这个办法,CC的话只有攻击方IP充足,跑光你的流量,一点办法也没有。只有通过captcha来区分正常人类访问和程序访问
qiuai
2014-11-13 10:35:27 +08:00
@Lax 毕竟是自动的,误报并不奇怪.但是影响正常使用就不爽了.

@jarlyyn 来一发高防服务器?
jarlyyn
2014-11-13 10:39:50 +08:00
@qiuai 客户服务器,只是程序是我们做的,帮他看看是啥问题而已……
qiuai
2014-11-13 10:44:17 +08:00
@jarlyyn 哦.那你有的忙了...
估计最后也是你在程序里加防CC的功能.比如说访问先等待个5秒,再跳转到正常内容.然后禁用图片的直接访问,限制图片的调用来源.这样也是最有效的.
jarlyyn
2014-11-13 10:52:38 +08:00
@qiuai 图片的调用来源都是指向了网站首页……自己做程序当然知道,除了ip和端口一切都是客户端发来的数据,都可以伪造……
qiuai
2014-11-13 11:07:11 +08:00
@jarlyyn 所以让你试试在显示首页的数据之前,先弄一个最简单的页面,最简单的JS,跑个5秒,然后再跳转到正常页面.如果是用机器来实现的.应该会返回一个200,然后加载完成,就继续下一次访问了,也就不会压到静态资源上.
如果5秒还是有很多,可以延长到15秒.甚至改成点击一个按钮才会跳转到首页.然后把首页地址稍微改一下.这样不会因为有缓存而访问到.而正常用户只需要点击一次按钮就可以了.

搜索引擎的话就考虑完全copy一份,放在不同的IP.然后单独给搜索引擎这个IP,这样不影响SEO.

如果你想坑他,就把现在的首页改成一个跳转到下载个ISO文件的链接...让他去下载吧....
typcn
2014-11-13 11:29:18 +08:00
图片放到渣浪图床上
css js 放在第三方存储上
服务器只发页面并做页面缓存
做一个页面 please wait , allow up to 5 secs
所有页面没有SESSID禁止访问,首页打开之后,用户点击 javascript ajax 调取服务端, 服务器端sleep(5); 然后再发放SESSID并写入COOKIE。
这样够狠吧
typcn
2014-11-13 11:32:28 +08:00
其实打出这样的流量完全是恶心你,随便去网上抓几万个代理,向这些代理发送打开XXX站点的请求,sleep上几秒然后把这个代理的连接断掉,一台几M带宽的机子就能打几百M。
extreme
2014-11-13 12:57:37 +08:00
为什么不采用验证码方式呢?
你确定是带宽被占满,而不是物理内存与CPU吗?
hyraxer
2014-11-13 12:59:50 +08:00
把域名指向到lofter.com做个页面就好了
jarlyyn
2014-11-13 13:19:38 +08:00
@extreme 是的。nload,top,free可以确认。
benjiam
2014-11-13 13:39:14 +08:00
@typcn 如何获取几万个代理? 求具体实现方案。 某些代理上找的几百个代理IP 能连上1/100就不错了。
typcn
2014-11-13 14:26:11 +08:00
@benjiam 不会的那些代理站,正则匹配前10页内容,起码有好几千,那些东西连接肯定慢,设定超时长一点,我一般测试都有90%可用的,你1%都不到是设置的IE代理吧?
typcn
2014-11-13 14:26:48 +08:00
@benjiam 还有一些收费的软件,几块钱下载下来也能获取很多的
benjiam
2014-11-13 15:57:07 +08:00
@typcn 能给个能搜索几千页的代理网站吗? 没看到几个能用的代理。 我用http 代理 很快就失败了。不是超时时间长短, 是根本连不上。爬虫希望用用
Slienc7
2014-11-13 19:08:09 +08:00
typcn
2014-11-14 03:04:35 +08:00
@benjiam 以前玩贴吧爆吧,就用那些代理测试90%左右可用的,我记得还有个代理获取器里面内置了几十个网站,获取很简单,那些网站都是表格,正则匹配(\d+\.\d+\.\d+\.\d+)<看源代码中间内容>(\d+) 即可获取, 然后循环获取前10页,软件我现在没用那台电脑,找到了发给你。10页之后的基本就不能用了。
raptor
2014-11-19 09:23:10 +08:00
我们公司的网站之前也碰到这种情况,我研究了一下日志,发现对方用了一堆IP,每个IP只使用一小时,只请求首页,我们首页连图片总共也就1M左右,30M带宽很容易就被占满。
后来服务商用加按钮的方法解决,但是公司方面不认可。
我建议他们改程序加IP记录并BLOCK,但是他们懒,最后把我们从阿里云迁出,租了独立服务器解决……
ihacku
2014-12-05 10:33:47 +08:00
@typcn 求那个代理获取器

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/145842

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX