tid=57071& 本帖最後由 IT_man 於 2017-2-13 09:04 編輯
2 m% C" t8 E o: G) J' X9 z5 N) }
$ [. y3 ]' I: L1 U+ F: V( \配合 awk, cut, sort, uniq 指令, 可以印出每個 ip 的連線數量, 並用連線數量排序由多而小, 以下會針對 TCP ESTABLISHED 連線檢查:
% X$ B# Q% L' W2 m( x& d0 i" g6 [. C+ D- netstat -an|grep ESTABLISHED|awk '/^tcp/ {print $5}'|awk -F: '{print $1}'|sort|uniq -c|sort -nr|more
複製代碼 針對 port 80 的連線, 將每個 ip 的連線數量印出並進行排序:
1 u' h6 O7 n8 I, m, V- K" \" r6 D- netstat -ntu | grep :80 | awk '{print $5}' | cut -d: -f1 | sort | uniq -c | sort -nr|more
複製代碼 列出最多連接數的 10 個 IP 及其連接數,其中 “:80” 是連接埠號,可改成想要檢查的埠號- netstat -atnp -A inet | grep ":80" | awk -F " " '{print $5}' | awk -F ":" '{print $1}' | sort | uniq -c | sort -nr | head -10
複製代碼
& P; @6 W1 u6 o* ^' y
; \/ z) b0 B8 v* h& A! D( L% |4 v透過以上方法找到來源 ip 後, 例如 ip 是 x.x.x.x, 可以用 iptables 阻擋攻擊+ J) o; c- R# L5 X- w* c3 p
封鎖 IP/ e* S7 a( c; t+ N; ~
- iptables -A INPUT -p all -s x.x.x.x/32 -j DROP
複製代碼 解除封鎖 IP
7 C( J+ j: U" z5 I, y% ^- iptables -D INPUT -p all -s x.x.x.x/32 -j DROP
複製代碼 ; j, F% f% p0 V# c! l7 p
以上參考:7 u) U9 u1 h3 @3 M$ u
https://www.phpini.com/linux/linux-netstat-detect-ddos6 a0 g# T0 z$ D2 V% l
https://www.phpini.com/linux/count-ip-connections
# C8 Y' t/ P9 t& c: p# ihttps://www.phpini.com/linux/netstat-check-connections0 A* `; z* p: h1 R( F8 X
. }1 z; O3 t9 l
F7 H% _7 o, K& Z
& c- c. _9 A& c( ^. j
( A- R0 Q( R9 ] |