Linux安全之SYN攻击原理及其应对措施

TCP自从1974年被发明出来以后,历经30多年发展,目前成为最重要的互联网基础协议,但TCP协议中也存在一些缺陷。html

SYN攻击就是利用TCP协议的缺陷,来致使系统服务中止正常的响应。服务器

SYN攻击原理:

 

TCP在传递数据前须要通过三次握手,SYN攻击的原理就是向服务器发送SYN数据包,并伪造源IP地址。cookie

服务器在收到SYN数据包时,会将链接加入backlog队列,并向源IP发送SYN-ACK数据包,并等待ACK数据包,以完成三次握手创建链接。并发

因为源IP地址是伪造的不存在主机IP,因此服务器没法收到ACK数据包,并会不断重发,同时backlog队列被不断被攻击的SYN链接占满,致使没法处理正常的链接。tcp

SYN攻击的应对措施

针对SYN攻击的几个环节,提出相应的处理方法:htm

方式1:减小SYN-ACK数据包的重发次数(默认是5次):
sysctl -w net.ipv4.tcp_synack_retries=3
sysctl -w net.ipv4.tcp_syn_retries=3blog

方式2:使用SYN Cookie技术:
sysctl -w net.ipv4.tcp_syncookies=1队列

方式3:增长backlog队列(默认是1024):
sysctl -w net.ipv4.tcp_max_syn_backlog=2048ip

方式4:限制SYN并发数:
iptables -A INPUT -p tcp –syn -m limit –limit 1/s -j ACCEPT –limit 1/sit

 

http://www.cnblogs.com/ym123/p/4564311.html

相关文章
相关标签/搜索