Nmap は Network Mapper の略である。 ネットワーク探索、セキュリティスキャン、監査用のオープンソースのセキュリティツールです。 しかし、Nmapコマンドには、ユーティリティをより堅牢にし、新規ユーザーにとってフォローするのが難しくなるような、多くのオプションが付属しています。 このガイドの目的は、ホストまたはネットワークをスキャンして、ホスト内の可能性のある脆弱なポイントを見つけるために、Nmapコマンドラインツールをユーザーに紹介することです。 また、Nmapを攻撃的および防御的な目的で使用する方法についても学びます。 Linux または Unix 系システムで動作する一般的な Nmap コマンドの例を見てみましょう。

ADVERTISEMENTS

Nmap とは何か、何のために使用するのか?

nmap in action

マニュアルページより:

Nmap (Network Mapper) はネットワーク調査およびセキュリティ監査用のオープンソースツールである。 単一のホストに対しては問題なく動作するが、大規模なネットワークを迅速にスキャンするために設計された。 Nmapは生のIPパケットを新しい方法で使用し、ネットワーク上で利用可能なホスト、それらのホストが提供しているサービス(アプリケーション名とバージョン)、実行中のOS(およびOSバージョン)、使用中のパケットフィルタ/ファイアウォールのタイプ、および他の多くの特性を判断します。 Nmap は一般的にセキュリティ監査に使用されますが、多くのシステムおよびネットワーク管理者は、ネットワークのインベントリ、サービスのアップグレードスケジュールの管理、ホストまたはサービスのアップタイムの監視などの日常的なタスクに便利だと感じています。

