nmap – ネットワーク探索とセキュリティスキャンツール

診断・疎通確認
スポンサーリンク

nmap(Network Mapper)は、ネットワーク上のホストやサービスを探索し、稼働しているポートやOS、サービスの種類を検出するためのコマンドです。
サーバー管理やセキュリティ診断で、開いているポートや稼働中のサービスを確認するときに利用されます。

構文(Syntax)

nmap [オプション] [ターゲットホストまたはネットワーク]

主なオプション一覧

オプション説明使用例
-p PORTポートを指定してスキャンnmap -p 22 192.168.1.10
-p PORT1-PORT2ポート範囲を指定nmap -p 20-80 192.168.1.10
-sSTCP SYN スキャン(高速・一般的)nmap -sS 192.168.1.10
-sTTCP Connect スキャンnmap -sT 192.168.1.10
-sUUDP スキャンnmap -sU 192.168.1.10
-OOS検出nmap -O 192.168.1.10
-sVサービスバージョン検出nmap -sV 192.168.1.10
-A詳細スキャン(OS, バージョン, スクリプト, traceroute)nmap -A 192.168.1.10
-Pnホスト発見をスキップ(pingせずにスキャン)nmap -Pn 192.168.1.10
-T[0-5]スキャン速度を調整(0=遅い, 5=速い)nmap -T4 192.168.1.10

実行例

単一ホストのスキャン

nmap 192.168.1.10

出力例:

PORT   STATE SERVICE
22/tcp open  ssh
80/tcp open  http

ポート範囲を指定してスキャン

nmap -p 20-100 192.168.1.10

サービスとバージョンを特定

nmap -sV 192.168.1.10

出力例:

22/tcp open  ssh    OpenSSH 8.9p1 Ubuntu 3
80/tcp open  http   Apache httpd 2.4.52

ネットワーク全体をスキャン

nmap 192.168.1.0/24

(同一ネットワーク内のホストを探索)

OS検出

sudo nmap -O 192.168.1.10

ステルススキャン(SYNスキャン)

sudo nmap -sS 192.168.1.10

エラー例(対象ホストがダウンしている)

nmap 192.168.1.200

出力例:

Note: Host seems down. If it is really up, but blocking our ping probes, try -Pn

関連コマンド

  • netcat (nc) : 手動でポートに接続してテストできる。
  • socat : 多用途のネットワーク接続ツール。
  • ss / netstat : ローカルのポート利用状況を確認する。

備考

  • nmap は管理者権限(sudo)が必要なオプションがあります(例: OS検出、SYNスキャン)。
  • ネットワーク管理やセキュリティ診断では有用ですが、無断で外部ネットワークをスキャンすることは不正アクセス行為にあたる可能性があるため注意してください。
  • nmap にはスクリプトエンジン(NSE)があり、脆弱性診断や高度な検出にも利用できます。

参考

スポンサーリンク
Bash玄

はじめまして!Bash玄です。

エンジニアとしてシステム運用に携わる中で、手作業の多さに限界を感じ、Bashスクリプトを活用して業務を効率化したのがきっかけで、この道に入りました。「手作業は負け」「スクリプトはシンプルに」をモットーに、誰でも実践できるBashスクリプトの書き方を発信しています。

このサイトでは、Bashの基礎から実践的なスクリプト作成まで、初心者でもわかりやすく解説しています。少しでも「Bashって便利だな」と思ってもらえたら嬉しいです!

# 好きなこと
- シンプルなコードを書くこと
- コマンドラインを快適にカスタマイズすること
- 自動化で時間を生み出すこと

# このサイトを読んでほしい人
- Bashに興味があるけど、何から始めればいいかわからない人
- 定型業務を自動化したい人
- 効率よくターミナルを使いこなしたい人

Bashの世界に一歩踏み出して、一緒に「Bash道」を極めていきましょう!

Bash玄をフォローする

コメント