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

2014-11-12 11:43:04 +08:00
 jarlyyn
如题。
网站在阿里云,纯粹的企业展示型网站。
第一次被攻击后,把数据库转移到了rds.做了主要页面的缓存,网站域名只想了阿里云盾的cname。
目前客户已经把带宽提高到50mb,依然被ddos全部占满。
我分析了下apache日志,几分钟就统计有几十个不重复的IP地址。user-agent之类也都不同。感觉难以从技术上区分攻击流量和正常流量。
这时候除了继续提高带宽,还有其他可以做的么?
11583 次点击
所在节点    问与答
80 条回复
jarlyyn
2014-11-12 14:07:56 +08:00
cat ip_log |sort -u|wc -l
1053

半个多小时ip过1000了,是不是该恭喜客户网站做的很成功-________-
scys
2014-11-12 14:28:34 +08:00
用下简单流量限制,每个IP流量限制流量,单线程限制为10k,让他们慢慢拉。
然后做个黑名单,在黑名单的,直接每个IP每个线程512b,嗯嗯,看谁拖死谁。
记得开多几个IP,分流,反正看你现在是有这些成本在了,就直接和他们玩~嗯嗯
Yamade
2014-11-12 15:39:31 +08:00
关键时刻 还是360管用.至于很多人黑360,有的人支持360,你怎么看?
http://wangzhan.360.cn/
jarlyyn
2014-11-12 15:59:11 +08:00
2小时3600多ip。
丢给客户了。毕竟运维这块他自己做的-____-
plprapper
2014-11-12 16:13:33 +08:00
@jarlyyn 呵呵 这个错误无数人犯过了 不过这么点访问量 不能算DDOS吧
jarlyyn
2014-11-12 16:16:22 +08:00
@plprapper 阿里云100mb带宽被跑满了……
jarlyyn
2014-11-12 16:16:52 +08:00
@plprapper 何况只是一个普通的展示产品的网站……
hicdn
2014-11-12 16:21:31 +08:00
加速乐的防 CC 远远领先国内其他几家
RIcter
2014-11-12 17:34:23 +08:00
真正的 DDOS 会在几秒钟打挂一个网站的.._(:3
jarlyyn
2014-11-12 17:35:35 +08:00
@RIcter 这个也是……
反正阿里云单台ecs的带宽上线是200mb,客户已经上到100mb了……
xdeng
2014-11-12 17:41:43 +08:00
图片太大了吧 css js html 没压缩 ?
xdeng
2014-11-12 17:42:21 +08:00
阿里的 阀值 调低啊。。。
plprapper
2014-11-12 17:58:56 +08:00
@jarlyyn 你这不是被脱库了吧 还得是反复脱 哈哈
jarlyyn
2014-11-12 18:01:46 +08:00
@plprapper 库没拖,就是用几千个ip访问各种图片和资源……
说实话,一个产品展示网站,拖库有啥用……
jarlyyn
2014-11-12 18:02:52 +08:00
@xdeng 关键架补住IP多啊
3600多ip,还只是2个小时的数据。
我真不明白,有这资源了和一个小产品目录网站较啥劲。
em70
2014-11-12 18:10:11 +08:00
50m带宽都扛不住?这ddos成本够高的,耗着呗,带宽临时加200,对方比你贵得多,打不死你他就死,很快他就扛不住了
jarlyyn
2014-11-12 18:20:32 +08:00
@em70 100mb都抗不住……
halczy
2014-11-12 18:23:49 +08:00
加个CDN例如Cloudflare之类的. 听说免费Plan一共能顶100TB流量.
nilai
2014-11-12 18:31:21 +08:00
@jarlyyn 首先 50M算初学级的DDOS了。 要产生50MBDDOS的流量很容易,成本非常的低,对方完全有这经济实力跟你耗 其实 前面一些人在说上硬防,完全是没实际接触过。 阿里云主机是你没法自己上硬防, 假若能上硬防, 又一个基本常识 你的带宽只有50MB,就算你在前面加个黑洞一样没用。 最后,可能能缓解的是 增加带宽,CDN, 日志分析,封IP,上软的WAF。 可能会有用,若有详细咨询,可加马化腾联系
extreme
2014-11-12 18:39:52 +08:00
我觉得准确点,应该是CC攻击。
要对抗云盾都防不住的CC攻击,那就得做出一点牺牲了。
访客访问网站,首先检查Cookie中有没有SessionID,没有的话就302重定向至一个页面,要求输入验证码,正确后就生成一个Session,Set Cookie,Cookie中带Session ID,Sssion中保存访客的IP,并生成一串随机字符,然后Set一个Cookie,内容为随机字符。

已有Session的访客,每次访问就检查Session中的IP是否与访客的IP一致,否就302到验证码页面,要求重新验证。
IP检查通过后,就检查Cookie中的随机字符是否与Session中的随机字符匹配,否就302到验证码页面要求重新验证,匹配的话,就重新生成一串随机字符到Session,并且重新Set随机字符的Cookie。

这样做非常有效,但会影响搜索引擎的抓取,不过总比被CC到宕机无法访问好。

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

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

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

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

© 2021 V2EX