调整套接口序列防止SYN攻击

发表于:2007-07-04来源:作者:点击数: 标签:
各种 网络 应用软件一般必须开放一个或者几个端口供外界使用,所以其必定可以 会被恶意攻击者向这几个口发起拒绝服务攻击,其中一个很流行的攻击就是SYN FLOOD,在攻击发生时,客户端的来源IP地址是经过伪造的(spoofed),现行的IP 路由机制仅检查目的IP地址

  各种网络应用软件一般必须开放一个或者几个端口供外界使用,所以其必定可以
  会被恶意攻击者向这几个口发起拒绝服务攻击,其中一个很流行的攻击就是SYN
  FLOOD,在攻击发生时,客户端的来源IP地址是经过伪造的(spoofed),现行的IP
  路由机制仅检查目的IP地址并进行转发,该IP包到达目的主机后返回路径无法通
  过路由达到的,于是目的主机无法通过TCP三次握手建立连接。在此期间因为TCP
  #套接口缓存队列被迅速填满,而拒绝新的连接请求。为了防止这些攻击,部分UNIX
  变种采用分离入站的套接口连接请求队列,一队列针对半打开套接口(SYN 接收,
  SYN|ACK 发送), 另一队列针对全打开套借口等待一个aclearcase/" target="_blank" >ccept()调用,增加这两队
  列可以很好的缓和这些SYN FLOOD攻击并使对服务器的影响减到最小程度:
  
  Linux kernel 2.4
  #/sbin/sysctl -w.net.ipv4.tcp_max_syn_backlog=1280
  有效的增加q0的套接口队列大小.
  #sbin/sysctl -w net.ipv4.tcp_syn_cookies=1
  启用TCP SYN cookies支持,能有效的减轻SYN FLOOD的攻击,但是这个参数会对一些大的窗口引起一些性能问题.
  

原文转自:http://www.ltesting.net