windows服務器應對高并發和DDOS攻擊

jopen 10年前發布 | 19K 次閱讀 網絡技術 DDoS

windows系統本身就有很多機制可以用來提高性能和安全,其中有不少可以用來應對高并發請求和DDOS攻擊的情況。

通過以下配置可以改善windows服務器性能:

一、應對高并發請求:

1TCP連接延遲等待時間 TcpTimedWaitDelay

這是設定TCP/IP 可釋放已關閉連接并重用其資源前,必須經過的時間。關閉和釋放之間的此時間間隔通稱 TIME_WAIT狀態或兩倍最大段生命周期(2MSL)狀態。在此時間內,重新打開到客戶機和服務器的連接的成本少于建立新連接。減少此條目的值允許 TCP/IP更快地釋放已關閉的連接,為新連接提供更多資源。如果運行的應用程序需要快速釋放和創建新連接,而且由于 TIME_WAIT中存在很多連接,導致低吞吐量,則調整此參數。缺省值240秒,最小30秒,最大300秒,建議設為30秒。

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters]
"TcpTimedWaitDelay"=dword:0000001e

2、最大TCP使用端口 MaxUserPort:

TCP客戶端和服務器連接時,客戶端必須分配一個動態端口,默認情況下這個動態端口的分配范圍為 1024-5000,也就是說默認情況下,客戶端最多可以同時發起3977Socket連接。通過修改調整這個動態端口的范圍,可以提高系統的數據吞吐率

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters]
"MaxUserPort"=dword:000ffffe

3、保持連接時間 KeepAliveTime:

Windows默認情況下不發送保持活動數據包,但某些TCP包中可能請求保持活動的數據包。保持連接可以被攻擊者利用建立大量的連接造成服務器拒絕服務。降低這個參數值有助于系統更快速地斷開非活動會話。

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters]
"KeepAliveTime"=dword:000493e0

4、TCP數據最大重發次數 TcpMaxDataRetransmissions

此參數控制TCP在連接異常中止前數據段重新傳輸的次數。如果這個限定次數內,計算機沒有收到任何確認消息,連接將會被終止。

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters]
"TcpMaxDataRetransmissions"=dword:00000003
5、TCP連接最大重發次數 TcpMaxConnectResponseRetransmissions

此參數設定SYN-ACK等待時間,可以用來提高系統的網絡性能。缺省時間為3,消耗時間為45秒;項值為2,消耗時間為21秒;項值為1,消耗時間為9秒;項值為0,表示不等待,消耗時間為3秒

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters]
"TcpMaxConnectResponseRetransmissions"=dword:00000002

二、應對DDOS攻擊:(包括以上設置)

1、SYN攻擊防護 SynAttackProtect:

為防范SYN攻擊,Windows NT系統的TCP/IP協議棧內嵌了SynAttackProtect機制。SynAttackProtect機制是通過關閉某些socket選項,增加額外的連接指示和減少超時時間,使系統能處理更多的SYN連接,以達到防范SYN攻擊的目的。

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters]
"SynAttackProtect"=dword:00000002

2、無效網關檢測功能 EnableDeadGWDetect:

當服務器設置了多個網關,在網絡不通暢的時候系統會嘗試連接第二個網關。允許自動探測失效網關可導致 DoS,關閉它可以抵御SNMP攻擊,優化網絡。

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters]
"EnableDeadGWDetect"=dword:00000000

3、ICMP重定向功能 EnableICMPRedirect:

是否響應ICMP重定向報文。ICMP重定向報文有可能被用以攻擊,所以系統應該拒絕接受此類報文,用以抵御ICMP攻擊。

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters]
"EnableICMPRedirect"=dword:00000000

4、IP源路由限制 DisableIPSourceRouting:

是否禁用IP源路由包,禁用可以提高IP源路由保護級別,用以防范數據包欺騙

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters]
"DisableIPSourceRouting"=dword:00000002

5、路由發現功能 PerformRouterDiscovery:

ICMP路由通告報文可以被用來增加路由表紀錄,可能導致DOS攻擊,所以禁止路由發現。

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters]
"PerformRouterDiscovery"=dword:00000000

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters\Interfaces]
"PerformRouterDiscovery"=dword:00000000

6、服務器名響應功能 NoNameReleaseOnDemand

允許計算機忽略除來自 Windows服務器以外的 NetBIOS名稱發布請求。當攻擊者發出查詢服務器NetBIOS名的請求時,可以使服務器禁止響應。

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters]
"NoNameReleaseOnDemand"=dword:00000001

7、Internet組管理協議級別 IGMPLevel

用于控制系統在多大程度上支持IP組播和參與Internet組管理協議。缺省值為2,支持發送和接收組播數據;項值為1表示只支持發送組播數據;項值為0表示不支持組播功能。

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters]
"IGMPLevel"=dword:00000000

8、匿名訪問限制 RestrictAnonymous

用于禁止匿名訪問查看用戶列表和安全權限。匿名訪問可以使連接者與目標主機建立一條空連接而無需用戶名和密碼,利用這個空連接,連接者可以得到用戶列表。有了用戶列表,就可以窮舉猜測密碼。

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Lsa]
"restrictanonymous"=dword:00000001

參考文章:

1、http://technet.microsoft.com/library/dd349797(v=ws.10).aspx
2、http://technet.microsoft.com/library/cc708591(v=WS.10).aspx
3、http://technet.microsoft.com/library/cc163074.aspx
4、http://technet.microsoft.com/library/cc940037.aspx
5、http://www.isi.edu/touch/pubs/infocomm99/infocomm99-web
6、http://support.microsoft.com/default.aspx?scid=kb;EN-US;q120642

 本文由用戶 jopen 自行上傳分享,僅供網友學習交流。所有權歸原作者,若您的權利被侵害,請聯系管理員。
 轉載本站原創文章,請注明出處,并保留原始鏈接、圖片水印。
 本站是一個以用戶分享為主的開源技術平臺,歡迎各類分享!