Mac に Nmap をインストールする手順を紹介します。
Nmap とは、あるネットワーク内で何台のネットワーク機器が接続されているか、また、サーバ等のネットワーク機器に対してどのポートが空いているか等を調査することができるネットワークスキャナツールです。
ネットワーク設計の際や、サーバのセキュリティ設定のチェックの際などが利用シーンとして挙げられます。
非常に強力なツールゆえに、注意を払って使用しなければなりません。利用する際は自己責任で行ってください。
さて、Nmap は Windows, Mac OS X, Linux, Unix 等多くの OS に対応したオープンソースソフトウェアです。Linux 等であれば、パッケージマネージャ等で簡単にインストールすることができます。
Mac OS X へインストールする場合は、主な方法として下記の 3 つの方法があります。
- Mac OS X 用のインストーラパッケージを用いる
- ソースファイルからコンパイルする
- 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。
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
詳しい利用方法については公式サイトのリファレンスガイドを参照してください。
6. アンインストール
アンインストールする場合は、configure, make したディレクトリに移動し、下記コマンドを実行します。※ただし、マニュアル等が残る可能性があります。完全に削除したい場合は各自の環境の Makefile を参照すること。
#nmap をアンインストール sudo make uninstall
7. 最後に
冒頭でも記載しましたが、Nmap は非常に強力なセキュリティツールです。利用する際は自己責任でお願いします。