|
嚜
Linux撘瑕之iptables嚗銝槐pt_recentmodule嚗賡餅DDoS餅* B2 c, @' f7 t3 p+ o5 m
靘憒嚗雿臭誑啣銝chain嚗 iptables -N WEB_SRV_DOS ":WEB_SRV_DOS - [0:0]"
3 X7 b7 X) D% s# u+ f' e' J嗅嚗其誑銝隞歹60蝘吩it port 80/443頞10甈∠IP餅銝西銝靘嚗2 h/ x4 t, [- _: s9 r
- 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
銴鋆賭誨蝣
$ k$ r/ e9 ]% M- e憒雿dmesg唬憿航炊嚗
! ?3 R9 C: H6 hhitcount (200) is larger than packets to be remembered (20)
* Z2 x# J1 a0 M, ]% i/ ~銵函內雿閮剖閬閮蝞甈⊥詨之履pt_recent閮剖銝嚗舫隤踵惺pt_recent moduleip_pkt_list_tot訾閫瘙箝6 u: W* e+ d7 v/ i. E! F
. o0 _( s5 Q' x6 \皜祈岫銝銝:
3 l& m9 @- h {3 l; F, m; R撠皜祈岫site澆箏之 http request [size=13.376px](臭誑撖怎撘靘頝嚗冽雓撌乩犖箸 灸rowser憭TAB嚗銝瑞reload蝬脤)! y' d1 [( Y4 Q2 B5 i
臭誑潛曉/var/log/message銝剖箇曆閮荔+ F- [3 K4 e5 r8 L
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=05 R# w7 u8 B$ ~& Q, q- L I
甇斗隞半rowser皜祈岫蝬脤嚗箇遨onnection refused嚗⊥銝(箸閮剖rule爹EJECT)- L. Y& y4 E% `1 I
OK嚗iptablesipt_recent module潭桐其' K* z2 u/ V6 R
. Z% }2 D5 y$ |+ f1 ~+ b& h3 U蝯隢嚗' W7 W, z3 t S
(1) iptables函雯頝臬惜喲餅餅撠嚗撠serverloading敶梢輯撠0 c" F& t' Q% x( R7 Z
(2) iptables閮剖銝頛敶改舐其脰風80,443隞亙port& Y/ G% Y/ ?- }# Q
(3) iptables航身摰潛函銝餅嚗箏究erver寥脰靽霅瘀臭誑摰其霈餅撠脣叫erver) r- K3 L% ^6 ^ z: U- U' f& W* n
憒雿舐決S Windows + IIS嚗亙瑕嚗雿臭誑AQTRONIX WebKnight憟鞎餌web application firewall嚗鋆⊿W單脰風DDoS餅賬0 O4 H [! ?/ X% A- q3 Y# j
4 v Y. D- F7 v7 b2 U/ \
8 H; |" }( ~ o; T9 X' \5 \' B8 d: http://blog.eztable.com/2011/05/17/how-to-prevent-ddos/' t2 Y, J) e5 e1 W
9 Z& j* k h/ r* u' U! s+ H
================================================; q; W- f, d: _5 Q6 ~) F
菜葫舐IP 隞:
* h8 N& _' n0 e. m5 i) N6 msed 's/ .*//' access.log | sort | uniq -c | sort -n
* p$ _: y- Y% a c$ c) O; D3 sperl -ne 'print "$1*\n" if m#^((\d+\.){3})#' access.log | sort | uniq -c | sort -n8 T* ^; H; Q) R* f ~8 p' C
|
|
|