【保姆级】Nmap下载、安装和使用一篇搞定(包含所有版本,20026最新版)
Nmap 是一款开源的网络扫描工具,全称 Network Mapper,用来发现网络里有哪些设备、这些设备开了哪些端口、端口上跑的是什么服务。发文时 Nmap 最新版是 7.993:Nmap安装包(Windows+Linux+macOS)
Nmap 能扫描一个网段里在线的设备,能查出某台机器开放了哪些端口,能识别端口对应的软件和版本,也能大致判断对方跑的是什么系统。扫描结果可以存成文本、XML 或表格,方便后面整理成资产清单。
同类的工具有 Masscan、Zmap 等,Nmap 的长处是识别能力强,结果输出格式也全,二十多年一直在维护。
Nmap 免费开源,个人和公司都能用,支持 Windows、macOS、Linux,接下来手把手带大家把 Nmap 的下载、安装和使用操作搞清楚,全程实测,无任何门槛,电脑小白也能轻松看懂。
下载Nmap
发文时 Nmap 最新版是 7.993:Nmap安装包(Windows+Linux+macOS)| 平台 | 安装包 | 说明 |
|---|---|---|
| Windows | nmap-7.993-setup.exe | 自带 Zenmap 和 Npcap,Win7 及以上 |
| macOS | nmap-7.993.dmg | x86-64 安装器,macOS 10.9 及以上 |
| Linux | nmap-7.993-1.x86_64.rpm | RHEL、CentOS、Fedora、openSUSE |
| 全平台 | zenmap-7.993-py3-none-any.whl | Zenmap 图形界面,Python 包 |
Nmap 不是单个程序,安装包里一共有五个工具:
| 组件 | 作用 |
|---|---|
| Nmap | 主程序,做主机发现、端口扫描、服务和系统识别 |
| Zenmap | 图形界面,把命令变成表单,扫描结果可视化 |
| Ncat | 网络连接工具,读写 TCP、UDP 数据,替代 netcat |
| Nping | 发包工具,用来测连通性和延迟 |
| Ndiff | 对比两次扫描结果,看端口有没有变化 |
- Windows 版是一个 exe 自安装程序,体积最大,里面带了 Zenmap 和 Npcap 抓包驱动,装完就能用。
- macOS 版是 dmg 镜像,里面是 pkg 安装器,装了 Nmap、Zenmap、Ncat、Ndiff 四个组件,没有 Nping。
- Linux 版官方只提供 x86-64 的 rpm 包。
安装Nmap
1)Windows平台
双击 nmap-7.993-setup.exe,点“I Agree”:
选择组件,包含 Nmap、Zenmap、Ncat、Nping、Ndiff 和 Npcap,保持默认点“Next”:

选安装目录,默认在 C:\Program Files (x86)\Nmap,点 Browse 可以改路径。点“Install”:

安装过程会弹出 Npcap 的安装向导,Npcap 是 Windows 上的抓包驱动,Nmap 做 SYN 扫描和系统识别要靠它。不装 Npcap 也能用,但只能做普通的 TCP 连接扫描,功能和精度都会打折。点 I Agree:

勾选“Install Npcap in WinPcap API-compatible Mode”,点install:

点 Finish 回到安装程序:

默认创建桌面快捷方式:

Nmap 就装完了:

2)macOS平台
双击 nmap-7.993.dmg,挂载磁盘映像,双击里面的 nmap-7.993.mpkg 启动安装,一直往后走,知道安装完成。最后打开“终端”,输入 nmap --version,能看到版本号就装好了。3)Linux平台
RHEL、CentOS、Fedora、openSUSE 用 rpm 包:sudo rpm -vhU https://nmap.org/dist/nmap-7.993-1.x86_64.rpmUbuntu、Debian 直接用仓库版本,一条命令装完:
sudo apt update && sudo apt install nmap
验证Nmap安装
1)Windows 按 Win + R 输入 cmd 回车,macOS 和 Linux 打开终端。输入 nmap --version,第一行显示 Nmap version 7.993,说明主程序正常。
2)输入 nmap -sn 127.0.0.1,本机应该显示为 up,这是最快的一次自检。

