本文是小舞在IT天空 Skyfree 的个人博客上看到的一篇文章,虽然现在小舞的网站流量不大,但是网站安全的问题小舞一直都看的很重,哪怕当作笔记也要写下来,以后自己慢慢领悟就好了。现在看不懂不代表以后看不懂,虽然现在看得懂,但是小舞一直把博客当作笔记本来使用的,什么第三方笔记本哪有自己网站用着放心。
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
声明:本站所有文章,如无特殊说明或标注,均为本站原创发布。任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。
评论(0)