|
|
嚜
Linux撘瑕之iptables嚗銝槐pt_recentmodule嚗賡餅DDoS餅) F1 ~- @) X. M9 d) P
靘憒嚗雿臭誑啣銝chain嚗 iptables -N WEB_SRV_DOS ":WEB_SRV_DOS - [0:0]"* i; j, `) W6 ^4 F
嗅嚗其誑銝隞歹60蝘吩it port 80/443頞10甈∠IP餅銝西銝靘嚗2 D9 n( {0 n8 U; ]% E5 o, a' 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
銴鋆賭誨蝣
% g3 x3 y5 X# Q% b: L憒雿dmesg唬憿航炊嚗
8 o, Y* h1 y5 {) ]+ F: Mhitcount (200) is larger than packets to be remembered (20)
" }2 K& w, x, ^, A6 g5 R銵函內雿閮剖閬閮蝞甈⊥詨之履pt_recent閮剖銝嚗舫隤踵惺pt_recent moduleip_pkt_list_tot訾閫瘙箝
, N) U; v3 S( m7 n/ z+ Q
5 m9 f2 X9 q% H/ y/ s: w皜祈岫銝銝:1 U* S: m* v5 C5 w3 L% @! m, A
撠皜祈岫site澆箏之 http request [size=13.376px](臭誑撖怎撘靘頝嚗冽雓撌乩犖箸 灸rowser憭TAB嚗銝瑞reload蝬脤)
& g4 m! Y3 m1 n& n臭誑潛曉/var/log/message銝剖箇曆閮荔
; \9 l9 F9 V8 @5 d* h" u7 C7 b% dMay 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! b q5 K7 F' l! Y: ~4 k
甇斗隞半rowser皜祈岫蝬脤嚗箇遨onnection refused嚗⊥銝(箸閮剖rule爹EJECT)
" J; p* a% {5 D0 m& o L2 `OK嚗iptablesipt_recent module潭桐其* s; C. z. `( W5 E
; I; Q1 ]- O! v% e; H& w
蝯隢嚗# r9 D3 R% }, z' N7 A9 P
(1) iptables函雯頝臬惜喲餅餅撠嚗撠serverloading敶梢輯撠
6 q( D# G/ }$ o' u1 g" i$ {(2) iptables閮剖銝頛敶改舐其脰風80,443隞亙port. r1 B/ q4 v/ m$ p
(3) iptables航身摰潛函銝餅嚗箏究erver寥脰靽霅瘀臭誑摰其霈餅撠脣叫erver% I( ?3 S" V# `0 S! t( z
憒雿舐決S Windows + IIS嚗亙瑕嚗雿臭誑AQTRONIX WebKnight憟鞎餌web application firewall嚗鋆⊿W單脰風DDoS餅賬: v. G4 Z6 m& M2 o+ r
7 L7 W' M6 P! F, C
1 m' i g# `4 ^7 z
: http://blog.eztable.com/2011/05/17/how-to-prevent-ddos/ U2 Q2 J; p, Z" I
- F0 W! } @/ m! T
================================================5 A5 u8 n! u5 b: F6 q
菜葫舐IP 隞:
# Q8 O; v% q b8 lsed 's/ .*//' access.log | sort | uniq -c | sort -n$ p# G0 h- @+ H8 t0 A7 p- t
perl -ne 'print "$1*\n" if m#^((\d+\.){3})#' access.log | sort | uniq -c | sort -n/ S5 A/ i0 v" ~: r7 |
|
|
|