使用中のポート/サービスを調べる (rootで実行)
netstat -anp | grep 8888
netstat -anp | grep ssh
a Send,Rsvの両方を表示
n アドレス、ホスト、ユーザ名を数値表示
p ソケットが属しているpid,プログラムを表示
####netstat 見方
|ColName|Mean|
|:--|:--|:--|
|Proto|プロトコルの種類(TCP/UDP)|
|Recv-Q|socketに接続されたユーザーに送られなかったデータのバイト数|
|Send-Q|リモートホストが拒否したデータのバイト数|
|Local Address|ローカル側socketの Address:Port
0.0.0.0はany 自分のIFのどれからでも、の意|
|Foreign Address|リモート側socketのAddress:Port
::1は自ホストを表すループバックアドレス
0.0.0.0:*はbroadcast address|
|State|socketの状態|
|PID/Program name|socketを利用しているプログラム名とPID|
Stateの項目説明
Stateus | Mean |
---|---|
ESTABLISHED | TCPでセッション確立、通信中 |
CONNECTED | socketは接続されている |
TIME_WAIT | 接続待ちの状態。しばらくするとCLOSEDへ移行する |
LISTENING | 利用可能なポートの待ち受け状態を指す。 |
SYN_SENT | サーバに接続要求 |
SYN_RECV | クライアントからSYN要求を受け取った直後の状態を指す |
FIN_WAIT_1 | サーバからFINが送信された状態 |
FIN_WAIT_2 | ACK受信状態を指す |
CLOSE_WAIT | サーバからFINを受信した状態。次はLAST_ACKへ移る |
CLOSING | FINを受け取ってコネクションが閉じられる状態を指す |
LAST_ACK | FINに対するACK待ち状態を指す。ACKを受信するとCLOSEDへ移行して終了する |
CLOSED | 未使用状態のTCPポート |
おまけ
netstat -s
パケットの統計
grep -w PATTERN
完全一致。PATTERN前後に英数字及びアンスコしかない時しかヒットしなくなる
netstat -anp | grep -w 8888
サービス 調べ方
grep ssh /etc/services