Linux便利コマンド : nmap

うめだ
2023-12-15
2023-12-15
目次

はじめに

みなさま、nmapコマンドを活用されてますでしょうか?

ポートスキャンコマンドで、対象ホストでLISTENしているポートを確認することができます。
多くのオプションが用意されており、様々なスキャンが可能となっています。

その中でも私が良く利用している使い方をご紹介します。

なお、自身が管理するホストおよびネットワーク以外に対して実行することは避けて下さい。
攻撃者と扱われる可能性がありますので、ご注意ください。

環境

OS : AlmaLinux 8
nmapバージョン : 7.70

使い方

まずは、サービス検出機能です。
localhostを指定してnmapコマンドを実行すると、LISTENしているポート番号およびサービス名を確認することができます。

$ nmap localhost
Starting Nmap 7.70 ( https://nmap.org ) at 2023-12-13 20:34 JST
Nmap scan report for localhost (127.0.0.1)
Host is up (0.00029s latency).
Other addresses for localhost (not scanned): ::1
Not shown: 989 closed ports
PORT     STATE SERVICE
21/tcp   open  ftp
22/tcp   open  ssh
80/tcp   open  http
110/tcp  open  pop3
111/tcp  open  rpcbind
143/tcp  open  imap
443/tcp  open  https
990/tcp  open  ftps
993/tcp  open  imaps
995/tcp  open  pop3s
3306/tcp open  mysql

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

対象サーバーが提供しているサービスを一撃で確認することができます。ステキですね。


オプションとして、-sV を指定することで、各サービスのバージョンも確認することができます。

$ nmap -sV localhost
Starting Nmap 7.70 ( https://nmap.org ) at 2023-12-13 20:34 JST
Nmap scan report for localhost (127.0.0.1)
Host is up (0.00034s latency).
Other addresses for localhost (not scanned): ::1
Not shown: 989 closed ports
PORT     STATE SERVICE  VERSION
21/tcp   open  ftp      vsftpd 2.0.8 or later
22/tcp   open  ssh      OpenSSH 8.0 (protocol 2.0)
80/tcp   open  http     Apache httpd
110/tcp  open  pop3     Dovecot pop3d
111/tcp  open  rpcbind  2-4 (RPC #100000)
143/tcp  open  imap     Dovecot imapd
443/tcp  open  ssl/ssl  Apache httpd (SSL-only mode)
990/tcp  open  ssl/ftp  vsftpd 2.0.8 or later
993/tcp  open  ssl/imap Dovecot imapd
995/tcp  open  ssl/pop3 Dovecot pop3d
3306/tcp open  mysql    MySQL 5.5.5-10.3.35-MariaDB-log
Service Info: Host: Welcome

Service detection performed. Please report any incorrect results at https://nmap.org/submit/ .
Nmap done: 1 IP address (1 host up) scanned in 17.70 seconds
$

次に、ホスト検出機能です。

オプションとして、-sn を指定し、対象ネットワークに対して実行します。

これにより、対象ネットワークで利用されているIPアドレスがリストアップされます。

$ nmap -sn xxx.xxx.xxx.0/24
Starting Nmap 7.70 ( https://nmap.org ) at 2023-12-13 21:29 JST
Nmap scan report for xxx.xxx.xxx.1
Host is up (0.00045s latency).
Nmap scan report for xxx.xxx.xxx.2
Host is up (0.011s latency).
Nmap scan report for xxx.xxx.xxx.5
Host is up (0.0011s latency).
Nmap scan report for xxx.xxx.xxx.6

... ...

Nmap scan report for xxx.xxx.xxx.251
Host is up (0.00050s latency).
Nmap scan report for xxx.xxx.xxx.252
Host is up (0.00043s latency).
Nmap scan report for xxx.xxx.xxx.253
Host is up (0.0052s latency).
Nmap scan report for xxx.xxx.xxx.254
Host is up (0.0013s latency).
Nmap done: 256 IP addresses (74 hosts up) scanned in 2.02 seconds
$

ネットワーク機器の構成変更等メンテナンスを実施する際、この機能を利用して、作業前と作業後で出力内容を比較することで、メンテナンス後も、必要なホストに正常に通信できていることを確認することができます。

これでメンテ後の基本的な通信確認はOKですね。

まとめ

いかがでしたか?

nmapの一部の機能紹介でしたが、とても便利な機能となっています。

是非とも活用くださいませ。