3)输入 nmap -p 1-100 127.0.0.1,能列出本机端口状态,说明扫描功能正常。

4)Windows桌面上双击 Nmap - Zenmap GUI,能打开图形界面就说明组件装全了。

Nmap基础使用
打开 Zenmap,最上面三个输入项。目标(Target)填 IP 或网段,配置(Profile)选扫描类型,命令(Command)显示等价的命令行。配置就是一组提前写好的参数。选哪个配置,命令框自动填成对应的命令,点“扫描”就按这套参数执行。Zenmap 内置十套配置,命令和实战用法一一对应。
| 配置 | 等价命令 | 用途 |
|---|---|---|
| Intense scan | nmap -T4 -A -v | 综合扫描,版本、系统、脚本、路由一起做 |
| Intense scan plus UDP | nmap -sS -sU -T4 -A -v | 上面那套再加 UDP 端口 |
| Intense scan, all TCP ports | nmap -p 1-65535 -T4 -A -v | 全部 TCP 端口加综合扫描 |
| Intense scan, no ping | nmap -T4 -A -v -Pn | 对方不回 ping 时,跳过主机发现直接扫 |
| Ping scan | nmap -sn | 只找在线设备,不碰端口 |
| Quick scan | nmap -T4 -F | 扫 100 个常用端口,速度最快 |
| Quick scan plus | nmap -sV -T4 -O -F --version-light | 常用端口加版本识别和系统识别 |
| Quick traceroute | nmap -sn --traceroute | 看数据经过哪些路由,不扫端口 |
| Regular scan | nmap | 默认参数的基础端口扫描 |
| Slow comprehensive scan | 见下方完整命令 | 参数多,速度慢,专项检查才用 |
1)主机发现
命令行:nmap -sn 192.168.1.0/24。Zenmap 操作:目标填 192.168.1.0/24,配置选“Ping scan”,点“扫描”。

切到“Nmap 输出”,每台在线设备占一段,开头是“Nmap scan report for IP”,下面是“Host is up”。例如,输出里的“Nmap scan report for 192.168.1.1”就是在线设备。
2)端口扫描
命令行有五种写法,按需要选:- nmap -F 192.168.1.10 扫描 100 个常用端口,日常排查够用。
- nmap -p 22,80,443 192.168.1.10 只看指定的几个端口。
- nmap -p 1-1000 192.168.1.10 扫描 1 到 1000 号端口。
- nmap -p- 192.168.1.10 扫描全部 65535 个端口,耗时长,一般只在自己服务器上做。
- nmap --top-ports 1000 192.168.1.10 按出现频率扫描前 1000 个端口,比全端口快得多。
目标填 IP,配置选“Quick scan”(等价于 -T4 -F)。要扫全部端口选“Intense scan, all TCP ports”(等价于 -p 1-65535 -T4 -A -v)。只想扫指定端口,直接在“命令”框里改成 nmap -p 22,80,443 192.168.1.10,回车就执行。

切到“端口/主机”,表格里列着端口号、协议、状态、服务、版本。点表头能排序,点某一行,下面会显示该端口的详细信息。
3)服务与版本识别
命令行:nmap -sV 192.168.1.10。Zenmap 操作:配置选“Quick scan plus”(等价于 -sV -T4 -O -F --version-light),要扫全端口就用“Intense scan”。

“端口/主机”里的 Service 和 Version 两列,80 端口会从 http 补全成 nginx 1.24.0 这样的具体版本。切到“主机详情”也能看到同一份列表,还带脚本结果。版本识别会额外发包,比纯端口扫描慢,端口多的时候更明显。
ICP备案:
公安部网络备案: