当前位置: 首页 > news >正文

​Linux 中 nmap 命令详解:从基础到实战的全面指南

文章目录

  • nmap 简介
    • 安装 nmap
  • nmap 的基本用法
    • 发现在线主机
    • 端口扫描
    • 扫描整个网段的开放端口
  • nmap 常见参数
  • nmap 进阶应用
    • 操作系统识别
    • 详细端口和服务探测
    • 使用 NSE 脚本扫描漏洞
    • 扫描防火墙规则
    • 绕过防火墙扫描
  • nmap 扫描原理
    • 常见扫描方式
    • 反制 nmap 扫描
  • nmap 实战案例
    • 批量扫描多个 IP
    • 扫描整个子网并导出结果
  • nmap 使用注意事项
  • 总结


nmap(Network Mapper)是一款强大的网络扫描工具,广泛用于端口扫描、主机发现、服务识别等。以下是详细的 nmap 命令指南,包括基本用法、常见参数、示例、扫描原理以及进阶应用。


nmap 简介

nmap 是一个开源的网络探测和安全审计工具,支持多种扫描方式,能够检测开放端口、识别操作系统、探测服务版本等。

安装 nmap

# Debian/Ubuntu
sudo apt install nmap

# CentOS/RHEL
sudo yum install nmap

# macOS(使用 Homebrew)
brew install nmap

nmap 的基本用法

nmap [选项] <目标>
  • <目标> 可以是单个 IP、多个 IP、IP 段或者域名。

发现在线主机

nmap -sn 192.168.1.0/24

说明:使用 -sn 仅执行主机发现,不扫描端口。

端口扫描

nmap -p 22,80,443 192.168.1.1

说明:扫描指定主机的 2280443 端口。

扫描整个网段的开放端口

nmap 192.168.1.0/24

说明:默认扫描 1000 个常见端口。


nmap 常见参数

参数作用
-sn仅主机发现,不扫描端口
-p指定端口扫描,如 -p 80,443
-p-扫描所有 0-65535 端口
-sSTCP SYN 扫描(默认方式,隐蔽性高)
-sTTCP 连接扫描(不需要 root 权限)
-sUUDP 扫描(如 -sU -p 53 扫描 DNS 端口)
-sV识别端口运行的服务及版本
-O操作系统检测
-A启用 -O -sV -sC,增强扫描结果
--script使用 NSE(Nmap Scripting Engine)脚本
-T调整扫描速度(T0-T5,默认 T3

nmap 进阶应用

操作系统识别

sudo nmap -O 192.168.1.1

说明-O 选项用于识别目标主机的操作系统。

详细端口和服务探测

sudo nmap -sV 192.168.1.1

说明:使用 -sV 探测端口运行的具体服务版本。

使用 NSE 脚本扫描漏洞

sudo nmap --script=vuln 192.168.1.1

说明--script=vulnnmap 执行漏洞检测脚本。

扫描防火墙规则

sudo nmap -sA 192.168.1.1

说明-sA 选项用于分析防火墙的过滤策略。

绕过防火墙扫描

nmap -D RND:10 192.168.1.1

说明-D 选项用于伪造多个来源 IP,使扫描更难被检测。


nmap 扫描原理

常见扫描方式

扫描类型说明
-sSSYN 扫描(半开放扫描,隐蔽性高)
-sTTCP 连接扫描(适用于非 root 用户)
-sUUDP 扫描(检测 UDP 服务)
-sXXmas 扫描(发送特殊 TCP 标志位包)
-sNNULL 扫描(发送无标志位的 TCP 包)
-sFFIN 扫描(仅发送 FIN 标志位)

反制 nmap 扫描

  • 使用 iptables 限制端口扫描
iptables -A INPUT -p tcp --dport 22 -m recent --name SSHSCAN --set
iptables -A INPUT -p tcp --dport 22 -m recent --name SSHSCAN --update --seconds 60 --hitcount 4 -j DROP

说明:如果 nmap 扫描 22 端口 4 次,则封禁该 IP 60 秒。


nmap 实战案例

批量扫描多个 IP

nmap -sS -p 22,80,443 192.168.1.1 192.168.1.2 192.168.1.3

说明:同时扫描多个 IP 的 2280443 端口。

扫描整个子网并导出结果

nmap -p 22,80,443 -oN result.txt 192.168.1.0/24

说明:将扫描结果保存到 result.txt 文件中。


nmap 使用注意事项

  • 权限:部分扫描方式(如 -sS)需要 root 权限。
  • 法律合规:请勿在未授权的情况下扫描他人网络,以免触犯法律。
  • 扫描时间:大型网络扫描可能需要较长时间,建议适当调整 -T 选项加快扫描速度。

总结

nmap 是一款强大的网络扫描工具,适用于安全审计、端口探测、主机发现等任务。通过灵活使用 nmap 的参数,我们可以获取目标主机的详细信息,从而提高网络安全性。

相关文章:

  • dfs记忆化搜索刷题 + 总结
  • 如何判断列表a中元素是否在列表b中
  • [leetcode]2685. 统计完全连通分量的数量
  • C++ 结构体、结构体指针与结构体指针数组详解
  • RabbitMQ 的三种集群模式
  • ETL数据集成:企业数字化转型的核心驱动力与实施策略
  • C++ Primer Plus 编程练习题 第五章 循环和关系表达式
  • 22-ArkTs 常见错误
  • DataPlatter:利用最少成本数据提升机器人操控的泛化能力
  • K8S学习之基础六十四:helm常用命令
  • 戴尔电脑安装Ubuntu双系统
  • 设计模式中的“万能转换器”——适配器模式
  • 【AI News | 20250331】每日AI进展
  • 鸿蒙编译构建-多目标产物
  • Scala循环守卫
  • vi编辑器常见命令
  • stm32第十一天外部中断按键控制灯
  • 自定义类型:结构体
  • 【Java】——数组深度解析(从内存原理到高效应用实践)
  • CentOS 7上手动强制升级docker-compose(不使用yum)
  • 斗鱼网站的实时视频是怎么做的/网上国网app推广方案
  • 无锡网站公司哪家好/百度推广登录网址
  • 做网站需要源码吗/风云榜小说排行榜
  • 大鹏外贸网站建设/win优化大师官网
  • 岳阳汨罗网站建设/磁力狗在线
  • 中卫网红大型蹦床设备/seo观察网