大量SYN_RECV,80端號占死,求救

←手機掃碼閱讀     火星人 @ 2014-03-04 , reply:0

大量SYN_RECV,80端號占死,求救

伺服器遭受到大量的大量SYN_RECV,80端號占死,網站打不開

沒有硬防



有什麼辦法可以解決嗎
《解決方案》

1
sysctl -w net.ipv4.tcp_syncookies=1        #啟用使用syncookies
sysctl -w net.ipv4.tcp_synack_retries=1        #降低syn重試次數
sysctl -w net.ipv4.tcp_syn_retries=1         #降低syn重試次數
sysctl -w net.ipv4.tcp_max_syn_backlog=6000        #最大半連接數
sysctl -w net.ipv4.conf.all.send_redirects=0
sysctl -w net.ipv4.conf.all.accept_redirects=0        #不接受重定向的icmp數據包
sysctl -w net.ipv4.tcp_fin_timeout=30               
sysctl -w net.ipv4.tcp_keepalive_time=60               
sysctl -w net.ipv4.tcp_window_scaling=1
sysctl -w net.ipv4.icmp_echo_ignore_all=1        #禁止ICMP
sysctl -w net.ipv4.icmp_echo_ignore_broadcasts=1 #ICMP禁止廣播

2.限制單位時間內連接數

iptables -N syn-flood
iptables -A FORWARD -p tcp --syn -j syn-flood
iptables -A INPUT -p tcp --syn -j syn-flood
iptables -A syn-flood -p tcp --syn -m limit --limit 3/s --limit-burst 1 -j ACCEP
iptables -A syn-flood -j DROP
iptables -A INPUT -i eth0 -p tcp ! --syn -m state --state NEW -j DROP
iptables -A INPUT -p tcp --syn -m state --state NEW -j DROP

3 如果還是不行,
iptables -A INPUT -p tcp --dport 80 -m recent --name BAD_HTTP_ACCESS --update --seconds 60 --hitcount 30 -j REJECT
iptables -A INPUT -p tcp --dport 80 -m recent --name BAD_HTTP_ACCESS --set -j ACCEP

如攻擊過來的流量大於你的伺服器的流量,那就沒有什麼辦法了,如果流量不大,以上方法,可以暫時保證你的80可以訪問
《解決方案》

如果你的內核已經支持iptables  connlimit可以使用, iptables 設定部份,也可以使用

iptables -I FORWARD -p tcp --syn -m connlimit --connlimit-above 5 -j DROP

iptables -A INPUT -p tcp --syn --dport 80 -m connlimit --connlimit-above 5 -j REJECT
《解決方案》

已解決,多謝哥們

靠,以後去北京,請你吃飯
《解決方案》

iptables -A INPUT -p tcp --syn -m limit --limit 1/s -j ACCEPT
iptables -A INPUT -p tcp --tcp-flags SYN,ACK,FIN,RST RST -m limit --limit 1/s -j ACCEPT
iptables -A INPUT -p icmp --icmp-type echo-request -m limit --limit 1/s -j ACCEPT
echo 2048 > /proc/sys/net/ipv4/tcp_max_syn_backlog
echo 1 > /proc/sys/net/ipv4/tcp_synack_retries
echo 1 > /proc/sys/net/ipv4/tcp_syn_retries
echo 1 > /proc/sys/net/ipv4/tcp_syncookies



我只這樣做就解決掉了
《解決方案》

回復 #5 6808849 的帖子

限制匹配的速度,
這樣操作比較的好,如果是drop就是比較的麻煩一些了
《解決方案》

原帖由 6808849 於 2008-11-15 04:34 發表 http://linux.chinaunix.net/bbs/images/common/back.gif
已解決,多謝哥們

靠,以後去北京,請你吃飯
偶不在 北京 在gd sz
《解決方案》

原帖由 kns1024wh 於 2008-11-15 10:08 發表 http://linux.chinaunix.net/bbs/images/common/back.gif
限制匹配的速度,
這樣操作比較的好,如果是drop就是比較的麻煩一些了
是的,
《解決方案》

收藏 [推廣獲積分] 去,:mrgreen:
《解決方案》

開源的力量真是巨大!
:em30:




[火星人 ] 大量SYN_RECV,80端號占死,求救已經有462次圍觀

http://coctec.com/docs/service/show-post-14009.html