马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要 登录 才可以下载或查看,没有账号?立即注册
×
Nmap 是网络排查与安全自查里最常用的端口扫描工具。运维同学用它摸清自己机器的开放面,开发同学用它确认服务是否真的监听在预期端口,安全同学则用它做资产梳理。本文把主机发现、端口扫描、服务指纹识别、速度调优、输出控制这些高频用法按场景整理成一张命令清单,并对每一类参数说明作用与适用条件。所有命令请以自有网络或已获得书面授权的环境为目标使用,未授权对他人主机扫描在很多司法辖区都属于违法行为。
一、主机发现:先搞清楚有哪些机器在线
拿到一段网段,第一步不是扫端口,而是先确认哪些 IP 是活的。
1.1 综合扫描与单次目标
最省事的写法是一次性把系统探测、端口扫描、版本探测、操作系统识别全跑一遍,适合单点快速摸底:
nmap -A 192.168.100.100
小提示:-A 输出最全但最慢也最显眼,大网段里慎用。
1.2 网段 ping 扫描
整段网段做主机发现,192.168.1.1/24 表示前 24 位为网络位:
nmap -sP 192.168.1.1/24
1.3 免 ping 扫描(绕过 ICMP 限制)
很多服务器禁了 ICMP。此时不再依赖 echo 包,改用 TCP 握手探测,也自然降低了被传统防火墙按 ICMP 规则拦截的概率:
nmap -P0 192.168.100.100
1.4 各类 TCP ping 方式
针对防火墙丢弃 RST 的场景,用特定端口的 SYN 探测更稳:
nmap -PS -v 192.168.100.100
nmap -PS80,10-100 -v 192.168.100.100
ACK ping 则更像是「对着不存在的端口回包判断在线」:
nmap -PA -v 192.168.100.100
1.5 UDP 与 ARP 探测
nmap -PU -v 192.168.100.100
nmap -PR -v 192.168.100.100
ARP 探测只在局域网内有效,因为它直接发二层帧,本机同网段下准确率很高。
1.6 域名解析与 IPv6
-sL:只做列表式扫描,确认主机名是否存在。
-n:不做反向解析,扫描快很多,结果里不显示域名。
-R:强制对所有结果做正向反向解析。
--system-dns:改用系统解析器,在 ISP DNS 不通但系统 DNS 可用时常能救场。
-6:针对 IPv6 地址族扫描。
--traceroute:附带路由跟踪,辅助判断链路跳数。
nmap -sL -v 192.168.100.100
nmap -n -sL -v 192.168.100.100
nmap -R -sL -v 192.168.100.100
nmap --system-dns 192.168.1.2 192.168.100.100
nmap -6 IPv6
nmap --traceroute -v www.example.com
二、端口发现:看开在哪些口上
2.1 时序调节
-T 后面 0 到 5 共六档,0 最慢最隐蔽、5 最快最容易把服务打懵。生产环境自查建议从 3 开始,别一上来就 5:
nmap -T4 192.168.100.100
2.2 指定端口与端口范围
nmap -p 80 192.168.100.100
nmap -p 80-100 192.168.100.100
nmap -p T:80,U:445 192.168.100.100
第三条是「TCP 看 80、UDP 看 445」的混合写法,混合协议排查时很实用。
2.3 快速扫描与热门端口
nmap -F 192.168.100.100
nmap --top-ports 100 192.168.100.100
2.4 四种主流扫描方式
-sS SYN 扫描:发 SYN 不完成握手,快且日志 痕迹小,需要 root 权限,是日常首选。
-sT 全连接扫描: 完成三次握手,不需要权限,目标日志 里能看到完整连接,更「老实」。
-sU UDP 扫描:UDP 服务无握手,判断困难故慢,但 DNS、SNMP、DHCP 这类必须靠它。
-sN/-sF/-sX NULL、FIN、Xmas:三种非常规包构造,对只记录异常连接的防火墙有一定绕过效果,如今多数目标已默认响应,参考价值下降。
nmap -sS -v 192.168.100.100
nmap -sT -v 192.168.100.100
nmap -sU -p 80-100 192.168.100.100
nmap -sN 192.168.100.100
nmap -sF 192.168.100.100
nmap -sX 192.168.100.100
2.5 需要 root 的几种高级探测
nmap -sA 192.168.100.100
nmap -sW -v -F 192.168.100.100
nmap -sM -T4 192.168.100.100
nmap -sT --scanflags SYNURG 192.168.100.100
nmap -sI www.example.com:80 192.168.100.100
nmap -sO -T4 192.168.100.100
其中 -sI 是空闲扫描(借助一台中间机转发, 隐藏自身源地址),-sO 是 IP 协议扫描(探测目标支持哪些 IP 协议号)。这两项属于隐蔽技术,同样只在授权范围内使用。
三、指纹识别:开的是什么、跑的什么版本
nmap -sV 192.168.100.100
nmap -sV -A 192.168.100.100
3.1 全端口与强度调节
默认只扫已发现端口,加 --allports 会扫全部端口(包括非标准里被应用监听的),更全但更慢:
nmap -sV --allports 192.168.100.100
nmap -sV --version-intensity 5 192.168.100.100
nmap -sV --version-light 192.168.100.100
nmap -sV --version-all 192.168.100.100
nmap -sV --version-trace 192.168.100.100
强度参数 0 到 9,数字越大试探越充分、耗时越长;--version-light 相当于 2 档的快捷写法。
3.2 RPC 与操作系统识别
nmap -sS -sR 192.168.100.100
nmap -O --osscan-limit 192.168.100.100
nmap -O --osscan-guess 192.168.100.100
--osscan-limit 只在不做全端口扫描时尝试探测,快;--osscan-guess 在未匹配到精确指纹时猜测一个最接近的结果,可信度降低但总比没有好。
四、速度调优:大网段怎么扫得快又不把目标打挂
--min-hostgroup / --max-hostgroup:同时并行扫描的主机组大小。
--min-parallelism / --max-parallelism:单台主机上并发的探测包数量。
--initial-rtt-timeout / --min-rtt-timeout / --max-rtt-timeout:RTT 超时基线设置,跨机房、高延迟网络里调它能明显提速。
--host-timeout:单台主机扫超过这个时间就放弃,避免个别卡死的主机拖住整轮。
--scan-delay / --max-scan-delay:发包间隔,压到秒级能显著降低把业务拖垮的风险。
nmap --min-hostgroup 30 192.168.1.110/24
nmap --max-hostgroup 30 192.168.100.101
nmap --min-parallelism 100 192.168.100.101
nmap --max-parallelism 100 192.168.100.101
nmap --initial-rtt-timeout 100ms 192.168.100.101
nmap --host-timeout 1800000ms 192.168.100.101
nmap --scan-delay 1s 192.168.100.101
五、输出与落地
扫完之后要能留给别人看或存档:
-oN:普通文本输出,人读最友好。
-oG:grepable 格式,方便脚本按行过滤。
-oX:XML 输出,可导入资产管理系统。
-oS:扫描模式脚本输出,适合二次加工。
另外 --script 可以挂 NSE 脚本做更细的探测;脚本库也是双刃剑,某些脚本本身就会触发目标告警,跑之前先确认目标授权。
六、使用边界提醒
- 只对你拥有、或持有书面授权的目标执行扫描;外包
安全评估、渗透测试要在合同与窗口期内进行。
- 高强度扫描会造成业务侧 CPU、连接数压力,生产期间尽量限速、限并发,先拿小网段试。
- 频繁扫描会被目标 IDS 记录并可能触发封禁,排期上要有节制。
- 扫描结果本身属于敏感信息(暴露面清单),在内部按资产资料管理,别随手贴到公开渠道。
- 本文所有命令均为工具用法的客观介绍,不构成任何未经授权测试的鼓励。
把这张清单按「先主机发现 → 再端口扫描 → 后服务识别 → 最后调优输出」的顺序走一遍,日常 90% 的网络探测需求基本都能覆盖。真正要记住的不是死背参数,而是先想清楚这一次扫描的目的是什么,再选最轻量的那条命令。
qidao123.com企服评测-应用市场 编辑提示:本文为 Nmap 工具命令的客观整理与用法说明,不含任何外部链接;命令行中的示例 IP 与域名均为占位示例,实际使用时请替换为目标地址,并严格遵守你所在地区的法律规定与授权边界。 |