29 Linuxシステム/ネットワーク管理者のためのNmapコマンドの実践例

Nmap aka Network Mapperは、Linuxシステム/ネットワーク管理者向けのオープンソースで非常に多機能なツールです。 Nmap は、ネットワークの探索、セキュリティスキャンの実行、ネットワーク監査、リモートマシン上のオープンポートの検索に使用されます。

Nmap のコマンドと例

私は NMAP の使い方の大部分を 2 つのパートに分けてカバーするつもりですが、これは nmap の深刻な状況の最初のパートです。 ここでは、Nmapコマンドの動作をテストするために、ファイアウォールなしの2つのサーバーを使用しています。

  1. 192.168.0.100 – server1.tecmint.com
  2. 192.168.0.101 – server2.tecmint.com
Nmap command usage
# nmap {target specification}

How to Install NMAP in Linux

今日のRed Hat, CentOS, Fedoro, Debian and UbuntuなどのほとんどのLinuxディストリビューターは、YumとAPTというデフォルトパッケージ管理リポジトリにNmapが含まれています。 この2つのツールは、ソフトウェアパッケージとアップデートをインストールし、管理するために使用されます。

# yum install nmap$ sudo apt-get install nmap

最新の nmap アプリケーションをインストールしたら、この記事で提供されている例の指示に従うことができます。

Scan a System with Hostname and IP Address

Nmapツールはシステムをスキャンするさまざまなメソッドを提供します。 この例では、ホスト名を server2.tecmint.com としてスキャンを実行し、システム上のすべてのオープン ポート、サービス、および MAC アドレスを確認します。

ホスト名を使ったスキャン
IPアドレスを使ったスキャン

「-v」オプションを使ったスキャン

「-v」オプション付きの下のコマンドは、リモートマシンに関するより詳しい情報を与えることがわかるだろう。

Scan a whole Subnet

Nmapで*ワイルドカードを指定することにより、サブネット全体またはIPレンジをスキャンすることができる。

Scan Multiple Servers using last octet of IP address

IP アドレスの最後のオクテットを指定するだけで、複数の IP アドレスに対してスキャンを実行することができます。 例えば、ここでは 192.168.0.101, 192.168.0.102, 192.168.0.103 の IP アドレスに対してスキャンを行っています。

ファイルからのホストリストのスキャン

スキャンするホストが多く、すべてのホスト詳細がファイルに書かれているなら、直接 nmap にファイルを読み込んでスキャンを行うよう依頼することができます。

「nmaptest.txt」というテキストファイルを作成し、スキャンしたいサーバのIPアドレスまたはホスト名をすべて定義する。

# cat > nmaptest.txtlocalhostserver2.tecmint.com192.168.0.101

次に、nmapコマンドで「iL」オプションを付けて次のコマンドを実行すると、ファイル内のすべてのリストにあるIPアドレスをスキャンする。

Scan Network Excluding Remote Hosts

ネットワーク全体のスキャンを実行するとき、または “-exclude” オプションを使用してワイルドカードでスキャンするときに、一部のホストを除外できます。

Scan OS information and Traceroute

Nmapでは、リモートホストでどのOSとバージョンが動作しているか検出することが可能です。 OS & バージョンの検出、スクリプトのスキャン、およびトレースルートを有効にするには、NMAP で “-A” オプションを使用します。

上記の出力では、リモートホスト上で実行されている OS の TCP/IP フィンガープリントが表示されており、リモートホスト上で実行中のポートおよびサービスについてより具体的に説明されています。

Scan a Host to Detect Firewall

以下のコマンドは、リモートホスト上でスキャンを実行し、パケットフィルタまたはファイアウォールがホストで使用されているかどうかを検出します。

Find out live hosts in a Network

“-sP” オプションを使用すると、ネットワーク上で稼働しているホストを簡単にチェックすることができ、このオプションにより nmap はポート検出や他のものをスキップすることができます。

高速スキャン

“-F “オプションにより、nmap-servicesファイルにリストされたポートをスキャンし、他のすべてのポートを残す高速スキャンを実行することが可能です。

Find Nmap version

“-V” オプションを使用すると、マシン上で実行中のNmapバージョンを確認できます。

# nmap -VNmap version 4.11 ( http://www.insecure.org/nmap/ )You have new mail in /var/spool/mail/root

Scan Ports Consecutively

“-r” フラグは、ランダム化を行わないようにします。

Print Host interfaces and Routes

「-iflist」オプションを使って、nmapでホストインターフェースとルート情報を見つけることができる。

上の出力では、mapがシステムに接続されているインターフェースとそれぞれのルートをリストしていることが分かる。 1233>

Scan a TCP Port

Nmap で特定のポートタイプや番号を指定してスキャンすることもできる。

Scan a UDP Port

Scan Multiple Ports

p オプションを使って複数のポートをスキャンすることもできる。

Scan Ports by Network Range

式を使って範囲を指定してポートをスキャンすることができます。

# nmap -p 80-160 192.168.0.101

Find Host Services version Numbers

“-sV” オプションでリモートホスト上で実行中のサービスのバージョンを見つけることができます。

TCP ACK (PA) および TCP Syn (PS) を使用してリモート ホストをスキャンする

パケット フィルタリング ファイアウォールが標準 ICMP Ping 要求をブロックすることがあります。

TCP ACK でリモート ホストの特定のポートをスキャンする

TCP Syn でリモート ホストの特定のポートをスキャンする

ステルス スキャンを実行する

TCP Syn で最もよく使われるポートを確認する

TCP NULL スキャンでファイアウォールをだます

コメントを残す

メールアドレスが公開されることはありません。