1、動(dòng)態(tài)刪除連接表項(xiàng)

在BIG IP遭受DDOS攻擊時(shí),一個(gè)最常見(jiàn)的資源消耗就是內(nèi)存。在默認(rèn)配置下,當(dāng)BIG IP的內(nèi)存使用達(dá)到97%的時(shí)候,BIG IP就會(huì)自動(dòng)進(jìn)行重啟,以恢復(fù)自身的正常運(yùn)行。

在一個(gè)HA的組里,則此時(shí)由備機(jī)接管繼續(xù)提供服務(wù)。當(dāng)然,這是最糟糕的情況,在達(dá)到這個(gè)狀態(tài)前,在BIG IP的全局配置中,有兩個(gè)重要的和安全相關(guān)參數(shù)設(shè)置來(lái)避免內(nèi)存耗盡。

這兩個(gè)參數(shù)就是Low Water Mark和High Water Mark。當(dāng)系統(tǒng)的內(nèi)存占用超過(guò)Low Water Mark的設(shè)定值的時(shí)候,BIGIP將開(kāi)始刪除在連接表中最“老”的連接表項(xiàng),也就是最接近達(dá)到idel time out定義時(shí)間的表項(xiàng),但此時(shí)BIGIP仍然接收新的連接建立。當(dāng)系統(tǒng)內(nèi)存占用超過(guò)HighWater Mark的時(shí)候,BIG IP將不再接收新的連接,并且刪除老的連接,直到系統(tǒng)的內(nèi)存占用達(dá)到Low Water Mark的設(shè)定值為止。

2、 SYN Cookie啟動(dòng)閥值

在四層工作模式下,可以直接啟動(dòng)SYN Cookie對(duì)SYN 攻擊進(jìn)行防護(hù),但在全代理工作模式下,如果對(duì)每一個(gè)SYN包都建立一個(gè)連接表項(xiàng),在SYN攻擊足夠強(qiáng)烈的時(shí)候,BIGIP自身的內(nèi)存也將會(huì)被迅速充滿進(jìn)入連接刪除或者重啟狀態(tài)。

但如果系統(tǒng)在正常工作下,啟用SYN Cookie會(huì)帶來(lái)額外的CPU計(jì)算損耗。因此,在全代理模式下,可以通過(guò)設(shè)置SYN Thrash Hold的值來(lái)動(dòng)態(tài)的啟用SYN Cookie進(jìn)行SYN攻擊防護(hù)。

當(dāng)系統(tǒng)中沒(méi)有進(jìn)入正常三次握手連接的表項(xiàng)的數(shù)量,也就是在SYN-RECEIVED狀態(tài)的連接達(dá)到設(shè)定值,則對(duì)后續(xù)的新建連接進(jìn)行SYN Cookie處理。這樣,對(duì)新建的連接,就不再直接添加新的連接表項(xiàng)而只有通過(guò)SYN Cookie驗(yàn)證后,再建立連接表項(xiàng)進(jìn)行處理。保證正常的客戶(hù)訪問(wèn)可以持續(xù)。

3、最大拒絕包發(fā)送速率

在默認(rèn)狀態(tài)下,BIGIP將對(duì)發(fā)送到非VS端口的數(shù)據(jù)包、超時(shí)的連接、命中VS但沒(méi)有對(duì)應(yīng)連接表項(xiàng)的請(qǐng)求回應(yīng)RST包進(jìn)行拒絕。但如果在DDOS發(fā)生的時(shí)候,這種RST包的響應(yīng)也會(huì)耗費(fèi)很多的CPU資源。因此,在BIGIP中,可以通過(guò)DB 參數(shù)TM.MaxRejectRate來(lái)設(shè)置每秒鐘回應(yīng)的RST包的數(shù)量,以節(jié)省系統(tǒng)資源,保證系統(tǒng)可用性。

4、最大ICMP請(qǐng)求回應(yīng)速率

在遭遇ICMP Flood的時(shí)候,BIGIP也是通過(guò)全局設(shè)定的DB參數(shù)TM.MaxICMPRate來(lái)限制整臺(tái)設(shè)備可以響應(yīng)的ICMP回應(yīng)速率,以減小本身的性能損 耗。需要注意的是,這個(gè)設(shè)定的默認(rèn)值為250/秒,在一些網(wǎng)絡(luò)設(shè)備執(zhí)行高速ping檢查的時(shí)候,由于該功能啟用,會(huì)在對(duì)端發(fā)現(xiàn)有丟包現(xiàn)象。如果一定要進(jìn)行 驗(yàn)證,需要調(diào)高這個(gè)參數(shù)。

除了上述全局的參數(shù)設(shè)置外,TCP/UDP超時(shí)時(shí)間設(shè)定和TCP-Profile-延遲接收連接也非常重要。

TCP/UDP超時(shí)時(shí)間設(shè)定:TCP/UDP超時(shí)時(shí)間主要用于設(shè)定在一個(gè)連接中,有多長(zhǎng)時(shí)間沒(méi)有數(shù)據(jù)進(jìn)行傳輸,則將該連接從連接表項(xiàng)中刪除,并向客 戶(hù)端和服務(wù)器端分別發(fā)送RST包。減小超時(shí)時(shí)間設(shè)定,將有助于減小BIGIP的內(nèi)存消耗。例如默認(rèn)值為300秒,而針對(duì)大部分的HTTP應(yīng)用,該值可以調(diào) 整到90秒或者60秒以下,以使BIGIP可以更快的回收內(nèi)存空間占用而不影響業(yè)務(wù)運(yùn)行。但對(duì)一些長(zhǎng)連接應(yīng)用,則需要根據(jù)應(yīng)用的實(shí)際需求進(jìn)行設(shè)定。

TCP-Profile-延遲接收連接:在TCP Profile中,還有一個(gè)重要安全相關(guān)參數(shù)就是Defered Accept,默認(rèn)為關(guān)閉狀態(tài),當(dāng)該參數(shù)開(kāi)啟時(shí),BIGIP對(duì)所有的請(qǐng)求在三次握手建立完成后,并不開(kāi)啟完整的連接表項(xiàng),只是簡(jiǎn)單的記錄該連接狀態(tài)。只有在客戶(hù)端或者Pool Member之間開(kāi)始有數(shù)據(jù)傳輸?shù)臅r(shí)候,才開(kāi)始建立正式的連接表項(xiàng)。

分享到

zhangcun

相關(guān)推薦