第二:做cdn ,可以进行有效分流
第三:做安全策略
以上三种方式,都是经济实惠的
第四:购买带防护的服务器,价格估计会高些,但是防护效果绝佳,机房默认的防护相对较大些。
CC攻击的种类太多了 !想要完全防御攻击 首先你要自己懂攻击!假设我是一个做攻击人:那么我是靠攻击来赚钱 所以我手里必然掌握不下于一种的攻击方法:另外我还有同行 每个人的资源都不一样!攻击方式千奇百怪;假设我用嘴简单的CC攻击 利用不同的代理IP 或者肉鸡 对你网站发送大量虚拟用户访问!你网站就会承受不住突如其来的大量访问量而瘫痪! 这种直接模拟用户防御 懂得人都可以在代码上进行限制 就是判断一个IP在一分钟进行多少次访问 超过3次的就是进行拉黑名单处理 这样的检查机制 可以拦截一个垃圾的访问量! 但是CC中还有更高级的变异cc:比如代理IP 伪造攻击源 那么这种就要在网站上面加一层验证码 真人访问就要填上验证码才能跳转到真正的网站而这个层验证码就是所谓的一些CDN加速的节点! 节点的好坏是根据他节点的策略来衡量的 有些节点的策略比交厉害就可以过滤各种虚拟的访问量! 就可以保证网站稳定运行 原理就是 域名解析节点 节点解析服务器另外你的网站的带宽也要高 这个是嘴基本的 如果你是做黑5类的网站的 可以用美国的CF 节点 或者IN节点 如果你是做正规的可以购买国内的高仿节点 或者服务器 比如快快的 比如创世云的 其中创世云的节点我以前攻击的时候 用了好多天都没打死 起防御也是比较牛B的对于CC攻击.其防御必须采用多种方法,而这些方法本质上也是在提高服务器的并发能力。1、服务器垂直扩展和水平扩容
本质上讲,这个方法并不是针对CC攻击的,而是提升服务本身处理并发的能力,但确实提升了对CC攻击的承载能力。
2、数据缓存
对于服务中具备高度共性,可重用的数据,一旦从数据库中检索出,或通过计算得出后,最好将其放在缓存中,后续请求均可直接从缓存中取得数据,减轻数据库的检索压力和应用服务器的计算压力,并且能够快速返回结果并释放进程,从而也能缓解服务器的内存压力。
3、页面静态化
与数据缓存一样,页面数据本质上也属于数据,常见的手段是生成静态化的html页面文件,利用客户端浏览器的缓存功能或者服务端的缓存服务,以及CDN节点的缓冲服务,均可以降低服务器端的数据检索和计算压力,快速响应结果并释放连接进程。
4、用户级别的调用频率限制
基于session等方式可以为客户端分配唯一的识别ID/SID,服务端可以将SID存到缓存中。当客户端请求服务时,如果没有带SID(cookie中或请求参数中等),则由服务端快速分配一个并返回。可以的话,本次请求可以不返回数据,或者将分配SID独立出业务服务。当客户端请求时带了合法SID(即SID能在服务端缓存中匹配到),便可以依据SID对客户端进行频率限制。而对于SID非法的请求,则直接拒绝服务。相比根据IP进行的频率限制,根据SID的频率限制更加精准可控,可最大程度地避免误杀情况。
5、IP限制
最后,IP限制依然可以结合上述规则一起使用,但是可以将其前置至JCb层的防火墙或负载均衡器上去做,并且可以调大限制的阈值,防止恶意访问穿透到应用服务器上,造成应用服务器压力。
欢迎分享,转载请注明来源:夏雨云
评论列表(0条)