Linux Tips

特定のポートをオープンしているプロセスを調べるには

北浦訓行
2004/11/11

 特定のポートをオープンしているプロセスを調べるには、lsofコマンドを使用する。

 lsofは、rootで実行する必要がある。-iオプションでポート番号を指定すると、そのポートをオープンしているプロセスが表示される。

# lsof -i:22
COMMAND  PID USER   FD   TYPE DEVICE SIZE NODE NAME
sshd    2436 root    3u  IPv6   4674       TCP *:ssh (LISTEN)
sshd    3198 root    4u  IPv6   6078       TCP 192.168.0.7:ssh->192.168.0.30:1930 (ESTABLISHED)
sshd    3200 nori    4u  IPv6   6078       TCP 192.168.0.7:ssh->192.168.0.30:1930 (ESTABLISHED)

 -iオプションでは、複数のポートについて一度に表示することも可能だ。その際は、ポート番号をカンマで区切る。

# lsof -i:21,22
COMMAND  PID USER   FD   TYPE DEVICE SIZE NODE NAME
sshd    2436 root    3u  IPv6   4674       TCP *:ssh (LISTEN)
sshd    3198 root    4u  IPv6   6078       TCP 192.168.0.7:ssh->192.168.0.30:1930 (ESTABLISHED)
sshd    3200 nori    4u  IPv6   6078       TCP 192.168.0.7:ssh->192.168.0.30:1930 (ESTABLISHED)
vsftpd  3295 root    3u  IPv4   6793       TCP *:ftp (LISTEN)

 また、プロセス名を指定することもできる。その場合は、「-c プロセス名」オプションを付ける。例えば、sshについて調べるには以下のようにする。

# lsof -c ssh
COMMAND  PID USER   FD   TYPE    DEVICE    SIZE    NODE NAME
sshd    2436 root  cwd    DIR       3,2    4096       2 /
sshd    2436 root  rtd    DIR       3,2    4096       2 /
sshd    2436 root  txt    REG       3,2  274692 1343255 /usr/sbin/sshd
(省略)

Linux Tips Index



 Linux Squareフォーラム Linux Tipsカテゴリ別インデックス
インストール/RPM ブート/ブートローダ
ファイル操作 環境設定
ユーザー管理 コンソール/ターミナル
X Window System セキュリティ
トラブルシューティング 他OS関係
ネットワーク ハードウェア
Webサーバ Samba
GNOME KDE
OpenOffice.org エミュレータ
ソフトウェア そのほか/FAQ
全Tips公開順インデックス Linux Tips月間ランキング
Linux Squareフォーラム全記事インデックス

MONOist組み込み開発フォーラムの中から、Linux関連記事を紹介します


Linux & OSS フォーラム 新着記事
@ITメールマガジン 新着情報やスタッフのコラムがメールで届きます(無料)

注目のテーマ

Linux & OSS 記事ランキング

本日 月間