CentOS 下抵御 Sync Flood 攻击
时间:2014-07-13 18:09 来源:linux.it.net.cn 作者:it
1、更改CentOS关于Sync的设置
SYN攻击是利用TCP/IP协议3次握手的原理,发送大量的建立连接的网络包,但不实际建立连接,最终导致被攻击服务器的网络队列被占满,无法被正常用户访问。
查看CentOS内核中关于SYN的配置:
sysctl -a | grep syn
显示:
net.ipv4.tcp_max_syn_backlog = 1024
net.ipv4.tcp_syncookies = 0
net.ipv4.tcp_synack_retries = 5
net.ipv4.tcp_syn_retries = 5
其中:
tcp_max_syn_backlog,SYN队列长度
tcp_syncookies,SYN Cookie功能的开关,用于防止 Sync Flood 攻击
tcp_synack_retries和tcp_syn_retries,允许重试的次数
增长队列、打开Cookie功能,并减少允许重试的次数,可以一定程度上缓解 Sync Flood 攻击带来的影响。
具体操作为:
增加SYN队列长度(另据说改至8000以上效果较好)
sysctl -w net.ipv4.tcp_max_syn_backlog=5120
打开SYN COOKIE功能
sysctl -w net.ipv4.tcp_syncookies=1
降低重试次数
sysctl -w net.ipv4.tcp_synack_retries=3
sysctl -w net.ipv4.tcp_syn_retries=3
2、启用iptables中防御 Sync Flood 攻击的规则
防止Sync Flood(–limit 1/s 限制SYN并发数每秒1次,可以根据自己的需要修改)
iptables -A FORWARD -p tcp --syn -m limit --limit 1/s -j ACCEPT
防止各种端口扫描
iptables -A FORWARD -p tcp --tcp-flags SYN,ACK,FIN,RST RST -m limit --limit 1/s -j ACCEPT
防止 Ping of Death 攻击
iptables -A FORWARD -p icmp --icmp-type echo-request -m limit --limit 1/s -j ACCEPT
(责任编辑:IT)
1、更改CentOS关于Sync的设置 SYN攻击是利用TCP/IP协议3次握手的原理,发送大量的建立连接的网络包,但不实际建立连接,最终导致被攻击服务器的网络队列被占满,无法被正常用户访问。 查看CentOS内核中关于SYN的配置:
显示:
其中: tcp_max_syn_backlog,SYN队列长度 tcp_syncookies,SYN Cookie功能的开关,用于防止 Sync Flood 攻击 tcp_synack_retries和tcp_syn_retries,允许重试的次数 增长队列、打开Cookie功能,并减少允许重试的次数,可以一定程度上缓解 Sync Flood 攻击带来的影响。 具体操作为: 增加SYN队列长度(另据说改至8000以上效果较好)
打开SYN COOKIE功能
降低重试次数
2、启用iptables中防御 Sync Flood 攻击的规则 防止Sync Flood(–limit 1/s 限制SYN并发数每秒1次,可以根据自己的需要修改)
防止各种端口扫描
防止 Ping of Death 攻击
|