概要
| 機能 | 基本コマンド |
|---|---|
| 内部 - 使用中のファイル・ソケット確認 |
lsof |
| 外部 - ポートスキャンとネットワーク調査 |
nmap |
| 特定プロセス - 特定プロセスが使用中のファイル・ポート確認 |
fuser |
lsof コマンド
$ lsof [オプション]
| オプション | 由来 | 説明 |
|---|---|---|
| default | list open files | 開いているファイル(ソケットを含む)を一覧表示 |
-i |
internet | ポート番号を指定 例: lsof -i :80 はポート番号80を使用するプロセス |
-n |
numeric | ホスト名やポート番号を数値で表示(名前解決を行わない) |
-P |
port numbers | ポート番号を数値で表示(サービス名に変換しない) |
lsof
COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME
firefox 5234 jo 60u IPv4 74921 0t0 TCP 192.168.1.10:51932->www.example.com:https (ESTABLISHED)
sshd 739 root 3u IPv6 12345 0t0 TCP *:ssh (LISTEN)
sshd 2378 jo 3u IPv6 12346 0t0 TCP 192.168.1.10:ssh->192.168.1.20:54321 (ESTABLISHED)
nginx 1021 root 6u IPv4 56789 0t0 TCP *:http (LISTEN)
nmap コマンド
$ nmap [オプション] [対象ホスト]
| オプション | 由来 | 説明 |
|---|---|---|
| default | network mapper | 対象ホストのポートスキャンやOS識別を行う基本コマンド |
-sS |
SYN scan | ステルススキャン(半開状態で終了) デフォルトかつ高速 |
-sT |
TCP connect | フルTCP接続によるスキャン(root権限不要) |
-sU |
UDP scan | UDPポートスキャン |
-p |
port | スキャンするポートを指定 例: -p 22,80
|
-O |
OS detection | OS検出(root権限が必要) |
-A |
aggressive scan | OS検出、バージョン、tracerouteなど積極的なスキャンを実施 |
-T[0-5] |
timing | スキャン速度(0:遅い、5:高速) 例: -T4 は実用的な高速スキャン |
-Pn |
no ping | pingせずにスキャン(ファイアウォール越しにも使える) |
fuser コマンド
$ fuser [オプション] 対象ファイルまたはポート
| オプション | 由来 | 説明 |
|---|---|---|
| default | file user | 指定したファイルやポートを使用中のプロセスを表示 |
-k |
kill | 該当プロセスを終了させる(SIGKILL) 例: fuser -k 8080/tcp
|
-n |
namespace | ネームスペース指定(例:tcp, udp, file)例: fuser -n tcp 22
|
-v |
verbose | 詳細情報(アクセスモードやユーザー情報)を表示 |
-u |
user | 実行ユーザー名を表示 |
-m |
mount | ファイルシステムを指定 例: fuser -m /mnt/data
|
Ping-t
lsof
nmap
fuser