在本详细教程中,我们将解释什么是 Nmap、为什么使用它、如何安装它,并逐一讲解每位网络管理员和安全专业人员都应知道的最重要的 Nmap 命令。

从基本的主机发现和端口扫描到服务检测、操作系统指纹识别、定时控制以及强大的 Nmap 脚本引擎(NSE),本 Nmap 实用指南 通过示例和实际用例覆盖了每条命令。

最后,你将能够自信且负责任地使用 Nmap 扫描网络。

1. 什么是 Nmap?

Creates: my_scan.nmap / my_scan.xml / my_scan.gnmap

-p

Nmap(Network Mapper 的缩写)是一款免费、开源的网络扫描工具。Gordon Lyon(在线别名 Fyodor)于 1997 年创建了它。如今,它是全球网络安全、系统管理和网络安全教育领域使用最广泛的工具之一。

简单来说,Nmap 向目标发送网络数据包并监听回复。从这些回复中,它可以判断:

  • 哪些 设备 在线(主机发现)
  • 哪些 端口 是开放的或被过滤的
  • 哪些 服务 正在运行以及它们的版本
  • 目标运行什么 操作系统
  • 防火墙 是否在过滤流量

此外,Nmap 内置的脚本引擎(NSE)允许你运行数百个预构建的 Lua 脚本来自动化任务,如 vuln 检测、横幅抓取和服务枚举。

Nmap 可在 Linux、macOS 和 Windows 上运行,并可免费从 nmap.org 下载。

相关工具: Nmap 常与 Wireshark(数据包分析)、Metasploit(exploit 框架)和 Netcat(网络工具)一起使用。

什么是 Nmap 命令?

Nmap 命令 是用于 Nmap 网络扫描工具的命令行指令。它们让你能够发现活动主机、查找开放端口、检测服务版本、识别操作系统以及针对网络运行安全脚本。

常见的 Nmap 命令包括 nmap -sn(主机发现)、nmap -sS(TCP SYN 扫描)、nmap -sV(版本检测)、nmap -O(操作系统检测)和 nmap -A(激进扫描)。

2. 为什么使用 Nmap?

Nmap 适用于广泛的实际任务。以下是专业人员和学生使用它的最常见原因:

3. 如何安装 Nmap

在运行任何 Nmap 命令之前,你需要安装它。在任何平台上,这个过程都不到一分钟。

在 Arch Linux 及其变体(如 EndeavourOS 和 Manjaro Linux)上安装 nmap:

sudo pacman -S nmap

在 Debian、Ubuntu Linux 上安装 nmap:

sudo apt update && sudo apt install nmap -y

在 Fedora / RHEL / CentOS / AlmaLinux / Rocky Linux 上安装:

sudo dnf install nmap -y

安装后,使用以下命令验证 nmap 安装:

nmap --version

示例输出:

