1. 程式人生 > >使用iptables抵抗常見攻擊

使用iptables抵抗常見攻擊

文章出處:http://drops.wooyun.org/tips/1424#yjs_add_arg=65871

1.  防止syn攻擊

思路一:限制syn的請求速度(這個方式需要調節一個合理的速度值,不然會影響正常使用者的請求)

iptables -N syn-flood 

iptables -A INPUT -p tcp --syn -j syn-flood 

iptables -A syn-flood -m limit --limit 1/s --limit-burst 4 -j RETURN 

iptables -A syn-flood -j DROP 

思路二:限制單個ip的最大syn連線數
iptables –A INPUT –i eth0 –p tcp --syn -m connlimit --connlimit-above 15 -j DROP 

2.  防止DOS攻擊

利用recent模組抵禦DOS攻擊

iptables -I INPUT -p tcp -dport 22 -m connlimit --connlimit-above 3 -j DROP 

單個IP最多連線3個會話
iptables -I INPUT -p tcp --dport 22 -m state --state NEW -m recent --set --name SSH  

只要是新的連線請求,就把它加入到SSH列表中
Iptables -I INPUT -p tcp --dport 22 -m state NEW -m recent --update --seconds 300 --hitcount 3 --name SSH -j DROP  

5分鐘內你的嘗試次數達到3次,就拒絕提供SSH列表中的這個IP服務。被限制5分鐘後即可恢復訪問。

3.  防止單個ip訪問量過大

iptables -I INPUT -p tcp --dport 80 -m connlimit --connlimit-above 30 -j DROP 

4.  木馬反彈

iptables –A OUTPUT –m state --state NEW –j DROP 

5.  防止ping攻擊

iptables -A INPUT -p icmp --icmp-type echo-request -m limit --limit 1/m -j ACCEPT