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