|
|
嚜
Linux撘瑕之iptables嚗銝槐pt_recentmodule嚗賡餅DDoS餅
& }+ i" R6 N1 S; B5 K靘憒嚗雿臭誑啣銝chain嚗 iptables -N WEB_SRV_DOS ":WEB_SRV_DOS - [0:0]"7 z, T7 t2 L7 D3 |- R
嗅嚗其誑銝隞歹60蝘吩it port 80/443頞10甈∠IP餅銝西銝靘嚗
; k0 ?' }" H( [: A1 y- 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
銴鋆賭誨蝣 6 i* p( P% O$ l! {, N/ Y4 P) y/ K
憒雿dmesg唬憿航炊嚗 ; o+ ~4 `3 [1 y' T q' |
hitcount (200) is larger than packets to be remembered (20)
. l. ]5 Z0 U7 }銵函內雿閮剖閬閮蝞甈⊥詨之履pt_recent閮剖銝嚗舫隤踵惺pt_recent moduleip_pkt_list_tot訾閫瘙箝7 M. H% s0 B/ H ?, q
5 T: @* z4 j6 o- f( U( n皜祈岫銝銝:! A& M5 F6 u7 }1 C
撠皜祈岫site澆箏之 http request [size=13.376px](臭誑撖怎撘靘頝嚗冽雓撌乩犖箸 灸rowser憭TAB嚗銝瑞reload蝬脤)# K. [/ [9 @% w+ ^( K
臭誑潛曉/var/log/message銝剖箇曆閮荔
: p: R' o/ [, hMay 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=08 \, s! L0 g A6 ~4 l: L, V! }
甇斗隞半rowser皜祈岫蝬脤嚗箇遨onnection refused嚗⊥銝(箸閮剖rule爹EJECT)
- a, m8 n! {* O- I! KOK嚗iptablesipt_recent module潭桐其
) v+ x; E0 O- G ]% e( Y, c- b5 g5 D# f- \9 D1 R2 B, ^, ]
蝯隢嚗
% \# l1 |1 r( X(1) iptables函雯頝臬惜喲餅餅撠嚗撠serverloading敶梢輯撠
9 q* z* L4 ^6 V6 ?; X- O3 e' H(2) iptables閮剖銝頛敶改舐其脰風80,443隞亙port
& ~( x, r/ w4 u7 e, Y. @+ U& [(3) iptables航身摰潛函銝餅嚗箏究erver寥脰靽霅瘀臭誑摰其霈餅撠脣叫erver
* K+ I1 u4 X8 ?: T憒雿舐決S Windows + IIS嚗亙瑕嚗雿臭誑AQTRONIX WebKnight憟鞎餌web application firewall嚗鋆⊿W單脰風DDoS餅賬
# ]1 e3 R) a6 ]) C% d) e% C1 o) l5 x* s* Z4 V: R
* ]6 G& ~1 ?1 \* D p6 W0 a: http://blog.eztable.com/2011/05/17/how-to-prevent-ddos/* p9 r ^& d( a8 z. e. s# Y4 Z5 t- b
6 @( c5 i- D' {2 b5 i% n
================================================: V, x( ^; r( _7 y" ^/ T8 D
菜葫舐IP 隞:
; S I: R0 T7 nsed 's/ .*//' access.log | sort | uniq -c | sort -n
* k% p! \5 y# n* _& Y ]# Y1 Jperl -ne 'print "$1*\n" if m#^((\d+\.){3})#' access.log | sort | uniq -c | sort -n
7 I2 I( b8 A. g* N/ C3 }: w |
|
|