一、 攻擊和防御的基本認(rèn)識 1、 攻擊類型 a) CC:CC是我們比較常見的攻擊方式,攻擊者通過大量請求我們的頁面,消耗服務(wù)器資源和帶寬資源,達(dá)到網(wǎng)站無法訪問的目的; b) DDOS:DDOS也是經(jīng)常遇到的攻擊,攻擊者挾持大量肉雞,對服務(wù)器進(jìn)行半連接的攻擊,使得服務(wù)器帶寬堵塞,正常訪問無法進(jìn)入服務(wù)器; c) ARP:這個攻擊我們不常見,表現(xiàn)形式是在我們的網(wǎng)站頁面上出現(xiàn)其他的廣告,但檢查頁面代碼,卻沒有廣告代碼。 2、 防御的思路和方法 a) CC:優(yōu)化頁面程序代碼,減少每段代碼對服務(wù)器資源的消耗,盡量使用html頁面,如確實(shí)需要動態(tài)頁面,則必須使用緩存技術(shù),減少對數(shù)據(jù)庫的壓力; b) DDOS:對服務(wù)器做一些配置優(yōu)化,但基本上無法防御住大量肉雞的攻擊,此時可以將DNS解析到高防服務(wù)器; c) ARP:防御較為簡單,直接聯(lián)系機(jī)房,查找異常mac,處理掉ARP。
操作注釋: 操作1:判斷攻擊類型 a) 命令: netstat -an|grep SYN|wc -l 看檢查到的包多不多,一般我們服務(wù)器只有20以下,超過200,基本可以確認(rèn)是DDOS攻擊 b) 命令: netstat -n | awk ‘/^tcp/ {++S[$NF]} END {for(a in S) print a, S[a]}’ 看 ESTABLISHED ,非常大是DDOS,數(shù)值大概在1萬以上,正常值在2000左右或以下 c) 查看nginx日志,檢查是否大量請求某個頁面,日志增長數(shù)量迅速,若確認(rèn),則為CC 操作2.1:開啟CC登陸判斷 進(jìn)入common文件夾,修改configWeb.php文件,將include(“proxy.php”)的注釋去掉 操作2.2:轉(zhuǎn)移到高防 進(jìn)入dnspod.cn,修改域名dns解析地址,指向高防服務(wù)器,同時替換主服務(wù)器上的nginx配置文件為應(yīng)急nginx.conf,并重啟nginx,目的是關(guān)閉80端口 操作3.1:開啟多臺服務(wù)器共同防御CC 在dnspod.cn里增加多個A記錄,使得用戶平均解析到各個服務(wù)器,共同防御CC,此時主服務(wù)器不需要關(guān)閉80端口 操作3.2:和聯(lián)盟高防輪切 在單臺高防無法防御的時候,重新修改dnspod里的IP地址,將地址解析到聯(lián)盟高防,等到聯(lián)盟防不住的時候,切到自己高防,通過不停的來回切換,使攻擊對我們的影響,降到最低 操作4:攻擊結(jié)束 通過監(jiān)控和主服務(wù)器測試,判斷攻擊是否結(jié)束,若結(jié)束后,域名解析回到自己主服務(wù)器,nginx配置文件換回攻擊以前的版本,注釋掉CC防御的代碼。 一、 服務(wù)器狀態(tài)監(jiān)控 1、 iptraf監(jiān)控網(wǎng)卡流量,一般DDOS和CC都會引發(fā)網(wǎng)卡收到的包數(shù)量增長; 2、 netstat -an|grep SYN|wc –l命令檢查SYN包數(shù)量; 3、 檢查nginx日志,是否存在大量同時請求某個頁面,以及日志文件的增長速度; 4、 若為DDOS攻擊,在攻擊一段時間后,開啟主服務(wù)器80端口,檢查是否還有大量SYN包進(jìn)入服務(wù)器。 二、 注意事項 1、在被DDOS攻擊時,確保主服務(wù)器的nginx配置文件為應(yīng)急版本,80端口必須關(guān)閉,可用netstat –ntupl 命令檢查開啟的端口。 2、要經(jīng)常檢查高防服務(wù)器,確保高防服務(wù)器隨時待命,且程序代碼和主服務(wù)器同步,可在高防服務(wù)器用 /root/rsync/rsync-client.sh 命令手動同步,默認(rèn)為每2小時一次自動同步。 3、檢測攻擊是否還存在,可以把正常的nginx配置文件換上,并重啟nginx,觀察SYN包和iptraf的流量,一切正常,則可在15分鐘后把域名解析回主服務(wù)器,并繼續(xù)觀察;若有異常,則馬上逆操作,替換應(yīng)急nginx配置文件,域名解析到高防服務(wù)器。 4、對于技術(shù)部,要確保在被攻擊時,理清思路,嚴(yán)格按步驟操作。 |
|