|
|
嚜
Linux撘瑕之iptables嚗銝槐pt_recentmodule嚗賡餅DDoS餅' _) K' P6 N4 J' `* d. e0 V
靘憒嚗雿臭誑啣銝chain嚗 iptables -N WEB_SRV_DOS ":WEB_SRV_DOS - [0:0]"5 y( w" j" \( y) P7 Y; j
嗅嚗其誑銝隞歹60蝘吩it port 80/443頞10甈∠IP餅銝西銝靘嚗: q) E, ^' t2 E. R8 i9 m( O
- 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
銴鋆賭誨蝣
+ ]/ g' D) N6 A! ^2 [% A3 n憒雿dmesg唬憿航炊嚗 ( W6 w+ Q8 S, q
hitcount (200) is larger than packets to be remembered (20)
& G" B/ Z0 s! \6 ]6 y銵函內雿閮剖閬閮蝞甈⊥詨之履pt_recent閮剖銝嚗舫隤踵惺pt_recent moduleip_pkt_list_tot訾閫瘙箝; K: U- _: `9 m6 Q* |5 j
3 p! ?; X# W Q' q! Z7 Z D
皜祈岫銝銝:1 H9 s+ G' W( f4 C5 s) e# c- O
撠皜祈岫site澆箏之 http request [size=13.376px](臭誑撖怎撘靘頝嚗冽雓撌乩犖箸 灸rowser憭TAB嚗銝瑞reload蝬脤) B- n7 _+ E3 q! V
臭誑潛曉/var/log/message銝剖箇曆閮荔
. A: X: w {. CMay 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=07 I2 M3 M) P# t6 j+ ^' \
甇斗隞半rowser皜祈岫蝬脤嚗箇遨onnection refused嚗⊥銝(箸閮剖rule爹EJECT). S; ]: f, W6 M5 a# p8 n
OK嚗iptablesipt_recent module潭桐其, c0 N* j9 j* w* r0 Z7 X4 }& o+ Y
% r* U" i/ |% d* \* |. v! m' ]' s
蝯隢嚗8 e/ j5 T9 ^6 p- V0 n
(1) iptables函雯頝臬惜喲餅餅撠嚗撠serverloading敶梢輯撠$ o# r1 H- j+ y
(2) iptables閮剖銝頛敶改舐其脰風80,443隞亙port
, d0 I* b/ }0 k(3) iptables航身摰潛函銝餅嚗箏究erver寥脰靽霅瘀臭誑摰其霈餅撠脣叫erver( ], f( \) O: D* [& ]$ Z/ s* t
憒雿舐決S Windows + IIS嚗亙瑕嚗雿臭誑AQTRONIX WebKnight憟鞎餌web application firewall嚗鋆⊿W單脰風DDoS餅賬 |4 o# n6 {. S% q) f0 `( `
" p, q g9 s8 y/ W" d
: ^* m$ J! b: ~( u; E2 |9 H: http://blog.eztable.com/2011/05/17/how-to-prevent-ddos/
1 {2 P& m" \- C7 Q3 G! h7 t' c8 P- G2 ~) g* K; q4 m: {
================================================
+ Q0 S# ~$ R$ d* \/ t0 n菜葫舐IP 隞:4 U7 r0 r& h# @8 o% u5 G! e p8 j
sed 's/ .*//' access.log | sort | uniq -c | sort -n7 ^7 g% G+ J1 }, I
perl -ne 'print "$1*\n" if m#^((\d+\.){3})#' access.log | sort | uniq -c | sort -n
& Z0 ?2 i5 q8 Z" z' m" O S0 @9 w |
|
|