|
|
嚜
Linux撘瑕之iptables嚗銝槐pt_recentmodule嚗賡餅DDoS餅
0 `" T4 [4 T! e; d f# n& G# T靘憒嚗雿臭誑啣銝chain嚗 iptables -N WEB_SRV_DOS ":WEB_SRV_DOS - [0:0]"6 \9 {* u# Z! n. W; c; L% g! _3 H
嗅嚗其誑銝隞歹60蝘吩it port 80/443頞10甈∠IP餅銝西銝靘嚗
& s. ]8 m/ M8 E; j' B# ?% M- iptables -A INPUT -p tcp -m multiport dports 80,443 -j WEB_SRV_DOS
- iptables -A WEB_SRV_DOS -p tcp --syn -m multiport --dports 80,443 -m recent --rcheck --second 60 --hitcount 10 -j LOG --log-prefix "[Possible DOS Attack]"
- iptables -A WEB_SRV_DOS -p tcp --syn -m multiport --dports 80,443 -m recent --rcheck --second 60 --hitcount 10 -j REJECT
- iptables -A WEB_SRV_DOS -p tcp --syn -m multiport --dports 80,443 -m recent --set
- iptables -A WEB_SRV_DOS -p tcp -m multiport --dports 80,443 -j ACCEPT
銴鋆賭誨蝣 ' ^0 d$ [# [8 ?9 b
憒雿dmesg唬憿航炊嚗
+ ~. X8 P ^7 x1 Khitcount (200) is larger than packets to be remembered (20) ( V: V. ?5 s) R, y
銵函內雿閮剖閬閮蝞甈⊥詨之履pt_recent閮剖銝嚗舫隤踵惺pt_recent moduleip_pkt_list_tot訾閫瘙箝 K& i; K" U# V; R0 @; r
% v0 U2 E. e0 k皜祈岫銝銝:
2 T7 ?; r/ k: D+ A% V2 U+ ?撠皜祈岫site澆箏之 http request [size=13.376px](臭誑撖怎撘靘頝嚗冽雓撌乩犖箸 灸rowser憭TAB嚗銝瑞reload蝬脤)' `; b- j" C! }5 O$ B; ^: V
臭誑潛曉/var/log/message銝剖箇曆閮荔3 G' e: r0 Y, v
May 17 07:12:00 localhost kernel: [Possible DOS Attack]IN=eth0 OUT= MAC=XX:XX:XX:XX:43:77:00:1f:YY:YY:YY:YY SRC=192.168.0.105 DST=192.168.0.102 LEN=64 TOS=0x00 PREC=0x00 TTL=64 ID=45026 DF PROTO=TCP SPT=59437 DPT=80 WINDOW=65535 RES=0x00 SYN URGP=0' Q( {+ ^) P# i3 V
甇斗隞半rowser皜祈岫蝬脤嚗箇遨onnection refused嚗⊥銝(箸閮剖rule爹EJECT)5 V8 b. w$ ]! N( ?# H! v
OK嚗iptablesipt_recent module潭桐其
: w) x9 Y( P* B0 S* `3 X( k l$ u' D8 R5 E
蝯隢嚗" |1 H K a& _
(1) iptables函雯頝臬惜喲餅餅撠嚗撠serverloading敶梢輯撠
1 z" r' ]( Z) I p" a(2) iptables閮剖銝頛敶改舐其脰風80,443隞亙port5 E: o* H6 p8 e Z) n
(3) iptables航身摰潛函銝餅嚗箏究erver寥脰靽霅瘀臭誑摰其霈餅撠脣叫erver
9 q9 X* T0 T" Z% F( s6 f" e憒雿舐決S Windows + IIS嚗亙瑕嚗雿臭誑AQTRONIX WebKnight憟鞎餌web application firewall嚗鋆⊿W單脰風DDoS餅賬
; P7 w0 _+ v# m' N! {2 y& ^/ n3 c
; K6 Q4 Y+ V3 n- v- K8 X- Y' u
7 Y7 h. w0 s8 O! N/ N- T' W' U- V: http://blog.eztable.com/2011/05/17/how-to-prevent-ddos/6 t7 ~" a$ U# m: _
3 P2 a. F. p* O6 t' q================================================: f/ @2 c; P0 Z3 m2 ]
菜葫舐IP 隞:0 h5 }' A( ?* A) l% ^! h; X! [& E# x
sed 's/ .*//' access.log | sort | uniq -c | sort -n
5 b/ e- G; g( G, b* U. y) ~perl -ne 'print "$1*\n" if m#^((\d+\.){3})#' access.log | sort | uniq -c | sort -n
" E2 g) ]7 O5 H0 ] |
|
|