この記事では、Linux®システムでリスニングポートとポートの使用状況を確認する方法について説明します。
lsof
の使用 コマンド
lsof
(List Open Files)コマンドは、現在開いているファイルのリストと、それらを開いたプロセスを生成します。 grep
と組み合わせた場合 コマンド、 lsof
コマンドは高度な検索とリストを実行できます。
lsof
コマンド `lsof -i -P -n`
[root@server-01 ~]# lsof -i -P -n
COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME
chronyd 799 chrony 5u IPv4 19739 0t0 UDP 127.0.0.1:323
chronyd 799 chrony 6u IPv6 19740 0t0 UDP [::1]:323
sshd 1252 root 5u IPv4 26992 0t0 TCP :22 (LISTEN)
sshd 1252 root 7u IPv6 26994 0t0 TCP :22 (LISTEN)
前の例の最後の行は、アプリが sshd
であることを示しています。 TCPポート22でリッスンしています。
次のリストは、前のコマンド例のオプションを示しています。
-
-i
:ネットワーク(インターネット)接続によって開かれたファイルを表示します。 -
-n
:ネットワークがホスト名に変更されないようにします。 -
-P
:ポート番号がネットワークファイルのポート名に変更されないようにします。
grep
の使用 lsof
を使用 コマンド
lsof
を使用する grep
を使用したコマンド 検索条件がLISTEN
の行のみを含むように検索を絞り込むコマンド 。
`lsof -i -P -n | grep (criteria)`
出力例:
[root@server-01 ~]# lsof -i -P -n | grep LISTEN
sshd 1252 root 5u IPv4 26992 0t0 TCP :22 (LISTEN)
sshd 1252 root 7u IPv6 26994 0t0 TCP :22 (LISTEN)
lsof
でポートを指定します 検索
最後に、プロセスを検索するための特定のポートを指定できます。
`lsof -i :(Port Number)`
[root@server-01 ~]# lsof -i :22
COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME
sshd 1252 root 5u IPv4 26992 0t0 TCP :ssh (LISTEN)
sshd 1252 root 7u IPv6 26994 0t0 TCP :ssh (LISTEN)
netstat
の使用 コマンド
netstat
(ネットワーク統計)コマンドは、ネットワーク接続、ポートの使用状況、プロトコル、およびその他の情報を表示します。
netstat
コマンド `netstat -tulpn`
出力例:
[root@server-01 ~]# netstat -tulpn
Active Internet connections (only servers)
Proto Recv-Q Send-Q Local Address Foreign Address State PID/Program name
tcp 0 0 0.0.0.0:22 0.0.0.0:* LISTEN 1252/sshd
tcp6 0 0 :::22 :::* LISTEN 1252/sshd
udp 0 0 127.0.0.1:323 0.0.0.0:* 799/chronyd
udp6 0 0 ::1:323 :::* 799/chronyd
次のリストは、前のコマンド例で使用されたオプションを示しています。
-
-l </ code> :リスニングソケットを表示します。
-
-n
:サービス名の解決を防止します。 -
-p
:ソケットが開いているプロセス名リストを表示します。 -
-t
:TCPソケットを表示します。 -
-u
:UPDソケットを表示します。
grep
の使用 netstat
を使用 コマンド
netstat
を使用します grep
を使用したコマンド 検索条件がLISTEN
の行のみを含むように検索を絞り込むコマンド 。
`netstat -tulpn | grep (Criteria)`
[root@server-01 ~]# netstat -tulpn | grep LISTEN
tcp 0 0 0.0.0.0:22 0.0.0.0:* LISTEN 1252/sshd
tcp6 0 0 :::22 :::* LISTEN 1252/sshd
ss
の使用 コマンド
ss
(ソケット統計)コマンドは、ネットワークソケット関連情報を表示します。 ss
を使用することもできます netstat
に取って代わるため、代わりに新しいシステムでコマンドを実行します コマンド。
ss
コマンド `ss -tulwn`
出力例:
[root@server-01 ~]# ss -tulwn
Netid State Recv-Q Send-Q Local Address:Port Peer Address:Port
icmp6 UNCONN 0 0 *:58 *:*
udp UNCONN 0 0 127.0.0.1:323 0.0.0.0:*
udp UNCONN 0 0 [::1]:323 [::]:*
tcp LISTEN 0 128 0.0.0.0:22 0.0.0.0:*
tcp LISTEN 0 128 [::]:22 [::]:*
次のリストは、前のコマンド例で使用されたオプションを示しています。
-
-l </ code> リスニングソケットを表示します。
-
-n
サービス名を解決しないようにします。 -
-t
TCPソケットを表示します。 -
-u
UPDソケットを表示します。 -
-w
RAWソケットを表示します。
nmap
の使用 コマンド
nmap
(Network Mapper)コマンドは、ポートスキャンとホスト検出を実行します。
nmap
コマンド `nmap -sT -O localhost`
[root@server-01 ~]# nmap -sT -O localhost
Starting Nmap 7.70 ( https://nmap.org ) at 2020-06-10 22:49 UTC
Nmap scan report for localhost (127.0.0.1)
Host is up (0.00036s latency).
Other addresses for localhost (not scanned): ::1
Not shown: 999 closed ports
PORT STATE SERVICE
22/tcp open ssh
次のリストは、前のコマンド例で使用されたオプションを示しています。
-
-sT
:TCP接続スキャン -
-O
:オペレーティングシステムの検出