因为平时都是CC攻击比较多,并没有留意阿里云来的流量清洗短信。以为只是接口的IP调用次数限制被打穿,然后服务器宕机无法使用。
服务器配置情况:
主服务器 2核4G 3M 200G Centos7.4
API(1) 2核8G 3M120G Window2018
API(2) 4核4G 5M 100G Centos7.4
CDN 主要缓存网站HTML和静态文件
日请求量200 - 300W次
当前网站架构:
经历
之前也遇到DDOS但是只有6G左右,只是短暂进了阿里云的黑洞 半小时服务器就正常使用。后面很长一段时间就再也没被DDOS打过,就没准备备用服务器。这下吃了亏。
结果DDOS 35G打过来,直接主服务器进黑洞无法使用。剩下支撑的API服务器瞬间无法使用。
CDN因为当时设置的6小时缓存,然后陆续很多缓存节点过期前台跟着也就504无法打开。
云服务器监控中TCP连接数突然骤降
然后接着就是阿里云短信
问题解决方案
因为阿里云有DDOS 5G阈值机制超出就进入清洗或黑洞300分钟,需要做MySQL和Redis主主切换或集群模式。一旦进入黑洞就切换到备用服务器。
redis集群redis-cluster
当然限制单IP请求次数还是很有必要
如果当然最好还是上高防IP或全站CDN
但是全站CDN对于接口请求量很大情况就很不实用了,HTTPS动态请求资源包 14元/100w次。开销也不低
高防IP和服务器价格也不便宜,阿里云DDOS防护20000+、个人用户表示用不起。
总结
大站小站时长都会被攻击,做好必要的防护即可。不然到时候丢数据无法恢复等等就后悔莫及