Windows > 正文

服务器防止SYN洪水攻击

亮术网 2013-09-12 本网原创

  SYN洪水攻击是利用客户端和服务端建立TCP连接,服务器必须收到客户端返回的一个ACK包才完成建立连接,否则一直处于等待的缺陷,连续发送SYN报文给服务器端请求建立TCP连接,却不回应(这种情况称为半开连接),当半开连接数达到系统允许的最大值时,系统不再接受建立连接请求,即后面的用户无法访问到服务器,拿网站服务器来说就是无法打开网页;最终还可能耗尽服务器的 CPU 和内存,使服务器彻底瘫痪。

  好在 Windows 系统提供了修改注册表的办法,防止SYN洪水攻击来保护服务器的正常运行,以下是修改方法和要修改项。

 

  一、防止SYN洪水攻击修改注册表的方法

  1、依次选择“开始 → 运行”,输入 regedit 回车,打开注册表编辑器。

  2、定位到 HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters,在空白处单击右键,选择“DWORD(32-位)值”,如图1所示:

防止SYN洪水攻击

图1

 

  3、名称输入 SynAttackProtect,双击 SynAttackProtect,把值设置为2,如图2所示:

设置SynAttackProtect

图2

 

  4、单击“确定”设置完成,按照上述步骤继续设置以下项(新建类型均为 DWORD值):

  TcpMaxHalfOpen 值:500

  TcpMaxHalfOpenRetried 值:400

  EnablePMTUDiscovery 值:0

  NoNameReleaseOnDemand 值:1

  EnableDeadGWDetect 值:0

  KeepAliveTime 值(十进制):300,000

  PerformRouterDiscovery 值:0

  EnableICMPRedirects 值:0

 

 

  二、防止SYN洪水攻击修改项说明

  SynAttackProtect:syn 洪水攻击保护,取值范围 0、1、2;

  TcpMaxHalfOpen:允许的最大半开连接数;

  TcpMaxHalfOpenRetried:是处于至少已发送一次重传的 SYN_RCVD 状态中的TCP连接数;

  EnablePMTUDiscovery:是否进行最大包长度路径检测;

  NoNameReleaseOnDemand:当收到网络名称释放请求时,是否释放 NetBIOS 名称;

 

  EnableDeadGWDetect:是否允许网关检测;

  KeepAliveTime:每隔多长时间验证一次闲置未断开连接,单位:毫秒;

  PerformRouterDiscovery:是否将试图执行路由器发现每个 RFC 1256 在每个接口基础上;

  EnableICMPRedirects:是否启用 ICMP 重定向。

本文浓缩标签:SYN攻击服务器