日記

【Linux】ネットワーク調査の超定番!「nmap」コマンドの基本と実践スキャンテクニック

こんにちは!今回は、Linux環境でネットワークの状況を調査したり、サーバーのセキュリティ診断を行ったりする際に絶対に外せない強力なツール「nmap(Network Mapper)」の基本的な使い方を解説します。

「ポートが開放されているか確認したい」「ネットワーク内にどんな機器が接続されているか知りたい」という時に非常に役立つコマンドです。

1. nmapとは?

nmap(エヌマップ)は、オープンソースのネットワークスキャンツールです。ターゲットとなるIPアドレスやホストに対してパケットを送信し、その応答を解析することで、以下のような情報を明らかにできます。

  • 稼働しているホストの発見(pingスキャンなど)

  • 開放されているポートの特定(ポートスキャン)

  • 稼働しているサービスやバージョンの検出(Webサーバー、SSHなど)

  • ターゲットのOS(オペレーティングシステム)の推測

2. 【超重要】nmapを使用する際の注意点

技術解説に入る前に、最も重要なルールがあります。

⚠️ 無許可のスキャンは「攻撃」とみなされます

nmapによるスキャンは、サイバー攻撃の初期段階である「下調べ(偵察)」と同じ行為です。自分が管理していないサーバーや、許可を得ていないネットワークに対して実行すると、不正アクセス行為とみなされ、トラブルや法的責任を問われる可能性があります。

必ず「自身のローカル環境」や「事前に許可を得たターゲット」に対してのみ実行してください。

3. 基本的な使い方とスキャンタイプ

nmapの基本構文は非常にシンプルです。

nmap [スキャンタイプ] [オプション] [ターゲットのIPまたはホスト名]

よく使われる主なスキャンタイプを4つ厳選してご紹介します。

① 最もシンプルな「標準スキャン」

nmap 192.168.1.50

オプションなしで実行すると、主要な1,000個のポートを対象に自動でスキャンを行います。手軽ですが、ターゲットのログに残りやすい特徴があります。

② 高速・隠密な「SYNスキャン(ステルススキャン)」

sudo nmap -sS 192.168.1.50

TCPの接続を完全に確立させない(スリーウェイ・ハンドシェイクを途中で止める)ため、ターゲット側にログが残り一見わかりにくいスキャンです。実行には管理者権限(sudo)が必要です。

③ 稼働ホストを調べる「Pingスキャン」

nmap -sn 192.168.1.0/24

「このネットワーク内に、今どのIPアドレスの機器が起動しているか」だけを高速に調べます。ポートスキャンは行わないため、ネットワーク全体の生存確認に便利です。

④ サービス・バージョン検出

nmap -sV 192.168.1.50

単にポートが開いているかどうかだけでなく、そこで動いているソフトウェア(Apache、OpenSSHなど)とその具体的なバージョンまで特定を試みます。古いバージョンによる脆弱性を探す際に重宝します。

4. 覚えておくと便利な「オプション」

実務でよく組み合わせる便利なオプションです。

オプション 意味 実行例・説明
-p ポート指定

nmap -p 80,443 10.0.0.1(特定のポートだけを狙う)


nmap -p- 10.0.0.1(全65,535ポートを全スキャン)

-O OS検出 sudo nmap -O 10.0.0.1(ターゲットのOSを推測する)
-A アグレッシブ nmap -A 10.0.0.1(OS・バージョン検出、スクリプトスキャン等を一括実行)
-oN テキスト保存 nmap -oN result.txt 10.0.0.1(結果をファイルに書き出す)

5. 実践:よく使われる組み合わせ例

実際の現場や検証環境では、以下のようにオプションを組み合わせて効率的に情報を取得します。

sudo nmap -sS -sV -O -p 22,80,443 192.168.1.50

【このコマンドがやっていること】

  1. sudo + -sS:目立ちにくいSYNスキャンで、

  2. -p 22,80,443:SSHとWebサイト用のポート(22, 80, 443番)に的を絞り、

  3. -sV:そこで動いているアプリのバージョンを調べ、

  4. -O:ターゲットのOSが何かを突き止める。

ピンポイントで必要な情報を集めるため、スキャン時間を短縮しつつ強力な診断が可能です。

6. まとめ:自社サーバーの防御にも役立てよう

nmapは攻撃者が使うツールというイメージがあるかもしれませんが、「自分のサーバーに変なポートが開いていないか」「意図しないサービスが外部に公開されていないか」を確認するための防御のツールとしても極めて優秀です。

ぜひ、安全な検証用ネットワーク(VirtualBox上のLinuxなど)を構築して、実際にコマンドを叩いて応答の違いを確かめてみてください!

ちなみにLAN上でどれだけのパソコンが動いているか確認するのは。端末で下記を打ち込む

nmap -sP 192.168.1.0/24

nmapのインストールが必要ですよ

Last Updated on 2026年5月28日8:52 pm by cgishop

-日記
-, , , , , , , , , , , , , , ,