Nmap version 7.99 ( https://nmap.org )
Platform: x86_64-pc-linux-gnu
Compiled with: liblua-5.4.8 openssl-3.6.3 libssh2-1.11.1 libz-1.3.2 libpcre2-10.47 libpcap-1.10.6 nmap-libdnet-1.18.0 ipv6
Compiled without:
Available nsock engines: epoll poll select

现在,是时候开始使用 Nmap 了。让我们从基础开始,逐步深入到高级主题。

4. 如何运行你的第一次 Nmap 扫描

步骤 1:打开终端

在 Linux 或 macOS 上,打开终端。在 Windows 上,以管理员身份打开命令提示符或 PowerShell。

步骤 2:找到你的网络范围

ip a          # Linux -- find your IP and subnet
ifconfig      # macOS
ipconfig      # Windows

你的本地网络通常类似于 192.168.1.0/24。

步骤 3:发现活动主机

nmap -sn 192.168.1.0/24

此命令查找你网络上的所有设备,而不扫描端口。

示例输出:

Starting Nmap 7.99 ( https://nmap.org ) at 2026-06-23 17:05 +0530
Nmap scan report for 192.168.1.100
Host is up (0.000099s latency).
Nmap scan report for 192.168.1.101
Host is up (0.00075s latency).
Nmap done: 256 IP addresses (2 hosts up) scanned in 8.94 seconds

步骤 4:扫描特定主机

nmap -sV 192.168.1.100
nmap -sV --version-intensity 5 192.168.1.100   # More thorough probing (scale: 0-9)

此命令扫描目标并识别运行的服务及其版本。

示例输出:

Starting Nmap 7.99 ( https://nmap.org ) at 2026-06-23 17:10 +0530
Nmap scan report for 192.168.1.100
Host is up (0.000069s latency).
Not shown: 999 closed tcp ports (conn-refused)
PORT   STATE SERVICE VERSION
22/tcp open  ssh     OpenSSH 10.3 (protocol 2.0)
Service detection performed. Please report any incorrect results at https://nmap.org/submit/ .
Nmap done: 1 IP address (1 host up) scanned in 0.69 seconds

这就是你的第一次 Nmap 扫描。从这里开始,你可以添加更多标志以获得更深入的结果,本指南的其余部分将详细覆盖这些内容。

5. 主机发现:查找网络上的活动设备


注意: 下面的一些 nmap 命令需要 root 或 sudo 权限。如果你以普通用户身份运行它们,你会看到类似下面的输出:

You requested a scan type which requires root privileges.
QUITTING!

在扫描端口之前,你通常想知道哪些设备实际在线。Nmap 的主机发现步骤可以快速处理此问题,而无需运行完整的端口扫描。

重要提示: -sP 已弃用。始终使用 -sn 代替。

一些较旧的速查表和过时的指南仍然将 nmap -sP 列为正确的 ping 扫描命令。这已不再准确。 当 Nmap 引入其替代品 -sn 时,-sP 标志已被弃用。

虽然 -sP 在当前 Nmap 版本中仍作为旧别名运行,但它会产生弃用警告,并最终将被完全移除。

正确、当前的标志是 nmap -sn。两个标志做同样的事情,但 -sn 是你今后应始终使用的。

nmap -sn:Ping 扫描(无端口扫描的主机发现)

-sn 标志发现哪些主机在线,然后停止。不进行端口扫描。默认情况下,它使用四种探测:ICMP 回显请求、TCP SYN 到端口 443、TCP ACK 到端口 80 和 ICMP 时间戳请求。

需要 root: 以 root 身份运行可获得最准确的结果。没有 root 权限,-sn 会回退到仅对端口 80 和 443 的简单 TCP 连接探测。

# Basic host discovery on a /24 subnet
nmap -sn 192.168.1.0/24
# Save live hosts to a file for follow-up scanning
nmap -sn 192.168.1.0/24 -oG - | grep "Up" | awk '{print $2}' > live_hosts.txt

6. 常见 Nmap 扫描类型详解

一旦你知道哪些主机在线,下一步就是检查它们的端口。每种扫描类型使用不同的 TCP/IP 技术,因此每种在不同情况下效果更好。以下是常见类型的清晰分解。

nmap -sS:TCP SYN 扫描(隐蔽扫描)

TCP SYN 扫描是 default 以 root 身份运行 Nmap 时的默认扫描类型,也是整体上使用最广泛的扫描。Nmap 发送一个 SYN 数据包并等待响应:

  • SYN-ACK 回复 - 端口 开放
  • RST 回复 - 端口 关闭
  • 无回复 / ICMP 不可达 - 端口 被过滤

由于 Nmap 在收到 SYN-ACK 后发送 RST,从不完成完整握手,因此此扫描留下的日志痕迹比完整连接扫描少。这就是为什么它通常被称为“隐蔽扫描”或“半开扫描”。

nmap -sS 192.168.1.100                  # Requires root
nmap -sS -p 22,80,443 192.168.1.10        # SYN scan on specific ports only

nmap -sT:TCP 连接扫描(完整握手)

TCP 连接扫描是 default 没有 root 权限时的默认扫描。它使用操作系统的标准 connect() 系统调用完成完整的 TCP 三次握手。它比 -sS 更可靠,但更慢,并且更可能出现在服务器日志中。

nmap -sT 192.168.1.100    # Works without root privileges

nmap -sU:UDP 扫描

许多关键服务运行在 UDP 而非 TCP 上,包括 DNS(端口 53)、DHCP(端口 67-68)、SNMP(端口 161)和 NTP(端口 123)。-sU 标志用于扫描这些服务。由于 UDP 是无连接的,扫描它比 TCP 慢得多。将 -sU 与 --top-ports 结合使用可以大大加快速度。

nmap -sU 192.168.1.100                     # Full UDP scan (slow). Requires root
nmap -sU --top-ports 20 192.168.1.100      # Faster: scans top 20 UDP ports only

7. Nmap 版本检测和操作系统指纹识别

知道端口是开放的很有用。然而,知道该端口上 确切运行什么 以及哪个版本,则更加强大。这些标志为你提供了额外的细节层次。

nmap -sV:服务和版本检测

使用 -sV,Nmap 探测每个开放端口并识别服务名称及其确切版本号。例如,不是“端口 22 是开放的”,而是“OpenSSH 8.9p1 Ubuntu”。这对于以下方面很有价值:

  • 安全审计 - 发现过时或生命周期结束的软件
  • 漏洞关联 - 将服务版本与 CVE 数据库匹配
  • 库存管理 - 验证服务运行预期版本
  • 非标准端口检测 - -sV 即使在意外端口上也能识别服务
nmap -sV 192.168.1.100
nmap -sV --version-intensity 5 192.168.1.100   # More thorough probing (scale: 0-9)

nmap -O:操作系统检测(操作系统指纹识别)

Nmap 分析主机 TCP/IP 堆栈响应的细微差异,并将这些模式与已知操作系统指纹的大型数据库进行匹配。结果是目标操作系统和版本的最佳猜测。

目标上至少有一个开放端口和一个关闭端口有助于 Nmap 产生最准确的操作系统猜测。如果没有两者,结果可能不太可靠,但操作系统检测仍会尝试匹配。需要 root 或管理员权限。

nmap -O 192.168.1.100
nmap -O --osscan-guess 192.168.1.100   # Shows best guess even with low confidence

nmap -A:激进扫描(一体化检测)

-A 标志同时运行四个操作:

  1. 操作系统检测(-O)
  2. 服务和版本检测(-sV)
  3. 默认 NSE 脚本扫描(-sC)
  4. 路由追踪

这是“给我一切”的选项。它产生最详细的信息,但也需要更长时间并生成更多网络流量。因此,仅当你想要完整信息并拥有明确授权扫描目标时才使用它。

nmap -A 192.168.1.100
nmap -A -T4 192.168.1.100   # Aggressive scan at fast timing

提示: 对于有针对性的工作,当你想要版本和操作系统信息而不需要完整的脚本开销时,可以组合 -sV -O 而不是 -A。

8. Nmap 定时模板(-T0 到 -T5)

扫描速度影响准确性和可检测性。Nmap 通过六个定时模板直接控制,范围从偏执慢速到危险快速。

定时模板比较

建议: 在大多数实验室和专业工作中,在可靠网络上使用 -T4。在扫描生产系统时使用 -T1 或 -T2,以避免干扰实时服务。

nmap -iL:从文件输入目标

无需手动输入每个目标,-iL 从文本文件中读取主机或范围列表,每行一个。这对于扫描大型环境的管理员至关重要。

示例:

创建名为 targets.txt 的文本文件,内容如下:

192.168.1.100
192.168.1.101
10.0.0.0/24
webserver.example.com

然后运行:

nmap -T4 -sV -iL targets.txt -oA batch_results

9. 高级 TCP 扫描技术

这些专门的 TCP 技术超越了标准扫描。它们通过利用 RFC 793(TCP 规范)中的一条规则工作:关闭的端口必须用 RST 响应任何意外数据包,而开放的端口则静默丢弃数据包。这种差异揭示了端口状态,而无需完成完整握手。

重要提示: 这些扫描需要 root 权限,并且最适用于 Linux 和 Unix 目标。Windows 和一些 Cisco 设备对这些数据包的响应不同,无论端口是开放还是关闭,它们都会发送 RST,这使得在这些系统上的结果不可靠。

nmap -sX:XMAS 扫描

发送同时设置了 FIN、PSH 和 URG 标志的数据包——像圣诞树一样“点亮”,因此得名。开放端口静默丢弃数据包;关闭端口回复 RST。XMAS 扫描有时可以绕过仅过滤 SYN 标志的简单无状态防火墙。

nmap -sX 192.168.1.100

nmap -sF:FIN 扫描

发送仅设置了 FIN 标志的数据包——通常用于关闭活动连接,但这里发送给没有现有会话的端口。开放/关闭响应模式与 XMAS 扫描相同。

nmap -sF 192.168.1.100

nmap -sN:Null 扫描

发送 根本没有设置 TCP 标志 的数据包。这是可能的最小 TCP 数据包。开放或被过滤的端口静默丢弃它;关闭的端口用 RST 响应。Null 扫描可以逃避一些基本的无状态防火墙和简单的数据包过滤规则。

nmap -sN 192.168.1.100

nmap -sA:ACK 扫描(防火墙规则映射)

ACK 扫描的工作方式与上述三种不同。它 不 告诉你端口是否开放。相反,它告诉你端口是否被防火墙 过滤或未过滤。Nmap 发送 ACK 数据包;如果返回 RST,则端口未过滤(可达)。如果没有返回任何内容,或者收到 ICMP 不可达消息,则端口被过滤(被阻止)。安全工程师专门使用此功能来映射和理解防火墙规则集。

nmap -sA 192.168.1.100
nmap -sA -p 80,443,8080 192.168.1.100   # Check firewall filtering on specific ports

10. Nmap 脚本引擎(NSE)和端口选项

Nmap 脚本引擎(NSE)是 Nmap 从简单端口扫描器转变为完整安全审计平台的地方。它允许你针对目标运行基于 Lua 的脚本,以自动化数百个特定检查。Nmap 当前版本附带 612 个 NSE 脚本。

所有 15 个官方 NSE 脚本类别

你可以通过点击 NSE 类别 页面中的相应类别名称来查看每个类别中可用脚本的列表。

警告: dos、exploit、brute 和 intrusive 类别中的脚本可能会破坏或损坏系统。仅在你拥有或拥有明确书面许可测试的目标上运行它们。

nmap -sC:默认脚本扫描

运行 default 类别中的所有脚本。这些脚本安全、快速,专为常规信息收集而设计,包括 HTTP 标题检测、FTP 匿名登录检查、SSH 主机密钥检索和服务横幅抓取等。

nmap -sC 192.168.1.100
nmap -sC -sV 192.168.1.100   # Combine with version detection for richer results

nmap --script <name>:运行特定脚本

nmap --script http-title 192.168.1.100          # Grab web page title
nmap --script vuln 192.168.1.100                # Run all vulnerability scripts
nmap --script "http-*" 192.168.1.100            # Run all HTTP-related scripts
nmap --script smb-vuln-ms17-010 192.168.1.100   # Check for EternalBlue (MS17-010)

完整脚本库: 所有 NSE 脚本都记录在 nmap.org/nsedoc 上。

nmap --top-ports <n>:扫描最常见端口

无需扫描所有 65,535 个端口,--top-ports 仅扫描实际部署中最常出现的端口。Nmap 根据来自真实网络扫描的大型数据集按出现频率对它们进行排名。

nmap --top-ports 100 192.168.1.100    # 100 most common ports - fast and practical
nmap --top-ports 1000 192.168.1.100   # Broader coverage; still faster than a full scan

nmap -p:指定确切端口或范围

nmap -p 22,80,443 192.168.1.100       # Three specific ports
nmap -p 1-1000 192.168.1.100          # Port range
nmap -p- 192.168.1.100                # All 65,535 ports (comprehensive but slow)
nmap -p U:53,T:80 192.168.1.100       # UDP port 53 and TCP port 80 in one scan

11. 专业提示:如何像专家一样使用 Nmap

这些建议超越了基本标志。它们反映了经验丰富的安全专业人员和网络管理员在日常真实环境中使用 Nmap 的方式。

提示 1:始终保存输出

永远不要丢失扫描结果。使用 -oA 标志同时以三种格式保存:可读文本(.nmap)、XML(.xml)和 grepable 格式(.gnmap)。XML 格式特别有用,因为许多其他安全工具可以直接导入它。

nmap -sV -T4 -oA scan_$(date +%F) 192.168.1.0/24
# Creates: scan_2026-06-23.nmap  /  scan_2026-06-23.xml  /  scan_2026-06-23.gnmap

提示 2:组合标志进行一次高效扫描

你不需要为版本检测、脚本和定时运行单独的扫描。这个一体化命令一次性覆盖所有内容并自动保存结果:

nmap -sV -sC -O -T4 --top-ports 1000 -oA results TARGET_IP

提示 3:先发现主机,然后深度扫描

在大型网络上,始终先运行 -sn 来查找活动主机,然后将这些结果输入深度扫描。这完全跳过离线主机,节省大量时间。

# Step 1: Find and record live hosts
nmap -sn 192.168.1.0/24 -oG - | grep "Up" | awk '{print $2}' > live.txt
# Step 2: Deep scan only the live ones
nmap -sV -sC -T4 -iL live.txt -oA deep_scan

提示 4:使用 --reason 理解每个结果

将 --reason 添加到任何扫描中,Nmap 会解释它为什么将每个端口分类为那样。这在学习时以及出现意外结果时非常宝贵。

nmap -sS --reason 192.168.1.100

示例输出:

Starting Nmap 7.99 ( https://nmap.org ) at 2026-06-23 18:03 +0530
Nmap scan report for 192.168.1.100
Host is up, received localhost-response (0.000029s latency).
Not shown: 999 filtered tcp ports (no-response)
PORT   STATE SERVICE REASON
22/tcp open  ssh     syn-ack ttl 64
Nmap done: 1 IP address (1 host up) scanned in 4.75 seconds

提示 5:使用 Zenmap 可视化结果

如果你不喜欢终端,Zenmap 是 Nmap 的官方 GUI 前端。它呈现网络拓扑图,保留扫描历史,并帮助你交互式地构建命令。它是你在熟悉 CLI 时的绝佳桥梁工具。免费从 nmap.org/zenmap 下载。

提示 6:使用 python-nmap 自动化扫描

对于计划审计,python-nmap 库允许你以编程方式运行扫描、解析 XML 输出,并在网络上出现新服务时触发警报。

pip install python-nmap
import nmap
nm = nmap.PortScanner()
nm.scan('192.168.1.0/24', arguments='-sV -T4 --top-ports 100')
for host in nm.all_hosts():
print(f"{host}: {nm[host].state()}")

提示 7:使用详细模式获取实时反馈

在慢速扫描(如 UDP)上,添加 -v 或 -vv 以实时查看结果流,而不是等待完整扫描完成。

nmap -sU -vv --top-ports 50 192.168.1.100

提示 8:在 Docker 中运行 Nmap 以获得干净环境

对于隔离测试,在 Kali Linux Docker 容器内运行 Nmap。这使你的扫描活动与主机分离,并每次提供干净、可重复的环境。

docker run -it --rm kalilinux/kali-rolling nmap -sV TARGET_IP

12. 关键要点

  • nmap -sn 是正确的 ping 扫描命令。旧的 -sP 标志已弃用。停止使用它。
  • nmap -sS(TCP SYN 扫描)是最快和最流行的扫描。需要 root。
  • nmap -A 一次性运行操作系统检测、版本检测、脚本和路由追踪。
  • nmap -T4 是快速、可靠实验室网络的最佳定时模板。
  • 始终使用 -oA 保存输出,这样你就不会丢失扫描结果。
  • 永远不要扫描 你不拥有或没有书面许可扫描的系统。这是非法的。

13. Nmap 命令速查表

以下所有命令均已根据 官方 Nmap 参考指南 验证。最后测试于 Nmap 7.99。

主机发现

核心扫描类型

端口规范

定时和性能

高级 TCP 技术

NSE 脚本

输出和其他

14. Nmap 合法吗?道德和法律使用

是的,当你对你自己拥有的系统或你拥有所有者明确书面许可的系统使用 Nmap 时,它是合法的。未经许可扫描系统在大多数国家是非法的,并可能导致刑事指控。

你需要知道的法律

未经授权的网络扫描在大多数司法管辖区违反计算机欺诈法:

  • 印度 - 信息技术法案 2000,第 43 和 66 条
  • 美国 - 计算机欺诈和滥用法案(CFAA),18 U.S.C. § 1030
  • 欧盟 - 攻击信息系统指令(2013/40/EU)
  • 英国 - 计算机滥用法案 1990
  • 澳大利亚 - 刑法典法案 1995,第 10.7 部分

处罚包括罚款和监禁。未经许可扫描系统不是灰色地带。在这些司法管辖区中,这是非法的。

如何合法使用 Nmap

  1. 仅扫描你拥有的系统 - 你自己的计算机、路由器和实验室机器。
  2. 获得书面许可 后再扫描任何你不拥有的网络。
  3. 使用合法练习平台 - TryHackMe、Hack The Box 和 VulnHub 都为此类学习提供了合法、有针对性的目标。
  4. 记录授权的扫描 - 在任何专业参与期间,保留范围、授权和结果的书面记录。这在法律上保护你。
  5. 避免未经批准扫描生产系统 - 即使是授权的扫描,如果粗心运行,也可能中断实时服务。

学习者的最佳实践:

使用两个或三个 VirtualBox 虚拟机建立一个家庭实验室,并在那里练习本指南中的每条命令。你将学得更快,不会造成任何伤害,并建立直接转移到专业工作中的真实技能。

15. 常见问题解答(FAQ)

问:什么是 Nmap,它有什么用途?

答:Nmap(网络映射器)是一款免费、开源的网络扫描工具,用于发现网络上的主机、开放端口、运行的服务、服务版本和操作系统。

系统管理员将其用于网络库存和故障排除。安全专业人员将其用于渗透测试和安全审计。学生用它来学习 TCP/IP 和网络协议的实际工作原理。

问:Nmap 可以免费下载和使用吗?

答:是的。Nmap 在 Nmap 公共源代码许可证(NPSL,基于 GPLv2)下完全免费和开源。从 nmap.org/download 下载。它运行在 Linux、macOS 和 Windows 上。没有付费版本。完全免费。

问:nmap -sn 和 nmap -sP 有什么区别?

答:它们做同样的事情:发现网络上的活动主机而不扫描端口。然而,-sP 已弃用,并在所有当前版本的 Nmap 中被 -sn 取代。它将在未来版本中被移除。始终使用 -sn。

问:最快的 Nmap 扫描命令是什么?

答:对于常见端口,最快的实用扫描是:

nmap -T4 --top-ports 100 TARGET

对于覆盖所有 65,535 个端口的完整扫描:

nmap -T4 -p- TARGET

注意,-T5 技术上更快,但除了最可靠的网络外,通常会产生不准确的结果。-T4 在日常使用中提供了速度和可靠性的最佳平衡。

问:nmap -A 有什么作用?

答:-A 标志在一个命令中运行四个操作:操作系统检测(-O)、服务和版本检测(-sV)、默认 NSE 脚本扫描(-sC)和路由追踪。这是最全面的一体化 Nmap 扫描,但也是最慢和最易被检测到的。仅当你想要完整细节并拥有明确授权扫描目标时才使用它。

问:运行 Nmap 需要 root 或管理员权限吗?

答:不一定。nmap -sT(TCP 连接扫描)和 nmap -sn(主机发现)无需 root 即可工作。然而,-sS(SYN 扫描)、-sU(UDP 扫描)、-O(操作系统检测)以及高级 TCP 扫描(-sX、-sF、-sN)都需要 root 或管理员权限,因为它们需要直接构造原始网络数据包。

问:什么是 Nmap 脚本引擎(NSE)?

答:NSE 是 Nmap 内置的脚本框架。它运行 Lua 脚本,自动化超出基本端口扫描的任务,包括服务横幅抓取、vuln 检测、brute 登录测试、SSL 证书检查和恶意软件检测。Nmap 附带 612 个 NSE 脚本,分为 15 个类别。完整列表在 nmap.org/nsedoc。

问:如何将 Nmap 扫描结果保存到文件?

答:使用 -oA filename 同时以所有三种格式保存结果:

nmap -sV -T4 -oA my_scan 192.168.1.100
# Creates: my_scan.nmap  /  my_scan.xml  /  my_scan.gnmap

问:nmap -sS 和 nmap -sT 有什么区别?

答:两者都扫描 TCP 端口。-sS(SYN 扫描)发送一个 SYN 数据包,从不完成完整握手。它更快,留下的日志痕迹更少,并且需要 root。-sT(连接扫描)使用操作系统的网络堆栈完成完整的三次握手——不需要 root,但更慢,并且更容易被目标记录。

问:nmap -sA 有什么作用?

答:ACK 扫描(-sA)不检测开放端口。相反,它确定端口是否被防火墙 过滤或未过滤。Nmap 发送 ACK 数据包;RST 响应意味着端口未过滤(可达),而无响应或 ICMP 不可达消息意味着端口被过滤(被阻止)。安全工程师使用此功能来映射防火墙规则集。

问:Nmap 可以检测 vuln 吗?

答:是的,通过 NSE。vuln 类别的脚本检查已知的 CVE 和常见安全配置错误。例如,--script smb-vuln-ms17-010 检查 EternalBlue vuln。然而,Nmap 主要是一个扫描器,而不是一个 exploit 工具。对于完整的 vuln 管理工作流程,它通常与 OpenVAS、Nessus 或 Metasploit 等工具配对使用。

问:什么是 Zenmap?

答:Zenmap 是 Nmap 的官方图形用户界面。它提供可视化的网络拓扑图、扫描历史、基于配置文件的命令构建器以及跨扫描比较结果的简便方法。它非常适合 Nmap 新手或喜欢可视化工作流程的用户。从 nmap.org/zenmap 下载。

15. 结论和后续步骤

Nmap 是那种你投入的每一小时都会得到回报的工具。这些标志一开始可能看起来令人不知所措,但它们背后的逻辑是一致的。

一旦你理解了每种扫描类型为什么以这种方式工作,而不仅仅是记住命令,整个工具就会融会贯通。

回顾本指南中最重要的几点:

  • 使用 -sn 进行主机发现。旧的 -sP 标志已弃用。
  • 以 root 身份运行时,使用 -sS 作为你的首选端口扫描。
  • 组合 -sV -sC -T4 -oA 进行高效、文档齐全的一体化扫描。
  • 在学习时,将 --reason 添加到任何扫描中,以理解为什么每个端口得到其分类。
  • 未经许可切勿扫描。 这是非法的。

下一步去哪里

最好的下一步: 设置两个 VirtualBox 虚拟机,一个运行 Kali Linux 作为你的扫描机器,一个运行 Metasploitable 2 或 DVWA 作为你的目标。然后亲手实践本指南中的每条命令。阅读和实践的结合是形成真正技能的方式。

来源和进一步阅读:

标签:https://ostechnix.com/tag/cli/, https://ostechnix.com/tag/command-line/, https://ostechnix.com/tag/fyodor/, https://ostechnix.com/tag/gordon-lyon/, https://ostechnix.com/tag/how-to-use-nmap/, https://ostechnix.com/tag/linux/, https://ostechnix.com/tag/linux-howto/, https://ostechnix.com/tag/linux-networking/, https://ostechnix.com/tag/network-mapper/, https://ostechnix.com/tag/network-scanning-tools/, https://ostechnix.com/tag/network-security/, https://ostechnix.com/tag/nmap/, https://ostechnix.com/tag/nmap-sn-vs-sp/, https://ostechnix.com/tag/nmap-cheat-sheet/, https://ostechnix.com/tag/nmap-port-scanning-tutorial/, https://ostechnix.com/tag/nmap-scan-types/, https://ostechnix.com/tag/nmap-scripting-engine/, https://ostechnix.com/tag/nmap-security-scanner/, https://ostechnix.com/tag/nmap-security-scanner-gui/, https://ostechnix.com/tag/open-source/, https://ostechnix.com/tag/penetration-testing-tools/, https://ostechnix.com/tag/zenmap/