|
|
嚜
Linux撘瑕之iptables嚗銝槐pt_recentmodule嚗賡餅DDoS餅. V: H$ L+ i* Q+ c! ~, }
靘憒嚗雿臭誑啣銝chain嚗 iptables -N WEB_SRV_DOS ":WEB_SRV_DOS - [0:0]"
' u; ^7 b6 I3 s6 T# U嗅嚗其誑銝隞歹60蝘吩it port 80/443頞10甈∠IP餅銝西銝靘嚗
U8 m' x4 i* O H* a' Y# T- 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
銴鋆賭誨蝣
) Y7 d8 T1 j/ Q8 Y; r, d憒雿dmesg唬憿航炊嚗
2 v: R, O. d W4 N. e: \# Bhitcount (200) is larger than packets to be remembered (20) / ]( K2 {0 B+ {8 Z9 d7 o) x
銵函內雿閮剖閬閮蝞甈⊥詨之履pt_recent閮剖銝嚗舫隤踵惺pt_recent moduleip_pkt_list_tot訾閫瘙箝
0 \1 M& d3 x2 p' x
( t2 H8 [' D0 d9 Y( e7 L( _皜祈岫銝銝:, Z7 [+ t# j) \- |# c0 m
撠皜祈岫site澆箏之 http request [size=13.376px](臭誑撖怎撘靘頝嚗冽雓撌乩犖箸 灸rowser憭TAB嚗銝瑞reload蝬脤)7 c4 Q4 ?. X2 v
臭誑潛曉/var/log/message銝剖箇曆閮荔& J. N9 S* W8 R/ v9 U
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
) |* D. V) n7 C& v甇斗隞半rowser皜祈岫蝬脤嚗箇遨onnection refused嚗⊥銝(箸閮剖rule爹EJECT)0 \ h( X% y& u
OK嚗iptablesipt_recent module潭桐其
, L) | E+ W- Z5 j, ?: ?
+ q6 [! m7 j0 Z# q- Z# z蝯隢嚗2 A! _% Q8 v4 d+ X, G% H( i
(1) iptables函雯頝臬惜喲餅餅撠嚗撠serverloading敶梢輯撠
7 K) H/ t2 q" B4 {(2) iptables閮剖銝頛敶改舐其脰風80,443隞亙port# w; P- m1 ~3 P) }
(3) iptables航身摰潛函銝餅嚗箏究erver寥脰靽霅瘀臭誑摰其霈餅撠脣叫erver2 A K( F' P( ?; q- a
憒雿舐決S Windows + IIS嚗亙瑕嚗雿臭誑AQTRONIX WebKnight憟鞎餌web application firewall嚗鋆⊿W單脰風DDoS餅賬" H) W# X% A! N _5 `, V S0 I
" D# e! @; k* ]+ h4 F5 S
. x" e+ R5 U* I! q6 N1 S) X2 F8 a: http://blog.eztable.com/2011/05/17/how-to-prevent-ddos/' d8 D& j. H* M
- [( d j8 d9 h; K================================================. ~% n* |: X% i: s5 ?( ]
菜葫舐IP 隞:* p' V y( V' w& M% n/ y
sed 's/ .*//' access.log | sort | uniq -c | sort -n4 t( S8 W/ v: t6 ]: c
perl -ne 'print "$1*\n" if m#^((\d+\.){3})#' access.log | sort | uniq -c | sort -n
% L- c1 L1 O9 Q# {. Z |
|
|