|
|
嚜
Linux撘瑕之iptables嚗銝槐pt_recentmodule嚗賡餅DDoS餅
2 Z* J& K1 v" g6 D1 L% M z. A4 R% D靘憒嚗雿臭誑啣銝chain嚗 iptables -N WEB_SRV_DOS ":WEB_SRV_DOS - [0:0]"
/ Y1 N- a z6 b3 B u; [. u嗅嚗其誑銝隞歹60蝘吩it port 80/443頞10甈∠IP餅銝西銝靘嚗
( t8 t, u# @; ^+ ~+ }- 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
銴鋆賭誨蝣 / W: I& g# i- \% E; S
憒雿dmesg唬憿航炊嚗
6 ^# D) A$ s& }/ P. ohitcount (200) is larger than packets to be remembered (20)
0 Y, ~$ O: c9 b. @7 ]銵函內雿閮剖閬閮蝞甈⊥詨之履pt_recent閮剖銝嚗舫隤踵惺pt_recent moduleip_pkt_list_tot訾閫瘙箝
$ o3 G6 v x& O5 p+ y2 F
. P/ }1 ]5 o8 V' ~. Y i2 {) V2 [皜祈岫銝銝:" e2 ~% W2 _6 Q3 S( C G- H
撠皜祈岫site澆箏之 http request [size=13.376px](臭誑撖怎撘靘頝嚗冽雓撌乩犖箸 灸rowser憭TAB嚗銝瑞reload蝬脤)
0 a% W7 z% J3 K6 _! A3 _4 X臭誑潛曉/var/log/message銝剖箇曆閮荔" f3 y6 E. b, A. t
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
1 M3 u5 U1 D; y. N8 S9 R9 k甇斗隞半rowser皜祈岫蝬脤嚗箇遨onnection refused嚗⊥銝(箸閮剖rule爹EJECT)
- s3 @7 O' c% E( I. P( |OK嚗iptablesipt_recent module潭桐其& T( h. t. P/ e+ N8 i
6 \% m. N* O0 @7 g z/ P3 z
蝯隢嚗
6 s! F# R/ F$ A8 K) U% g( B(1) iptables函雯頝臬惜喲餅餅撠嚗撠serverloading敶梢輯撠8 Y, Z1 V, o, }5 B: s& Q2 i) F
(2) iptables閮剖銝頛敶改舐其脰風80,443隞亙port
4 u0 h! Y/ u- [0 d* S9 l$ |# V(3) iptables航身摰潛函銝餅嚗箏究erver寥脰靽霅瘀臭誑摰其霈餅撠脣叫erver2 E! E! F5 e9 \+ S
憒雿舐決S Windows + IIS嚗亙瑕嚗雿臭誑AQTRONIX WebKnight憟鞎餌web application firewall嚗鋆⊿W單脰風DDoS餅賬
& Z0 e- k( \0 s6 z7 R% @" X
) ^# ]2 H8 u3 ?# s: l1 V& u, {9 |8 P; y' @8 R# H, {: E
: http://blog.eztable.com/2011/05/17/how-to-prevent-ddos/
, F3 f. E% B" L* ~8 Y1 G6 ]4 ^8 W9 Q) A5 W; k" N% w5 e1 f
================================================
& E; M9 _- A7 Y0 j菜葫舐IP 隞:3 X O2 F9 V5 @
sed 's/ .*//' access.log | sort | uniq -c | sort -n/ e A% U Y- Q+ B- G
perl -ne 'print "$1*\n" if m#^((\d+\.){3})#' access.log | sort | uniq -c | sort -n
6 u3 F+ J3 @3 `0 }- i8 V* M3 @ |
|
|