教你如何在Linux中防止SYN Flood攻击

SYN泛洪攻击(SYN Flood)是指使用不完善的TCP/IP三次握手,恶意发送大量只包含SYN握手序列的数据包的攻击方法。这种攻击方法可能会导致被攻击的计算机拒绝服务甚至崩溃,从而使潜在的连接占用大量的系统资源,无法完成三次手。

教你如何在Linux中防止SYN Flood攻击教你如何在Linux中防止SYN Flood攻击

如果您遭受SYN洪水攻击下的 Linux服务器,您可以设置以下:

减少SYN-超时时间:
iptables -A FORWARD -p tcp –syn -m limit –limit 1/s -j ACCEPT
iptables -A INPUT -i eth0 -m limit –limit 1/sec –limit-burst 5 -j ACCEPT
每秒最多3个syn数据包
iptables -N syn-flood
iptables -A INPUT -p tcp –syn -j syn-flood
iptables -A syn-flood -p tcp –syn -m limit –limit 1/s –limit-burst 3 -j RETURN
iptables -A syn-flood -j REJECT
设置syncookies
sysctl -w net.ipv4.tcp_syncookies=1
sysctl -w net.ipv4.tcp_max_syn_backlog=3072
sysctl -w net.ipv4.tcp_synack_retries=0
sysctl -w net.ipv4.tcp_syn_retries=0
sysctl -w net.ipv4.conf.all.send_redirects=0
sysctl -w net.ipv4.conf.all.accept_redirects=0
sysctl -w net.ipv4.conf.all.forwarding=0
sysctl -w net.ipv4.icmp_echo_ignore_broadcasts=1
防止ping 命令
sysctl -w net.ipv4.icmp_echo_ignore_all=1
阻止特定的IP范围
iptables -A INPUT -s 192.168.5.1/8 -i eth0 -j Drop


请使用浏览器的分享功能分享到微信等