|
|
嚜
Linux撘瑕之iptables嚗銝槐pt_recentmodule嚗賡餅DDoS餅 ^; C+ z5 H' v3 l
靘憒嚗雿臭誑啣銝chain嚗 iptables -N WEB_SRV_DOS ":WEB_SRV_DOS - [0:0]"4 i2 t9 z; s4 _+ K: H7 O+ }
嗅嚗其誑銝隞歹60蝘吩it port 80/443頞10甈∠IP餅銝西銝靘嚗
) l0 b8 C6 X5 d: X7 o, c- 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
銴鋆賭誨蝣 * ~9 o: X0 _$ j& _. Y
憒雿dmesg唬憿航炊嚗
9 K. e) T3 y& N+ ~+ Mhitcount (200) is larger than packets to be remembered (20)
; |7 U6 o" k5 `0 ?銵函內雿閮剖閬閮蝞甈⊥詨之履pt_recent閮剖銝嚗舫隤踵惺pt_recent moduleip_pkt_list_tot訾閫瘙箝
! Z8 A' g0 ^% S2 l& ^+ _6 M0 s0 J/ X2 e- F
皜祈岫銝銝:
+ `: M' d9 A& ^; v( k. i撠皜祈岫site澆箏之 http request [size=13.376px](臭誑撖怎撘靘頝嚗冽雓撌乩犖箸 灸rowser憭TAB嚗銝瑞reload蝬脤)
/ t* _# r! V2 r$ V+ M5 H臭誑潛曉/var/log/message銝剖箇曆閮荔6 [% e5 o; f% ^* W4 {* _
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=04 H. a" W1 X2 ?- j2 C% Z, g- B
甇斗隞半rowser皜祈岫蝬脤嚗箇遨onnection refused嚗⊥銝(箸閮剖rule爹EJECT)5 l' b& Q6 D: d% ?9 E
OK嚗iptablesipt_recent module潭桐其
7 |( L0 A9 U/ j5 q* k8 L
0 F: t B% C; Q" c# K' z- ?, C蝯隢嚗
; l& y; d- l+ ]- _+ }( ](1) iptables函雯頝臬惜喲餅餅撠嚗撠serverloading敶梢輯撠4 k1 h! v& j. W9 Y' _) e
(2) iptables閮剖銝頛敶改舐其脰風80,443隞亙port
1 T! g4 q8 z2 n' s(3) iptables航身摰潛函銝餅嚗箏究erver寥脰靽霅瘀臭誑摰其霈餅撠脣叫erver
* x$ s# S, g& _' `; |憒雿舐決S Windows + IIS嚗亙瑕嚗雿臭誑AQTRONIX WebKnight憟鞎餌web application firewall嚗鋆⊿W單脰風DDoS餅賬$ C2 W$ F% X6 q
: p( o3 R/ q- p& u$ H! C. E
w8 _# G, R9 \: http://blog.eztable.com/2011/05/17/how-to-prevent-ddos/
+ Q4 M6 O, e# f$ i2 p
& [ `' F' g0 i: P/ a$ P) L================================================" K, ]2 Q( h/ j8 @ J
菜葫舐IP 隞:
+ ~! `2 ~% m- w; S U' Nsed 's/ .*//' access.log | sort | uniq -c | sort -n
3 [; J* ]0 l b/ I0 q1 z4 pperl -ne 'print "$1*\n" if m#^((\d+\.){3})#' access.log | sort | uniq -c | sort -n
' L% s ~9 M; q$ N4 V |
|
|