马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要 登录 才可以下载或查看,没有账号?开始注册
x
netstat -ul/ S0 J. C4 X% O6 a1 z# k
Active Internet connections (only servers)
" v! i3 T' z* P4 q2 V9 @Proto Recv-Q Send-Q Local Address Foreign Address State : Z0 h5 Z. f+ D `3 ~% A( a9 t
udp 0 0 172.20.98.218:ntp *:*
/ {4 W; ?9 K$ y' b9 {: cudp 0 0 localhost:ntp *:*
0 f& ~' A& d8 l8 \0 _udp 0 0 *:ntp *:* # t1 i$ Z! I2 P* n2 {+ \
udp 0 0 *:syslog *:*
" e% i$ \2 O/ n3 p4 Mgetnameinfo failed) x, J( ]- n; ~; V3 C( W w5 w9 l
udp6 0 0 [UNKNOWN]:ntp [::]:* 9 D- b( M! w f% |7 Y! z1 p! P* t
udp6 0 0 ip6-localhost:ntp [::]:*
5 x7 ?% h/ ?1 g, X2 ^. H! cudp6 0 0 [::]:ntp [::]:*
& e3 {9 g8 c4 r0 D0 k7 }udp6 0 0 [::]:syslog [::]:*6 N6 e+ \9 r! H$ R
# A( {/ Q3 I9 j. X8 }! i) m
9 O. X$ B- }$ c. X; t3 t1. 列出所有端口 (包括监听和未监听的) 列出所有端口 netstat -a [backcolor=rgb(245, 245, 245) !important][url=][/url]! B, m* z* M, w: c, D
# netstat -a | more3 L# A, e. O! M
Active Internet connections (servers and established)* O4 T8 u; ]' j" `% a! T! e
Proto Recv-Q Send-Q Local Address Foreign Address State
7 R9 q$ I+ w1 n tcp 0 0 localhost:30037 *:* LISTEN
1 n3 ]8 L+ C5 {8 N' F+ U udp 0 0 *:bootpc *:*6 K# [: N$ b- ]7 k L4 \8 `( b& F. e3 T
7 N& \- c a7 w( I7 y0 u1 x1 `Active UNIX domain sockets (servers and established)5 p W8 L& N) y D
Proto RefCnt Flags Type State I-Node Path
. R6 c K1 Z( N8 i8 M5 L: E unix 2 [ ACC ] STREAM LISTENING 6135 /tmp/.X11-unix/X0
6 V0 n' r G: `" W) J unix 2 [ ACC ] STREAM LISTENING 5140 /var/run/acpid.socket[backcolor=rgb(245, 245, 245) !important][url=][/url]8 j2 i5 [5 L7 O! ]; ]
5 E% m+ i+ j5 @/ [" M- T: A
4 x6 D* ~5 x0 |* c+ n* [, w4 Y, n$ l: p
列出所有 tcp 端口 netstat -at [backcolor=rgb(245, 245, 245) !important][url=][/url]5 m5 l+ E& L* ?7 c1 o1 s% R2 K
# netstat -at
7 v( Q, G) T( V, z+ |* t Active Internet connections (servers and established)
1 c* D9 ^2 O E" k. O/ X' Q: p) S Proto Recv-Q Send-Q Local Address Foreign Address State# o- F ^4 R/ v% a, Q! C& Y
tcp 0 0 localhost:30037 *:* LISTEN
% W" D5 l3 ` t- H3 G tcp 0 0 localhost:ipp *:* LISTEN; k0 H) b$ ~% M+ p
tcp 0 0 *:smtp *:* LISTEN# C+ ]; A! D i0 z; e
tcp6 0 0 localhost:ipp [::]:* LISTEN[backcolor=rgb(245, 245, 245) !important][url=][/url]( u( y1 {4 T. f; V* y$ m- x8 \
) F+ u7 S2 |" \8 z- ]& r+ e" q+ L0 i2 q( l# J5 D
& B3 l. H- ~9 H8 \9 ^
列出所有 udp 端口 netstat -au # netstat -au
- A }; k' h' s6 x# o5 D Active Internet connections (servers and established)0 Y6 }5 y! n3 B% H" \5 f# F
Proto Recv-Q Send-Q Local Address Foreign Address State
: c8 m4 L$ J+ }1 l( l udp 0 0 *:bootpc *:*
, D4 |% `7 x* {, t1 O udp 0 0 *:49119 *:** A9 v2 G3 J, Z( [( |
udp 0 0 *:mdns *:*
5 @. W+ b' w& |- ?7 l
* \' P% [/ ?) h* f0 v. E& y
2 ]+ {( Q0 ]4 z) `6 C 2. 列出所有处于监听状态的 Sockets 只显示监听端口 netstat -l # netstat -l
$ h" L z5 f# p; Y" s3 d4 W Active Internet connections (only servers). C: u* y' l/ K) Z5 ~, V' J
Proto Recv-Q Send-Q Local Address Foreign Address State
: E4 v, \' E5 f2 {5 H; c c tcp 0 0 localhost:ipp *:* LISTEN
' [+ I6 j$ ^: d3 d/ t) V tcp6 0 0 localhost:ipp [::]:* LISTEN
) J$ ^# ~4 N; X udp 0 0 *:49119 *:*
: @' g3 S7 x' Y. T) r" c
. D8 p+ {1 b W; X4 E/ ]3 }/ }1 D, w& g. Y8 {) }
只列出所有监听 tcp 端口 netstat -lt # netstat -lt
* B$ i! C, d6 T q Active Internet connections (only servers)
( k S( y9 u0 U& u Proto Recv-Q Send-Q Local Address Foreign Address State. g% C# J4 P3 \
tcp 0 0 localhost:30037 *:* LISTEN2 g% m; _% d& B/ ]
tcp 0 0 *:smtp *:* LISTEN: T$ e; _2 x8 A+ y
tcp6 0 0 localhost:ipp [::]:* LISTEN4 f$ y; ?# o7 D* k2 D. _3 l- z- T( x
~" V w/ l. [# k: {- E
6 }1 E+ d$ P% U0 X
只列出所有监听 udp 端口 netstat -lu # netstat -lu
; W) ~9 ^9 n5 {- O; Q! V Active Internet connections (only servers)
0 T1 j$ M3 @6 }4 H; [ Proto Recv-Q Send-Q Local Address Foreign Address State
% A# k& p3 T4 r% @ udp 0 0 *:49119 *:*7 O: m2 ]: c$ y) Q
udp 0 0 *:mdns *:*
/ ~* Y0 A4 h( m+ u7 g# B
2 @, Q* z( T8 i" K( b5 R
, F1 l7 k% ^" [( U5 O 只列出所有监听 UNIX 端口 netstat -lx [backcolor=rgb(245, 245, 245) !important][url=][/url]
0 x8 J; T: j- Q. L# netstat -lx
* g/ _! n/ [8 a. Q5 h% l& V2 E Active UNIX domain sockets (only servers)
$ g" m6 a" `: x4 g/ x3 j, W$ m Proto RefCnt Flags Type State I-Node Path
% B! z. X% H# _4 k unix 2 [ ACC ] STREAM LISTENING 6294 private/maildrop
9 v0 W" r7 k5 V E8 l- d) a4 k unix 2 [ ACC ] STREAM LISTENING 6203 public/cleanup
' O& i/ R+ e' d) d# r2 e2 I6 [$ D- x unix 2 [ ACC ] STREAM LISTENING 6302 private/ifmail
/ X4 s) {0 [7 y" f+ n2 I unix 2 [ ACC ] STREAM LISTENING 6306 private/bsmtp[backcolor=rgb(245, 245, 245) !important][url=][/url]
: Q4 Q% ^# I* M/ p# X0 F& ^
5 e \8 } ` f5 o, n( O+ p3 o
: x" _0 T$ b5 p; c: S4 R5 {) I$ ?6 ?- g: @; ~4 ?& N
2 b5 V6 k( ?' e
5 F" T8 {* x9 z" C0 q9 q3. 显示每个协议的统计信息 显示所有端口的统计信息 netstat -s [backcolor=rgb(245, 245, 245) !important][url=][/url]
$ Z& C4 j* E3 R6 Q. G& Z& }# netstat -s
2 _7 b4 W& D0 _9 m# H, |: X; L" P' g Ip:
t1 x9 Y' m8 V 11150 total packets received( }5 \9 G' Q- ^; H2 o, p; f
1 with invalid addresses+ a A4 s; q' b7 I2 A( C
0 forwarded K! \3 h& _6 [' x3 e
0 incoming packets discarded; i' J% C: i: ]# [) D
11149 incoming packets delivered' e1 y5 F$ J2 i) f: L
11635 requests sent out# A! H9 i5 D) ?9 D6 y: S [
Icmp: N2 j2 u0 {* A0 D
0 ICMP messages received
5 k) @: _& ]3 b9 X% z4 \ 0 input ICMP message failed.6 q4 g; ^# j* e$ f- `1 ]
Tcp:
7 s) f1 q# w1 [$ F9 c% W- e 582 active connections openings) Q+ ^6 b$ {9 n0 D9 k9 }
2 failed connection attempts* ~4 _1 c$ S5 r0 x* m U
25 connection resets received$ V3 A' o/ b8 n& l9 b0 `: I
Udp:" g9 W# g8 N) p) Q8 j2 g6 w
1183 packets received
! A2 }+ z/ Q B7 l8 y2 v7 ` 4 packets to unknown port received.
" o- X* c) m# x+ ~# e* {4 t .....[backcolor=rgb(245, 245, 245) !important][url=][/url]
3 Q: N, J4 w* h, t; _; h" H$ @; G- m' E
3 ~4 }# N$ A5 X
( n4 I: v4 M0 }, r. |/ W6 u 显示 TCP 或 UDP 端口的统计信息 netstat -st 或 -su # netstat -st # S! n- M. \5 h/ e, @
# netstat -su+ |8 E- M X7 n. |7 ]) D
) Z; p" x2 V& _; v; u9 X
4 T* y$ P' L+ V, g$ ` B
4. 在 netstat 输出中显示 PID 和进程名称 netstat -pnetstat -p 可以与其它开关一起使用,就可以添加 “PID/进程名称” 到 netstat 输出中,这样 debugging 的时候可以很方便的发现特定端口运行的程序。 # netstat -pt% z( D' c- N( U' ^5 F9 t. s) `/ V z
Active Internet connections (w/o servers)5 {/ X; }2 h0 q0 n
Proto Recv-Q Send-Q Local Address Foreign Address State PID/Program name
m9 e" _0 {. U4 i% U) z9 n tcp 1 0 ramesh-laptop.loc:47212 192.168.185.75:www CLOSE_WAIT 2109/firefox4 i7 y2 {2 {* L. ^& Y) F+ ]
tcp 0 0 ramesh-laptop.loc:52750 lax:www ESTABLISHED 2109/firefox
- c: A( K5 \' i- B. h8 N2 X
5 g4 x Y) O4 K7 o
. J& z! t# @4 a3 Q5. 在 netstat 输出中不显示主机,端口和用户名 (host, port or user)当你不想让主机,端口和用户名显示,使用 netstat -n。将会使用数字代替那些名称。 同样可以加速输出,因为不用进行比对查询。 # netstat -an
# O2 D; ?) A; {1 e$ Z h7 b7 w3 ^# f% ` _' A% X! J
3 @, J# ]" x; D
如果只是不想让这三个名称中的一个被显示,使用以下命令 # netsat -a --numeric-ports
1 E2 V3 z! p* d3 a& P0 c2 X8 _# netsat -a --numeric-hosts
m" a8 W' y- k) t1 I) [4 |# netsat -a --numeric-users
1 U& Y$ Y% W5 h$ E7 e {) A2 Z* ? o
8 B% U0 @. {% r3 A9 ?
6. 持续输出 netstat 信息netstat 将每隔一秒输出网络信息。 [backcolor=rgb(245, 245, 245) !important][url=][/url]
' l. o1 d# m1 F' G ]# netstat -c
$ [$ T9 j3 d2 S% q Active Internet connections (w/o servers)0 a6 I, @" E( ^- S) M% r1 ~
Proto Recv-Q Send-Q Local Address Foreign Address State
! p0 R% P5 T- n0 o tcp 0 0 ramesh-laptop.loc:36130 101-101-181-225.ama:www ESTABLISHED
6 h5 b/ u" f' ]. m$ | tcp 1 1 ramesh-laptop.loc:52564 101.11.169.230:www CLOSING
6 H9 n5 Y9 V3 U$ ]- L: V/ Z tcp 0 0 ramesh-laptop.loc:43758 server-101-101-43-2:www ESTABLISHED
) T3 [/ `3 {6 Y: P% b( p tcp 1 1 ramesh-laptop.loc:42367 101.101.34.101:www CLOSING; a( r/ ^- y4 j$ B% s& s' |
^C[backcolor=rgb(245, 245, 245) !important][url=][/url]; d9 S* a7 N' N" s E
4 a1 ~7 n1 p5 n/ ?* o: L
: ?: ^8 O! @0 u( A
! D3 F2 |; }+ x" ^* P/ t$ P, o1 S 7. 显示系统不支持的地址族 (Address Families)netstat --verbose
' h: ]5 [: o' M. T8 H$ V
$ @$ k$ F: v% j0 _! D
& X& g8 {% |8 h4 ~& k8 l在输出的末尾,会有如下的信息 netstat: no support for `AF IPX' on this system.5 H5 V( p& s" O K7 A# B* i% @
netstat: no support for `AF AX25' on this system.7 V' D% z; e: A0 e/ B' f! _ N. f1 v0 l
netstat: no support for `AF X25' on this system.; K8 x& J( r) {$ T) T4 \0 w. q
netstat: no support for `AF NETROM' on this system.% b9 i7 H9 `' y' d4 l" H6 A: s
! _4 J5 ^5 \% z$ o; B7 O! S" A. c4 k% y0 H/ q i
8. 显示核心路由信息 netstat -r# netstat -r, z+ S! C7 `1 i# h
Kernel IP routing table" p- Z( U; d4 b" ~
Destination Gateway Genmask Flags MSS Window irtt Iface& N6 u& s7 \4 }
192.168.1.0 * 255.255.255.0 U 0 0 0 eth28 E2 @- R; o6 l! N
link-local * 255.255.0.0 U 0 0 0 eth2
' x6 V* u* E' j! B8 Y default 192.168.1.1 0.0.0.0 UG 0 0 0 eth2 o% Y8 n& N- P' Q: @- [
8 \6 H% P3 N5 @, p& r; K8 O6 a9 G. Y
+ r1 i3 B& Z$ j# F注意: 使用 netstat -rn 显示数字格式,不查询主机名称。 9. 找出程序运行的端口并不是所有的进程都能找到,没有权限的会不显示,使用 root 权限查看所有的信息。 # netstat -ap | grep ssh, x7 c' I7 d' O. h% U' P
tcp 1 0 dev-db:ssh 101.174.100.22:39213 CLOSE_WAIT -! x. \# y& M. n5 d3 V5 l
tcp 1 0 dev-db:ssh 101.174.100.22:57643 CLOSE_WAIT -" V) K5 c5 E; y; A
0 n+ `5 E2 T! E
* n! R9 N6 Y. _, _+ k# s E
找出运行在指定端口的进程 # netstat -an | grep ':80'9 o! g1 X7 H- H4 X
9 f/ m! ?# | T- L) W/ t& e, Z5 p1 o z
10. 显示网络接口列表# netstat -i
8 F& _! u4 Q. H/ \ Kernel Interface table
7 ~3 ]' O! d- o% K( ? Iface MTU Met RX-OK RX-ERR RX-DRP RX-OVR TX-OK TX-ERR TX-DRP TX-OVR Flg8 j1 ]2 u! l+ H; q# ~4 _
eth0 1500 0 0 0 0 0 0 0 0 0 BMU7 e3 z" y( G! Z! I2 c- X, q. c6 A
eth2 1500 0 26196 0 0 0 26883 6 0 0 BMRU; x- T4 y6 g* a7 I
lo 16436 0 4 0 0 0 4 0 0 0 LRU
+ |+ j3 T- m V/ j- k
. s1 ?9 S6 `6 t5 J
2 O) I+ R- ^7 m显示详细信息,像是 ifconfig 使用 netstat -ie: [backcolor=rgb(245, 245, 245) !important][url=][/url]
7 M9 q& u9 s/ e% f4 t$ G0 c4 b# netstat -ie
" W2 m- A( b5 V7 f Kernel Interface table6 s: h8 x/ v5 o% P/ [+ i0 j1 O
eth0 Link encap:Ethernet HWaddr 00:10:40:11:11:11
9 T( d3 R4 @; d. k. X% i UP BROADCAST MULTICAST MTU:1500 Metric:1
. l9 S' Q8 ?; ] RX packets:0 errors:0 dropped:0 overruns:0 frame:0$ q5 m9 c) P H4 |* ~; s5 ?
TX packets:0 errors:0 dropped:0 overruns:0 carrier:07 J Q5 e6 S- \ p, g4 ^- |
collisions:0 txqueuelen:1000" z4 K( }% y$ z6 P) `
RX bytes:0 (0.0 B) TX bytes:0 (0.0 B)! g/ k1 q E" b; G; {. y. l
Memory:f6ae0000-f6b00000[backcolor=rgb(245, 245, 245) !important][url=][/url]
5 L5 G Q2 L1 T( c& p( z8 B
h0 K3 q/ @, B 11. IP和TCP分析 查看连接某服务端口最多的的IP地址 [backcolor=rgb(245, 245, 245) !important][url=][/url]( T6 N7 L. m+ D, w% D& P* |
wss8848@ubuntu:~$ netstat -nat | grep "192.168.1.15:22" |awk '{print $5}'|awk -F: '{print $1}'|sort|uniq -c|sort -nr|head -20+ P5 @3 ~$ v1 L& P. s4 @/ [
18 221.136.168.36 [: W7 F7 G% i9 h' N) i
3 154.74.45.242
! c' w; C9 w1 ?2 M2 U @0 O2 78.173.31.236/ S+ Y+ D) Z6 G
2 62.183.207.98
( L4 f, ]# @9 W" I4 H& ]# s+ g2 192.168.1.14
# z% R7 d4 V; \4 b6 O( P9 j2 182.48.111.215
5 d: j) Y$ T; E3 y3 [2 124.193.219.34
2 Q( ~1 H6 y! h+ t) H6 \2 \2 119.145.41.29 j0 ~% C1 A8 W/ K7 B9 r7 |
2 114.255.41.309 _4 I" |! n% @+ g2 ?7 k
1 75.102.11.99[backcolor=rgb(245, 245, 245) !important][url=][/url]- F/ w: D" Y% ]8 x/ q5 x' u" t
; f: s9 [5 B) D. x$ _1 ? TCP各种状态列表 [backcolor=rgb(245, 245, 245) !important][url=][/url]0 G8 X7 W; l( L8 l j+ w
wss8848@ubuntu:~$ netstat -nat |awk '{print $6}'1 {" I+ F. v1 Q8 f
established)
: u! Q) l, `1 k; }* o4 \' ]8 }2 kForeign+ }/ f( U+ @. b4 ]( ^ u3 M' s
LISTEN
! A* s$ k6 D+ T9 R% u& ~% YTIME_WAIT/ c! V+ J0 x% {5 {% d
ESTABLISHED8 U" u8 X2 [& m/ K! x% n
TIME_WAIT9 d' G# y# u9 C1 Z$ e& R* ]: y( k2 J
SYN_SENT[backcolor=rgb(245, 245, 245) !important][url=][/url]+ h: w9 Z/ X: Z$ v) l* j \% v
, }+ E8 W* \" R' B% y* y. y& l& N 先把状态全都取出来,然后使用uniq -c统计,之后再进行排序。[backcolor=rgb(245, 245, 245) !important][url=][/url]* u8 I1 E# t4 D# u) `
wss8848@ubuntu:~$ netstat -nat |awk '{print $6}'|sort|uniq -c
+ f7 f; [8 K2 \9 k: r) B143 ESTABLISHED
& `0 h X' T. S' Q3 S- h1 FIN_WAIT1" @5 U9 h* o% D- t" p9 z. L9 a
1 Foreign7 F+ N: S& F3 \, B0 m5 G" E
1 LAST_ACK Q9 c; E( s5 L3 E$ B1 S+ i
36 LISTEN
$ o' i, z7 f+ O& q% x+ ?6 SYN_SENT
% b% k. n4 J2 }/ X" L$ k& M% p5 s113 TIME_WAIT
5 X- k* J$ N s1 V# N3 R1 established)[backcolor=rgb(245, 245, 245) !important][url=][/url]
( ~ D4 R1 k* }, I" x
) V) O$ a% X: [1 v- z2 I! {$ k 最后的命令如下:netstat -nat |awk '{print $6}'|sort|uniq -c|sort -rn \( t/ G8 L3 Z6 N
分析access.log获得访问前10位的ip地址awk '{print $1}' access.log |sort|uniq -c|sort -nr|head -10& {" t1 R7 F: ^- N" X
# U$ U. R. v$ T2 q v& Q2 O
& ], K8 F7 m; o& B, Z+ V1 `% d$ A5 q |