防范DDOS攻擊并不一定非要用防火墻。一部份DDOS我們可以通過DOS命令netstat -an|more或者網(wǎng)絡(luò)綜合分析軟件:sniff等查到相關(guān)攻擊手法、如攻擊某個主要端口、或者對方主要來自哪個端口、對方IP等。這樣我們可以利用w2k自帶的遠程訪問與路由或者IP策略等本身自帶的工具解決掉這些攻擊。做為無法利用這些查到相關(guān)數(shù)據(jù)的我們也可以嘗試一下通過對服務(wù)器進行安全設(shè)置來防范DDOS攻擊。如果通過對服務(wù)器設(shè)置不能有效解決,那么就可以考慮購買抗DDOS防火墻了。 其實從操作系統(tǒng)角度來說,本身就藏有很多的功能,只是很多是需要我們慢慢的去挖掘的。這里我給大家簡單介紹一下如何在Win2000環(huán)境下通過修改注冊表,增強系統(tǒng)的抗DoS能力。
請注意,以下的安全設(shè)置均通過注冊表進行修改,該設(shè)置的性能取決于服務(wù)器的配置,尤其是CPU的處理能力。如按照如下進行安全設(shè)置,采用雙路至強2.4G的服務(wù)器配置,經(jīng)過測試,可承受大約1萬個包的攻擊量。
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters]
'關(guān)閉無效網(wǎng)關(guān)的檢查。當服務(wù)器設(shè)置了多個網(wǎng)關(guān),這樣在網(wǎng)絡(luò)不通暢的時候系統(tǒng)會嘗試連接
'第二個網(wǎng)關(guān),通過關(guān)閉它可以優(yōu)化網(wǎng)絡(luò)。
"EnableDeadGWDetect"=dword:00000000
'禁止響應(yīng)ICMP重定向報文。此類報文有可能用以攻擊,所以系統(tǒng)應(yīng)該拒絕接受ICMP重定向報文。
"EnableICMPRedirects"=dword:00000000
'不允許釋放NETBIOS名。當攻擊者發(fā)出查詢服務(wù)器NETBIOS名的請求時,可以使服務(wù)器禁止響應(yīng)。
'注意系統(tǒng)必須安裝SP2以上
"NonameReleaseOnDemand"=dword:00000001
'發(fā)送驗證保持活動數(shù)據(jù)包。該選項決定TCP間隔多少時間來確定當前連接還處于連接狀態(tài),
'不設(shè)該值,則系統(tǒng)每隔2小時對TCP是否有閑置連接進行檢查,這里設(shè)置時間為5分鐘。
"KeepAliveTime"=dword:000493e0
'禁止進行最大包長度路徑檢測。該項值為1時,將自動檢測出可以傳輸?shù)臄?shù)據(jù)包的大小,
'可以用來提高傳輸效率,如出現(xiàn)故障或安全起見,設(shè)項值為0,表示使用固定MTU值576bytes。
"EnablePMTUDiscovery"=dword:00000000
'啟動syn攻擊保護。缺省項值為0,表示不開啟攻擊保護,項值為1和2表示啟動syn攻擊保護,設(shè)成2之后
'安全級別更高,對何種狀況下認為是攻擊,則需要根據(jù)下面的TcpMaxHalfOpen和TcpMaxHalfOpenRetried值
'設(shè)定的條件來觸發(fā)啟動了。這里需要注意的是,NT4.0必須設(shè)為1,設(shè)為2后在某種特殊數(shù)據(jù)包下會導致系統(tǒng)重啟。
"SynAttackProtect"=dword:00000002
'同時允許打開的半連接數(shù)量。所謂半連接,表示未完整建立的TCP會話,用netstat命令可以看到呈SYN_RCVD狀態(tài)
'的就是。這里使用微軟建議值,服務(wù)器設(shè)為100,高級服務(wù)器設(shè)為500。建議可以設(shè)稍微小一點。
"TcpMaxHalfOpen"=dword:00000064
'判斷是否存在攻擊的觸發(fā)點。這里使用微軟建議值,服務(wù)器為80,高級服務(wù)器為400。
"TcpMaxHalfOpenRetried"=dword:00000050
'設(shè)置等待SYN-ACK時間。缺省項值為3,缺省這一過程消耗時間45秒。項值為2,消耗時間為21秒。
'項值為1,消耗時間為9秒。最低可以設(shè)為0,表示不等待,消耗時間為3秒。這個值可以根據(jù)遭受攻擊規(guī)模修改。
'微軟站點安全推薦為2。
"TcpMaxConnectResponseRetransmissions"=dword:00000001
'設(shè)置TCP重傳單個數(shù)據(jù)段的次數(shù)。缺省項值為5,缺省這一過程消耗時間240秒。微軟站點安全推薦為3。
"TcpMaxDataRetransmissions"=dword:00000003
'設(shè)置syn攻擊保護的臨界點。當可用的backlog變?yōu)?時,此參數(shù)用于控制syn攻擊保護的開啟,微軟站點安全推薦為5。
"TCPMaxPortsExhausted"=dword:00000005
'禁止IP源路由。缺省項值為1,表示不轉(zhuǎn)發(fā)源路由包,項值設(shè)為0,表示全部轉(zhuǎn)發(fā),設(shè)置為2,表示丟棄所有接受的
'源路由包,微軟站點安全推薦為2。
"DisableIPSourceRouting"=dword:0000002
'限制處于TIME_WAIT狀態(tài)的最長時間。缺省為240秒,最低為30秒,最高為300秒。建議設(shè)為30秒。
"TcpTimedWaitDelay"=dword:0000001e
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\NetBT\Parameters]
'增大NetBT的連接塊增加幅度。缺省為3,范圍1-20,數(shù)值越大在連接越多時提升性能。每個連接塊消耗87個字節(jié)。
"BacklogIncrement"=dword:00000003
'最大NetBT的連接快的數(shù)目。范圍1-40000,這里設(shè)置為1000,數(shù)值越大在連接越多時允許更多連接。
"MaxConnBackLog"=dword:000003e8
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Afd\Parameters]
'配置激活動態(tài)Backlog。對于網(wǎng)絡(luò)繁忙或者易遭受SYN攻擊的系統(tǒng),建議設(shè)置為1,表示允許動態(tài)Backlog。
"EnableDynamicBacklog"=dword:00000001
'配置最小動態(tài)Backlog。默認項值為0,表示動態(tài)Backlog分配的自由連接的最小數(shù)目。當自由連接數(shù)目
'低于此數(shù)目時,將自動的分配自由連接。默認值為0,對于網(wǎng)絡(luò)繁忙或者易遭受SYN攻擊的系統(tǒng),建議設(shè)置為20。
"MinimumDynamicBacklog"=dword:00000014
'最大動態(tài)Backlog。表示定義最大"準"連接的數(shù)目,主要看內(nèi)存大小,理論每32M內(nèi)存最大可以
'增加5000個,這里設(shè)為20000。
"MaximumDynamicBacklog"=dword:00002e20
'每次增加的自由連接數(shù)據(jù)。默認項值為5,表示定義每次增加的自由連接數(shù)目。對于網(wǎng)絡(luò)繁忙或者易遭受SYN攻擊
'的系統(tǒng),建議設(shè)置為10。
"DynamicBacklogGrowthDelta"=dword:0000000a
以下部分需要根據(jù)實際情況手動修改
'-------------------------------------------------------------------------------------------------
'[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters]
'啟用網(wǎng)卡上的安全過濾
'"EnableSecurityFilters"=dword:00000001
'
'同時打開的TCP連接數(shù),這里可以根據(jù)情況進行控制。
'"TcpNumConnections"=
'
'該參數(shù)控制 TCP 報頭表的大小限制。在有大量 RAM 的機器上,增加該設(shè)置可以提高 SYN 攻擊期間的響應(yīng)性能。
'"TcpMaxSendFree"=
'
'[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters\Interfaces\{自己的網(wǎng)卡接口}]
'禁止路由發(fā)現(xiàn)功能。ICMP路由通告報文可以被用來增加路由表紀錄,可以導致攻擊,所以禁止路由發(fā)現(xiàn)。
"PerformRouterDiscovery "=dword:00000000