これはもともと Gordon Lyon によって書かれており、次の質問に簡単に答えることができます:

  1. ローカルネットワークで実行中のコンピュータを検索
  2. ローカルネットワーク上でどの IP アドレスが実行中だったのですか?
  3. ターゲット マシンのオペレーティング システムを検出する
  4. スキャンしたマシンでどのポートが開いているかを調べる
  5. システムがマルウェアやウイルスに感染しているかどうかを確認する
  6. ネットワーク上の不正なサーバーやネットワーク サービスを検索する
  7. ターゲット マシンのオペレーティング システムを検出する
  8. スキャンしたマシンのポートが開いているかどうかを確認する
  9. [詳細

  10. 組織の最低セキュリティレベルを満たさないコンピュータを見つけ出し、削除します。

Nmap Command Examples in Linux and Unix – Sample setup (LAB) for

Port scanning may be illegal in some jurisdictionals.

 +---------+ +---------+ | Network | +--------+ | server1 |-----------+ swtich +---------|server2 | +---------+ | (sw0) | +--------+ +----+----+ | | +---------+----------------+ | wks01 Linux/macOS/Win | +--------------------------+

ここで、

  • wks01 は、Linux/MacOS (OS X) または Unix 系 OS を実行しているコンピュータです。 ローカルネットワークのスキャンに使用されます。 nmapコマンドはこのコンピュータにインストールされている必要があります。
  • server1 は、Linux/Unix/MS-Windows オペレーティング システムで動作します。 これは、パッチが適用されていないサーバーです。 Web サーバー、ファイル サーバーなど、いくつかのサービスを自由にインストールできます。
  • server2 は、Linux / Unix / MS-Windows オペレーティング システムを使用できます。 これは、ファイアウォールを備えた完全にパッチされたサーバーです。
  • 3 つのシステムはすべてスイッチで接続されています。

Linux に nmap をインストールするにはどうすればよいですか? Install nmap Software For Scanning Network

  • CentOS / RHEL: Install nmap Network Security Scanner
  • OpenBSD: Install nmap Network Security Scanner
  • nmap

    Fig.01 を用いて単一ホストまたは IP アドレス (IPv4) をスキャンする。: nmap output

    Scan multiple IP address or subnet (IPv4)

    nmap 192.168.1.1 192.168.1.2 192.168.1.3## works with same subnet i.e. 192.168.1.0/24 nmap 192.168.1.1,2,3

    You can scan a range of IP address too:

    nmap 192.168.1.1-20

    You can scan a range of IP address using a wildcard.これは、ワイルドカードを使用して、複数のIPアドレスをスキャンすることができることを示します。

    nmap 192.168.1.*

    最後にサブネット全体をスキャンする:

    nmap 192.168.1.0/24

    ファイルからホスト/ネットワークのリストを読み込む (IPv4)

    -iLオプションにより、テキストファイルを使用してターゲットシステムのリストを読み込むことができます。 多数のホスト/ネットワークをスキャンする場合に有効です。 以下のようにテキストファイルを作成します:
    cat > /tmp/test.txt
    以下のように名前を追加します:

    server1.cyberciti.biz192.168.1.0/24192.168.1.1/2410.1.2.3localhost

    構文は以下の通りです。

    nmap -iL /tmp/test.txt

    Excluding hosts/networks (IPv4) from nmap scan examples

    多数のホスト/ネットワークをスキャンする場合、スキャンからホストを除外できる:

    nmap 192.168.1.0/24 --exclude 192.168.1.5nmap 192.168.1.0/24 --exclude 192.168.1.5,192.168.1.254

    OR exclude list from a file called /tmp/exclude.txt

    nmap -iL /tmp/scanlist.txt --excludefile /tmp/exclude.txt

    OSおよびバージョン検出スキャンスクリプトをオンにする(IPv4) with nmap

    nmap -A 192.168.1.254nmap -v -A 192.168.1.1nmap -A -iL /tmp/scanlist.txt 

    ホスト/ネットワークがnampコマンドでファイアウォールで保護されているか調べる

    ## nmap command examples for your host ##nmap -sA 192.168.1.254nmap -sA server1.cyberciti.biz

    ファイアウォールで保護されているホストのスキャン

    このNmapコマンド例で私たちがスキャンしようとしたルータ/wifiデバイスは、192.1.0を持つもので、ルータはこのデバイスをスキャンします。168.1.1 as IP:

    nmap -PN 192.168.1.1nmap -PN server1.cyberciti.biz

    Scan an IPv6 host/address examples

    -6オプションは、nampコマンドでIPv6スキャンを有効にします。 この構文は次のとおりです:

    nmap -6 IPv6-Address-Herenmap -6 server1.cyberciti.biznmap -6 2607:f0d0:1002:51::4nmap -v A -6 2607:f0d0:1002:51::4

    ネットワークをスキャンして、どのサーバーやデバイスが稼働しているかを確認します

    これはホスト検出またはpingスキャンとして知られています:

    nmap -sP 192.168.1.0/24

    以下はその様子です。

    nampを使って高速スキャンするには、どうすればよいでしょうか?

    nmap -F 192.168.1.1nmap -6 -F IPv6_Address_Here

    ポートが特定の状態である理由を表示する

    nmap --reason 192.168.1.1nmap --reason server1.cyberciti.biz

    出力:

    Linux で nmap コマンドを使用して開いている (か開いているかも) ポートのみを表示する

    Run:

    nmap --open 192.168.1.1nmap --open server1.cyberciti.biznmap --open 192.168.2.18

    私のCentOS 7 Linuxサーバーからスキャン出力があります。

    Show all packets sent and received

    nmap --packet-trace 192.168.1.1nmap --packet-trace server1.cyberciti.biz

    Show host interfaces and routes

    This is useful for debugging (ip command or route command or netstat command like output using the nmap command on Linux)

    nmap --iflist

    Nampコマンドで作成する詳細レポート:

    How do I scan particular ports using nmap?

    Sample outputs:

    16: The fastest way to scan all your devices/computers for open ports ever

    nmap -T5 192.168.1.0/24nmap -T5 {sub/net}

    nmap を使用してリモート オペレーティング システムを検出するにはどうすればいいですか?

    -O オプションを使用すると、リモート ホストのアプリケーションと OS を識別できます:

    nmap -O 192.168.1.1nmap -O --osscan-guess 192.168.1.1nmap -v -O --osscan-guess 192.168.1.1

    サンプル出力:

    Fingerprinting a web-server and a dns server command line tools も参照してください。

    リモート サービス (サーバー/デーモン) のバージョン番号を検出するにはどうすればよいですか?

    ターミナルを開き、次の nmap コマンドを入力します:

    nmap -sV 192.168.1.1

    サンプル出力:

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

    ファイアウォールが標準 ICMP ping をブロックする場合、次のホスト発見方法を試してください。

    nmap -PS 192.168.1.1nmap -PS 80,21,443 192.168.1.1nmap -PA 192.168.1.1nmap -PA 80,21,200-512 192.168.1.1

    IP プロトコルを使用してホストをスキャン ping

    nmap -PO 192.168.1.1

    UDP を使用してホストをスキャン ping

    このスキャンは、TCP のみをスクリーニングするファイアウォールとフィルターをバイパスする。

    nmap -PU 192.168.1.1nmap -PU 2000.2001 192.168.1.1

    TCP SYN スキャンを使用して、最もよく使用される TCP ポートを見つける

    UDP サービスのホストをスキャンする (UDP スキャン)

    インターネット上のほとんどの一般的なサービスは、TCP プロトコル上で実行されています。 DNS、SNMP、およびDHCPは、最も一般的なUDPサービスのうちの3つです。 UDPサービスを調べるには、次の構文を使用します:

    nmap -sU nas03nmap -sU 192.168.1.1

    サンプル出力:

    Scan for IP protocol

    このタイプのスキャンでは、どのIPプロトコル(TCP、ICMP、IGMPなど)を判断できるかを確認できます。

    nmap -sO 192.168.1.1

    Scan a firewall for security weakness

    The following scan types exploit a subtle loophole in the TCP and good for testing security of common attacks:

    See how to block Xmas packkets, syn-floods and other conman attacks with iptables.The スキャンタイプは、ターゲットマシンでサポートしているかどうか確認することができます。

    Scan a firewall for packets fragments

    -fオプションは、要求されたスキャン (ping スキャンを含む) に小さなフラグメント IP パケットを使用するようにします。 これは、TCP ヘッダを複数のパケットに分割することで、パケットフィルタ、侵入検知システム、およびその他の厄介なものが、何をしているかを検知しにくくするものです。

    囮を使ったスキャンを隠す

    -Dオプションは、リモートホストからは、囮として指定したホストもターゲットネットワークをスキャンしていると思わせます。 したがって、その IDS は、固有の IP アドレスからの 5-10 ポート スキャンを報告するかもしれませんが、どの IP がスキャンしていて、どれが無実のおとりであるかはわかりません:

    nmap -n -Ddecoy-ip1,decoy-ip2,your-own-ip,decoy-ip3,decoy-ip4 remote-host-ipnmap -n -D192.168.1.5,10.5.1.2,172.1.2.4,3.4.2.1 192.168.1.5

    Scan a firewall for MAC address spoofing

    How do I save output to a text file?

    構文:

    nmap 192.168.1.1 > output.txtnmap -oN /path/to/filename 192.168.1.1nmap -oN output.txt 192.168.1.1

    Web サーバーをスキャンし、Nikto にパイプします

    nmap -p80 192.168.1.2/24 -oG - | /path/to/nikto.pl -h -
    nmap -p80,443 192.168.1.2/24 -oG - | /path/to/nikto.pl -h -

    nmap を高速化する

    nmap コマンドに -T オプションを渡す:
    nmap -v -sS -A -T4 192.168.2.5
    サンプル出力:

    namp コマンド ライン ツールが好きではないのか?

    これまで、Linux および Unix のコマンドライン オプションを使用した Nmap コマンドの例を見てきました。 しかし、誰もが CLI を超快適に使えるわけではありません。 したがって、公式のネットワーク マッパー フロントエンド/GUI ツールである Zenmap という GUI アプリを使用することができます:

    Zenmap は公式の Nmap セキュリティ スキャナー GUI です。 これは、マルチプラットフォーム (Linux、Windows、Mac OS X、BSD など) のフリーでオープンなアプリケーションで、Nmap を初心者でも簡単に使えるようにする一方で、経験豊富な Nmap ユーザーには高度な機能を提供することを目的としています。 よく使うスキャンはプロファイルとして保存でき、繰り返し実行しやすくなっています。 コマンドクリエーターにより、Nmapのコマンドラインを対話的に作成することができます。 スキャン結果を保存し、後で確認することができます。 保存されたスキャン結果を互いに比較して、その違いを確認することができます。 最近のスキャン結果は検索可能なデータベースに保存されます。

    次のapt-getコマンドまたはaptコマンドを使用してzenmapをインストールできます。
    $ sudo apt-get install zenmap
    サンプル出力:

    次のコマンドを入力してzenmapを起動します:
    $ sudo zenmap
    サンプル出力

    Fig.02: zenmap in action

    Linux および Unix/BSD サーバーでポート スキャンを検出およびブロックするにはどうすればよいですか。

    以下のリソースをお試しください。

    1. ポート スキャン攻撃をリアルタイムで検出およびブロックする psad ツールの使用方法。
    2. Debian / Ubuntu Linux。 Shoreline Firewall (Shorewall) のインストールと設定.
    3. CentOS / Redhat Iptables Firewall Configuration Tutorial.
    4. Linux: 20 Iptables Examples For New SysAdmins.
    5. 20 Linux Server Hardening Security Tips.

    まとめ

    このガイドで、Linux向けの多くの例と使用法を含むNmapコマンドについて学習していただきました。 さらに詳しい情報については、次のリソースを参照してください:

    • 公式 Nmap プロジェクトのホームページはこちら

    Nmap コマンドにはさらに多くのオプションがあり、詳細については man ページまたはドキュメントを参照してください。 Nmapのコマンドラインでのお気に入りのトリックは何ですか?

    🐧 Patreon または寄付で私の仕事をサポートしてください。
    🐧 Linux、オープン ソース & DevOps に関する最新のチュートリアルを RSS フィードまたは週刊メール ニュースで取得できます。
    🐧 今のところ25件のコメントがあります… 追加 ↓

    bg – chroot – cron – disown – fg – jobs – killall – kill – pidof – pstree – pwdx – time

    カテゴリ List of Unix and Linux commands
    File 管理 cat
    Firewall Alpine Awall – CentOS 8 – OpenSUSE – RHEL 8 – Ubuntu 16.04 – Ubuntu 18.04 – Ubuntu 20.04
    Network Utilities dig – host – ip – nmap
    OpenVPN CentOS 7 – CentOS 8 – Debian 10 – Debian 8/9 – Ubuntu 18.04 Network Utilities OpenVPN Network Utilities Dig – host – ip – nmap04 – Ubuntu 20.04
    パッケージマネージャ apk – apt
    プロセス管理
    検索 grep – whereis – which
    ユーザ情報 groups – id – lastcomm – last – lid/libuser-.lid – logname – members – users – whoami – who – w
    WireGuard VPN Alpine – CentOS 8 – Debian 10 – Firewall – Ubuntu 20.04

    admin

    コメントを残す

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

    lg