news 2026/3/1 19:05:55

Nmap网络扫描工具使用(详细)

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
Nmap网络扫描工具使用(详细)

Nmap(Network Mapper)是 Linux/Windows/Mac 平台通用的网络扫描工具,核心功能包括:主机发现、端口扫描、操作系统探测、服务版本识别、漏洞检测等,是网络管理员、安全测试人员的必备工具。本文从基础到实战,全面讲解 Nmap 的使用方法。

一、Nmap 安装

1. Linux(Kali/Ubuntu/CentOS)

  • Kali Linux 预装 Nmap,直接使用即可。

二、核心概念

在使用前,先明确 4 个核心概念:

概念

含义

主机发现

检测网段内哪些 IP 是在线的(类似 “点名”);

端口扫描

检测在线主机开放了哪些端口(端口是服务的 “入口”,如 80=HTTP、443=HTTPS);

端口状态

Nmap 扫描后端口的 6 种状态:-open:开放(运行服务,可连接);-closed:关闭(无服务,主动拒绝连接);-filtered:过滤(防火墙 / 路由器拦截,无法判断是否开放);-unfiltered:未过滤(可访问,但端口状态未知);- `open

权限要求

普通用户可执行基础端口扫描;操作系统探测(-O)、半开放扫描(-sS)等需 root 权限(Linux 加sudo,Windows 以管理员身份运行)。

三、基础用法

1. 语法格式

nmap [选项] 目标IP/网段

  • 目标可以是:单个 IP(如192.168.1.1)、多个 IP(如192.168.1.1 192.168.1.2)、网段(如192.168.1.0/24,含 256 个 IP)、域名(如www.baidu.com)。

2. 常用基础命令

(1)默认扫描(无选项)

nmap 192.168.142.1 # 扫描单个IP

nmap 192.168.142.0/24 # 扫描整个网段

  • 功能:默认扫描 1000 个常用 TCP 端口,输出 “主机是否在线” 和 “开放端口 + 对应服务”;
  • 特点:速度中等,无需 root 权限,适合快速排查。
(2)快速扫描(-T4 加速)

nmap -T4 IP

  • -T4:指定扫描速度等级(1-5,T1 最慢,T5 最快),T4 是平衡 “速度 + 准确性” 的常用等级;
  • 场景:扫描大网段(如 256 个 IP)时,比默认扫描快 2-3 倍。
(3)全端口扫描(-p-)

sudo nmap -p- -T4 IP # -p- 表示扫描所有 65535 个 TCP 端口

  • 默认扫描仅 1000 个常用端口,-p-扫描全部端口(0-65535),可能发现隐藏服务;
  • 注意:耗时较长(单个 IP 约 5-10 分钟),建议配合-T4加速;
  • 精准指定端口:-p 80,443(扫描 80 和 443 端口)、-p 1-1000(扫描 1-1000 端口)。
(4)主机发现(仅判断是否在线,不扫端口)

nmap -sn 192.168.142.0/24 # -sn = no port scan(不扫端口)

  • 功能:仅检测网段内在线的主机,输出 “IP + 主机名(如有)”;
  • 场景:快速统计网段内在线设备数量(如 “办公室有多少台电脑在线”),速度极快(256 个 IP 约 1 秒)。

四、进阶用法

1. 操作系统探测(-O)

sudo nmap -O -T4 IP # 必须 root 权限

  • 功能:通过分析目标主机的 TCP/IP 协议特征(如端口响应、数据包格式),识别操作系统(如 Windows 10、Linux 5.x、CentOS 7 等);
  • 输出示例:

Running: Linux 4.X|5.X

OS details: Linux 4.15 - 5.19

Network Distance: 1 hop(1跳,说明是局域网内主机)

  • 注意:如果目标主机开启防火墙,可能探测失败(显示 “Unknown OS”)。

2. 服务版本识别(-sV)

nmap -sV -T4 IP # 无需 root 权限,可与 -O 结合

  • 功能:不仅显示端口对应的默认服务(如 80=HTTP),还能识别服务的具体版本(如 Apache 2.4.29、Nginx 1.18.0);
  • 场景:漏洞扫描的基础(比如知道 Apache 2.4.29 有某个漏洞,就可以针对性测试);
  • 结合用法:sudo nmap -O -sV -T4 192.168.142.1(同时探测 OS + 服务版本)。

3. 扫描类型

Nmap 支持多种端口扫描类型,核心常用的有 3 种:

(1)半开放扫描(-sS,推荐)

sudo nmap -sS -T4 IP # 必须 root 权限

  • 原理:发送 TCP SYN 包(连接请求),目标端口开放则返回 SYN+ACK 包,Nmap 不回复 ACK 包(不建立完整连接);
  • 优点:速度快、隐蔽性强(目标主机日志可能不记录 “完整连接”,仅记录 “半连接尝试”);
  • 场景:常规扫描首选,兼顾速度和隐蔽性。
(2)全连接扫描(-sT)

nmap -sT -T4 IP # 无需 root 权限

  • 原理:建立完整的 TCP 连接(SYN → SYN+ACK → ACK),类似浏览器访问网站的连接过程;
  • 优点:兼容性好(所有系统都支持),结果准确;
  • 缺点:速度慢、隐蔽性差(目标主机日志会明确记录 “来自某 IP 的连接请求”);
  • 场景:无 root 权限时使用(如普通用户登录服务器扫描)。
(3)UDP 扫描(-sU)

sudo nmap -sU -T4 IP # 必须 root 权限

  • 原理:扫描 UDP 端口(TCP 扫描无法覆盖 UDP 服务,如 DNS 53、SNMP 161 等);
  • 特点:速度慢(UDP 无连接,需等待超时),但必要时必须用;
  • 场景:检测 UDP 服务(如 “目标主机是否运行 DNS 服务”)。

4. 输出保存(-oN/-oX/-oG)

扫描结果保存到文件,方便后续分析或分享:

# 保存为普通文本(-oN = output normal)

nmap -sn 192.168.142.0/24 -oN /tmp/online_hosts.txt

# 保存为 XML 格式(可导入其他工具分析,如 Metasploit)

nmap -O -sV 192.168.142.1 -oX /tmp/os_service.xml

# 保存为 grep 友好格式(便于用 grep 筛选结果)

nmap -p 80,443 192.168.142.0/24 -oG /tmp/http_ports.txt

五、实战场景示例

场景 1:快速排查局域网在线设备

nmap -sn -T5 192.168.1.0/24 -oN /tmp/lan_online.txt

  • 解读:-sn不扫端口,-T5最快速度,扫描 192.168.1.0/24 网段,结果保存到文件;
  • 用途:快速知道 “家里 / 办公室有哪些设备连网”(如是否有陌生设备蹭网)。

场景 2:检测目标主机开放服务及版本

sudo nmap -O -sV -p- -T4 IP -oN /tmp/full_scan.txt

  • 解读:-O探测 OS,-sV识别服务版本,-p-全端口扫描,-T4加速;
  • 用途:全面了解目标主机的 “暴露面”(如开放了 80 端口的 Nginx 1.18.0、22 端口的 SSH 7.9p1)。

场景 3:扫描网段内开放 80 端口(HTTP 服务)的主

nmap -p 80 -T4 IP -oG /tmp/http_hosts.txt

  • 解读:仅扫描 80 端口,快速筛选出网段内运行网页服务的主机;
  • 后续:可访问这些主机的http://IP,查看是否有可访问的网站。

场景 4:穿透防火墙扫描(-Pn 跳过主机发现)

如果目标主机开启防火墙,可能会屏蔽主机发现的数据包(导致 Nmap 误判 “离线”),用-Pn强制扫描:

sudo nmap -Pn -sS -T4 IP # -Pn = 假设主机在线,直接扫端口

  • 用途:扫描防火墙开启的主机(如服务器、路由器),避免因主机发现失败而跳过扫描。

六、常见问题与注意事项

1. 报错 “requires root privileges”

  • 原因:使用了需要 root 权限的选项(如-O-sS-sU);
  • 解决:Linux 加sudo(如sudo nmap -O ...),Windows 以管理员身份运行 cmd / 终端。

2. 扫描速度慢

  • 优化方案:
    1. -T4-T5加速;
    2. 不扫全端口(用-p 常用端口替代-p-);
    3. 减少扫描类型(如仅用-sS,不同时用-sU);
    4. 针对单个 IP 扫描(而非大网段)。

3. 端口显示 “filtered”

  • 原因:目标主机的防火墙 / 路由器拦截了 Nmap 的扫描数据包;
  • 应对:
    1. -Pn强制扫描;
    2. 更换扫描类型(如-sT替代-sS);
    3. 扫描常用端口(防火墙可能只开放特定端口)。

4. 法律与伦理注意

  • Nmap 是强大的工具,但禁止扫描未经授权的网络 / 主机(可能违反《网络安全法》等法律法规,承担法律责任);
  • 仅可扫描自己拥有或获得授权的网络 / 设备!

七、常用选项速查

选项

功能

-sn

仅主机发现,不扫端口

-p <端口>

扫描指定端口(如-p 80,443-p-全端口)

-T<1-5>

扫描速度等级(T4 常用)

-O

探测操作系统(需 root)

-sV

识别服务版本

-sS

半开放扫描(速度快、隐蔽,需 root)

-sT

全连接扫描(无需 root,兼容性好)

-sU

UDP 扫描(需 root)

-Pn

假设主机在线,跳过主机发现

-oN <文件>

保存结果为普通文本

-h

查看帮助文档(所有选项详细说明)

总结

Nmap 的核心是 “按需选择扫描方式”:

  • 快速排查:nmap -sn -T4 网段
  • 常规扫描:sudo nmap -sS -O -sV -T4 IP
  • 精准扫描:sudo nmap -p 目标端口 -sV IP
  • 避开防火墙:sudo nmap -Pn -sS IP
版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/2/27 2:49:17

AIGC 商用实战派:集之互动用 “高可控” 接住品牌真需求

在AIGC&#xff08;人工智能生成内容&#xff09;技术狂飙突进的今天&#xff0c;视频生成领域正经历着前所未有的热度。从Sora的惊艳亮相到Runway的持续迭代&#xff0c;AI看起来“无所不能”。然而&#xff0c;当我们将目光从“技术演示”转向“商业交付”时&#xff0c;一个…

作者头像 李华
网站建设 2026/3/1 16:24:56

Go语言结构体

一、什么是结构体&#xff08;Struct&#xff09;结构体是 Go 里用来组织一组不同类型字段的复合数据类型&#xff0c;有点像 Java 里的 class&#xff0c;但&#xff1a;没有继承没有构造函数首字母大写 对外可见&#xff0c;首字母小写 包内可见示例&#xff1a;type User …

作者头像 李华
网站建设 2026/3/1 10:00:40

AI产业格局生变,家居服企业的“智”胜关键在哪?

AI产业格局生变&#xff0c;家居服企业的“智”胜关键在哪&#xff1f;观察AI行业的演进格局&#xff0c;一个清晰的主线正浮出水面&#xff1a;技术本身的门槛正在降低&#xff0c;而“技术行业知识落地场景”的深度融合能力&#xff0c;成为价值创造的分水岭。对于身处红海市…

作者头像 李华
网站建设 2026/2/24 12:44:56

COLMAP动态干扰消除:从问题诊断到智能解决方案

COLMAP动态干扰消除&#xff1a;从问题诊断到智能解决方案 【免费下载链接】colmap COLMAP - Structure-from-Motion and Multi-View Stereo 项目地址: https://gitcode.com/GitHub_Trending/co/colmap 在处理街景、室内场景或公共场所的3D重建时&#xff0c;COLMAP动态…

作者头像 李华
网站建设 2026/2/26 21:55:36

SGMICRO圣邦微 SGM2006-2.8XN5/TR SOT23-5 线性稳压器(LDO)

特性 低输出噪声:30uVrms类型(10Hz至100kHz)超低压差电压: 输出150mA时为150mV低负载时供电电流为77μA 在150mA输出时&#xff0c;低功耗工作电流为150μA 高电源抑制比:在1kHz时为73dB-热过载保护 输出电流限制 预设输出电压(精度 士2.7%) -10纳安逻辑控制关断提供多种输出电…

作者头像 李华