
【Linux入門】ポートの確認
「ポートの確認」は、ネットワーク通信において重要な役割を果たします。ポートは、コンピューター上でネットワーク通信を行うための仮想的な通信ポイントであり、ネットワーク上のデータを送受信するために使用されます。以下に、ポートの確認について詳しく解説します。
ポートとは
ポートは、ネットワーク通信において、特定のアプリケーションやサービスが通信を行うための番号です。TCP/IPプロトコルでは、ポート番号は0から65535までの範囲で指定されます。0から1023までの番号は、Well-Known Portsとして知られ、一般的に特定のサービスに割り当てられています。
ポートの確認方法
ポートの確認には、以下の方法が一般的に使用されます。
netstatコマンド
netstatコマンドは、ネットワーク接続やルーティングテーブルなどの情報を表示します。特定のポートの利用状況を確認するには、次のように使用します。
このコマンドは、TCPポート(-t)、UDPポート(-u)、リスニング(待ち受け)状態のポート(-l)表示するオプションを指定しています。
$ netstat -tul
Active Internet connections (only servers)
Proto Recv-Q Send-Q Local Address Foreign Address State
tcp 0 0 0.0.0.0:sunrpc 0.0.0.0:* LISTEN
tcp 0 0 localhost.locald:domain 0.0.0.0:* LISTEN
tcp 0 0 0.0.0.0:ssh 0.0.0.0:* LISTEN
tcp 0 0 localhost:ipp 0.0.0.0:* LISTEN
tcp 0 0 localhost:smtp 0.0.0.0:* LISTEN
tcp6 0 0 [::]:sunrpc [::]:* LISTEN
tcp6 0 0 [::]:ssh [::]:* LISTEN
tcp6 0 0 localhost:ipp [::]:* LISTEN
tcp6 0 0 localhost:smtp [::]:* LISTEN
udp 0 0 0.0.0.0:865 0.0.0.0:*
udp 0 0 localhost.locald:domain 0.0.0.0:*
udp 0 0 0.0.0.0:33849 0.0.0.0:*
udp 0 0 0.0.0.0:bootps 0.0.0.0:*
udp 0 0 0.0.0.0:bootpc 0.0.0.0:*
udp 0 0 0.0.0.0:sunrpc 0.0.0.0:*
udp 0 0 0.0.0.0:mdns 0.0.0.0:*
udp 0 0 localhost:323 0.0.0.0:*
udp6 0 0 [::]:865 [::]:*
udp6 0 0 [::]:sunrpc [::]:*
udp6 0 0 localhost:323 [::]:*
ssコマンド
ssコマンドは、ソケットに関する情報を表示するユーティリティです。ポートの利用状況を確認するには、次のように使用します。
netstatコマンドと同様に、TCPポート(-t)、UDPポート(-u)、リスニング(待ち受け)状態のポート(-l)を表示するオプションを指定しています。
$ ss -tul
Netid State Recv-Q Send-Q Local Address:Port Peer Address:Port
udp UNCONN 0 0 *:865 *:*
udp UNCONN 0 0 192.168.122.1:domain *:*
udp UNCONN 0 0 *:33849 *:*
udp UNCONN 0 0 *%virbr0:bootps *:*
udp UNCONN 0 0 *:bootpc *:*
udp UNCONN 0 0 *:sunrpc *:*
udp UNCONN 0 0 *:mdns *:*
udp UNCONN 0 0 127.0.0.1:323 *:*
udp UNCONN 0 0 [::]:865 [::]:*
udp UNCONN 0 0 [::]:sunrpc [::]:*
udp UNCONN 0 0 [::1]:323 [::]:*
tcp LISTEN 0 128 *:sunrpc *:*
tcp LISTEN 0 5 192.168.122.1:domain *:*
tcp LISTEN 0 128 *:ssh *:*
tcp LISTEN 0 128 127.0.0.1:ipp *:*
tcp LISTEN 0 100 127.0.0.1:smtp *:*
tcp LISTEN 0 128 [::]:sunrpc [::]:*
tcp LISTEN 0 128 [::]:ssh [::]:*
tcp LISTEN 0 128 [::1]:ipp [::]:*
tcp LISTEN 0 100 [::1]:smtp [::]:*
lsofコマンド
lsofコマンドは、オープンされているファイルやネットワーク接続などの情報を表示します。ポートの利用状況を確認するには、次のように使用します。
このコマンドは、リスニング(待ち受け)状態の接続を表示します。
$ su -
パスワード:
最終ログイン: 2024/02/21 (水) 00:01:46 JST日時 pts/0
# lsof -i -P -n | grep LISTEN
rpcbind 696 rpc 8u IPv4 17370 0t0 TCP *:111 (LISTEN)
rpcbind 696 rpc 11u IPv6 17373 0t0 TCP *:111 (LISTEN)
cupsd 1300 root 10u IPv6 24085 0t0 TCP [::1]:631 (LISTEN)
cupsd 1300 root 11u IPv4 24086 0t0 TCP 127.0.0.1:631 (LISTEN)
sshd 1301 root 3u IPv4 24091 0t0 TCP *:22 (LISTEN)
sshd 1301 root 4u IPv6 24320 0t0 TCP *:22 (LISTEN)
dnsmasq 1641 nobody 6u IPv4 25867 0t0 TCP 192.168.122.1:53 (LISTEN)
master 1741 root 13u IPv4 26205 0t0 TCP 127.0.0.1:25 (LISTEN)
master 1741 root 14u IPv6 26206 0t0 TCP [::1]:25 (LISTEN)
まとめ
ポートの確認は、ネットワーク管理やセキュリティ管理の基本的なタスクの一つです。正常に動作しているかどうかを定期的に確認することで、システムのセキュリティと安定性を確保することができます。