使用iptables抵抗常見攻擊
阿新 • • 發佈:2019-02-01
文章出處: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