一、目的
恒訊科技實現(xiàn)了對香港服務器境外節(jié)點的加速訪問,分區(qū)域分線加速,防御來自競爭對手的DDos惡意攻擊,常見的延遲CC攻擊和致命大流量攻擊。針對上述加速策略和兩種攻擊方式,簡要介紹了幾種防御方案。
二、CDN加速
利用第三方的DNS智能解析分區(qū)域分線路進行,就近原則,例如Cloudxns/DNSpod/51DNS/DNSla等。
1.CDN節(jié)點選擇:
主要節(jié)點選擇香港VPS,其他節(jié)點根據(jù)應用的部署區(qū)域進行優(yōu)選(馬來、新加坡、柬埔寨、菲律賓等),旁路做流量清理(遭遇攻擊),可選擇美國高防御VPS引流。
2.自建CDN優(yōu)勢:
旁路做流量清洗
資源充分利用:無攻擊時,做路由加速,被攻擊時做節(jié)點切換
長遠規(guī)劃,后期可增加節(jié)點、硬件配置等,根據(jù)需要自由提升防御DDOS攻擊能力
3.架構(gòu)設計:
我們將CDN節(jié)點分解成反向代理+緩存加速+攻擊防御這三個層次的功能結(jié)構(gòu)。
反向代理:路由加速,隱藏主節(jié)點,負載均衡
緩存加速:靜態(tài)推送,節(jié)省后端主節(jié)點帶寬
攻擊防御:快速解析,建立syslog分析日志,匹配過濾惡意攻擊,多節(jié)點CDN可以采用聯(lián)動方案,建立syslog系統(tǒng),采集所有節(jié)點訪問日志,編寫腳本分析日志,發(fā)現(xiàn)異常請求后通過ansible工具發(fā)送命令到節(jié)點。
三、攻擊防御
1.延緩性CC攻擊:
這類攻擊的主要特點是,攻擊者借助網(wǎng)絡上提供的大量代理服務器IP,使用攻擊軟件,生成合法請求指向受害主機。這類攻擊成本低,網(wǎng)上現(xiàn)成能發(fā)動攻擊軟件多,其目的是通過漸增的垃圾請求,消耗CPU、內(nèi)存、網(wǎng)絡資源,造成擁堵,達到網(wǎng)站訪問變慢,直至無法訪問。
2.防御思路:
這類攻擊有兩個特征比較明顯,第一個特征,由于是人為生成了大量的非法請求,所以會引發(fā)網(wǎng)絡的入口異常流量增大(正常情況下出口流量大,入口流量?。?;
第二個特征,攻擊力度有一個漸增的過程,機器可以充分利用這個時間智能做出反應,調(diào)用日志分析腳本,進行引流和IP封殺。
具體策略:
1、采用監(jiān)控軟件的流量監(jiān)控來觸發(fā)日志分析腳本(zabbix為例)
2、采用python腳本統(tǒng)計入口流量,發(fā)現(xiàn)異常時,調(diào)用日志分析腳本,第一時間找出IP、Agent等特征碼,利用iptables對惡意IP進行過濾,應用層上利用nginx關(guān)鍵詞進行過濾。
致命的大流量攻擊:
這類攻擊主要特點是,通常以tcp,icmp和UDP(尤其是UDP包,單UDP的數(shù)據(jù)包可以很大)方式為主,攻擊流量可以達到幾十GB以上,整個機房都能受到影響,攻擊者通常利用大量肉雞,對目標進行流量打擊,此時流量會迅速占滿服務器的帶寬,導致無法響應任何用戶請求。
這類攻擊需要購置大量帶寬,對于攻擊者來說,成本還挺高,但是下手“快狠準”,讓網(wǎng)站在短時間內(nèi)完全無響應。
由于這類攻擊會引起流量劇增,IDC通常采取的措施是丟車保帥,直接將被攻擊IP下線,這無疑是落井下石。
3、防御思路:
架設硬防火墻(成本高)
租用高防節(jié)點
租用大流量CDN分散目標流量(引流)
長久之計,自建CDN
4、防御策略:
HAProxy+Nginx/Varnish/ATS組合,我們稱它為防御型反向代理緩存策略,功能角色如下:
HAProxy負責動靜資源分離,實現(xiàn)會話粘滯,節(jié)點負載均衡,故障轉(zhuǎn)移,開啟HAProxy的httplog功能,做日志記錄
Nginx負責反向代理緩存
四、架構(gòu)細節(jié)
DNS智能解析+輪詢+存活監(jiān)測:
1.部署智能DNS就近匹配CDN節(jié)點
我們自建CDN其中一個目的是做訪問優(yōu)化,因此當部署完多個CDN節(jié)點后,為使這些節(jié)點協(xié)同運作,同時優(yōu)化用戶的訪問路徑,使得訪客能夠根據(jù)自己所在的區(qū)域和線路類型,就近從CDN節(jié)點上獲取頁面內(nèi)容,從而優(yōu)化訪客的路由。
2.DNS自動輪詢+故障監(jiān)測
利用DNS輪詢來為網(wǎng)站進行分流負載。如果條件充裕,后期可以部署冗余的CDN節(jié)點,這樣既能緩解某個單一節(jié)點的負載,同時能為節(jié)點作互備,當一個區(qū)內(nèi)的CDN節(jié)點因故障失效之后,調(diào)度機制要在最快時間內(nèi)將故障節(jié)點的流量牽引至當前可用節(jié)點,不影響訪客的正常請求。
3.日志分析+攻擊防御:
CDN作為網(wǎng)站的前端節(jié)點,實時記錄著訪客的所有訪問行為。利用好這些訪問日志,對其進行的分析和挖掘,感知業(yè)務層面的一些異?;顒?,當面臨DDoS攻擊時,能夠提供足夠的證據(jù)來區(qū)分惡意的IP。
區(qū)分惡意攻擊的主要依據(jù)類型有:
某個IP發(fā)起大量的并發(fā)請求
大量連續(xù)的IP段發(fā)起請求
大量無規(guī)則的IP發(fā)起請求
目前我們對HAProxy的日志分析僅作用于單節(jié)點,可以利用下面的CDN圖形化管理工具對日志進行統(tǒng)一管理。
4.多節(jié)點CDN圖形化管理工具:
管理和運維一套CDN系統(tǒng)是一件很麻煩的事,想要實現(xiàn)快速部署、集中管理,我們可以利用軟件工具來管理所有CDN節(jié)點,這里采用Fikker。
恒訊科技的高防CDN是國內(nèi)首家既能防御還能加速的一款CDN產(chǎn)品,擁有多年的防護經(jīng)驗,全球各地都有豐富的IDC資源,自動分布節(jié)點,保證質(zhì)量保證品質(zhì)保證快而穩(wěn)的客戶體驗。
Copyright ? 2013-2020. All Rights Reserved. 恒訊科技 深圳市恒訊科技有限公司 粵ICP備20052954號 IDC證:B1-20230800.移動站