Mac に Nmap をインストールする

Mac に Nmap をインストールする

Mac に Nmap をインストールする手順を紹介します。

Nmap とは、あるネットワーク内で何台のネットワーク機器が接続されているか、また、サーバ等のネットワーク機器に対してどのポートが空いているか等を調査することができるネットワークスキャナツールです。

ネットワーク設計の際や、サーバのセキュリティ設定のチェックの際などが利用シーンとして挙げられます。

非常に強力なツールゆえに、注意を払って使用しなければなりません。利用する際は自己責任で行ってください。

さて、Nmap は Windows, Mac OS X, Linux, Unix 等多くの OS に対応したオープンソースソフトウェアです。Linux 等であれば、パッケージマネージャ等で簡単にインストールすることができます。

Mac OS X へインストールする場合は、主な方法として下記の 3 つの方法があります。

  1. Mac OS X 用のインストーラパッケージを用いる
  2. ソースファイルからコンパイルする
  3. Mac Ports,  Homebrew 等のパッケージインストーラを用いる

今回は 2 のソースファイルからコンパイルしてインストールする方法を紹介します。

0. 事前準備

nmap のコンパイルには Xcode の Command Line Tool が必要です。既にインストール済みであればスキップして構いませんが、インストールしていない場合は、App Store から Xcode をインストール後、Xcode を実行して Command Line Tool をインストールしましょう。

 

1. Nmap のソースファイルを公式ページからダウンロードする

公式ページの Download ページにアクセスし、最新版の Nmap をダウンロードする。

※2015/6/1 執筆時点での最新版は 6.47。

 

nmap_download

2. ダウンロードしたソースファイルを解凍する

下記コマンドを実行して、ダウンロードした圧縮ファイルを解凍します。ファイル名のバージョン表記は自身がダウンロードしたものに置き換えてください。

#ダウンロードディレクトリに移動
cd ~/Downloads/
#tar コマンドで解凍
tar xjvf nmap-6.47.tar.bz2

3. コンパイルしてインストール

下記コマンドを実行して、configure 後、make してインストールします。

#解凍した Nmap のディレクトリに移動
cd nmap-6.47
#configure
./configure
#make
make
#インストール
sudo make install

4. インストールできたか確認

ホームディレクトリ等に移動して、Nmap コマンドを入力し、コマンドが実行できるか確認します。実行できれば、インストール成功です。

下記では例としてバージョン確認するオプション -V をつけています。

#ホームディレクトリに移動
cd ~/
#nmap を実行(バージョン確認)
nmap -V

5. 使用例

あるネットワーク内のホストをスキャンする

下記コマンドでは、192.168.1.0-255 内のホストを検索します。

#192.168.1.0/24 内のホストをスキャンする
nmap -sP 192.168.1.0-255

ネットワーク内に検索可能なホストが存在すると下記のような結果が得られます。

Starting Nmap 6.47 ( http://nmap.org ) at 2015-06-01 21:37 JST
Nmap scan report for 192.168.1.1
Host is up (0.0024s latency).
Nmap scan report for 192.168.1.2
Host is up (0.00027s latency).
Nmap scan report for 192.168.1.7
Host is up (0.0043s latency).
Nmap scan report for 192.168.1.10
Host is up (0.024s latency).
Nmap scan report for 192.168.1.45
Host is up (0.029s latency).
Nmap scan report for 192.168.1.120
Host is up (0.023s latency).
Nmap scan report for 192.168.1.200
Host is up (0.0067s latency).
Nmap done: 256 IP addresses (7 hosts up) scanned in 2.90 seconds

あるホストの OS を検出する

-O オプションを使うことで、ターゲットの OS を推測することができます。

#192.168.1.145の OS を検出する
sudo nmap -O 192.168.1.145

例として Windows 8.1 をスキャンした場合、下記のような結果が得られます。

Starting Nmap 6.47 ( http://nmap.org ) at 2015-06-01 22:24 JST
Nmap scan report for 192.168.1.145
Host is up (0.0065s latency).
Not shown: 994 filtered ports
PORT      STATE SERVICE
554/tcp   open  rtsp
2869/tcp  open  icslap
3389/tcp  open  ms-wbt-server
5357/tcp  open  wsdapi
10243/tcp open  unknown
49155/tcp open  unknown
MAC Address: 52:54:00:3A:06:AE (QEMU Virtual NIC)
Warning: OSScan results may be unreliable because we could not find at least 1 open and 1 closed port
Device type: general purpose|phone
Running: Microsoft Windows 2008|7|Phone|Vista
OS CPE: cpe:/o:microsoft:windows_server_2008::beta3 cpe:/o:microsoft:windows_server_2008 cpe:/o:microsoft:windows_7::-:professional cpe:/o:microsoft:windows_8 cpe:/o:microsoft:windows cpe:/o:microsoft:windows_vista::- cpe:/o:microsoft:windows_vista::sp1
OS details: Microsoft Windows Server 2008 or 2008 Beta 3, Windows Server 2008 R2, Microsoft Windows 7 Professional or Windows 8, Microsoft Windows Phone 7.5 or 8.0, Microsoft Windows Vista SP0 or SP1, Windows Server 2008 SP1, or Windows 7, Microsoft Windows Vista SP2, Windows 7 SP1, or Windows Server 2008
Network Distance: 1 hop

OS detection performed. Please report any incorrect results at http://nmap.org/submit/ .
Nmap done: 1 IP address (1 host up) scanned in 6.46 seconds

あるホストのポートをスキャンする。

192.168.1.250 のホストのポート状態をスキャンできます。

#ポートスキャン
sudo nmap 192.168.1.250

ホストのポート状態に応じて、下記のような結果が得られます。

Starting Nmap 6.47 ( http://nmap.org ) at 2015-06-01 22:30 JST
Nmap scan report for 192.168.1.250
Host is up (0.0029s latency).
Not shown: 992 filtered ports
PORT     STATE  SERVICE
22/tcp   open   ssh
139/tcp  open   netbios-ssn
445/tcp  open   microsoft-ds
548/tcp  open   afp
MAC Address: D8:50:E6:BB:11:22

Nmap done: 1 IP address (1 host up) scanned in 5.09 seconds

 

詳しい利用方法については公式サイトのリファレンスガイドを参照してください。

http://nmap.org/man/jp/

6. アンインストール

アンインストールする場合は、configure, make したディレクトリに移動し、下記コマンドを実行します。※ただし、マニュアル等が残る可能性があります。完全に削除したい場合は各自の環境の Makefile を参照すること。

#nmap をアンインストール
sudo make uninstall

7. 最後に

冒頭でも記載しましたが、Nmap は非常に強力なセキュリティツールです。利用する際は自己責任でお願いします。