nmap(Network Mapper)是一个开源的网络扫描和安全审计工具,它被设计为用于发现设备在网络上运行并确定其开放的网络端口。该工具常用于网络安全实践和网络管理任务,例如检查开放的网络端口,检测网络服务及其版本,以及确定设备的操作系统类型。
常用的 nmap 选项和用法
 
-  基本扫描 
 扫描主机以查看哪些端口是开放的:nmap <target>
-  指定端口范围 
 扫描特定的端口或端口范围:nmap -p 20-30 <target>
-  扫描多个目标 
 可以扫描多个主机或整个子网:nmap 192.168.1.1,2,3 nmap 192.168.1.1-20
-  端口状态 
 nmap会报告端口的几种状态:开放(open)、关闭(closed)、过滤(filtered)、未过滤(unfiltered)、开放|过滤(open|filtered)和关闭|过滤(closed|filtered)。
-  服务和版本检测 
 使用-sV选项来检测运行在开放端口上的服务和版本:nmap -sV <target>
-  操作系统检测 
 使用-O选项来尝试确定目标主机的操作系统类型:nmap -O <target>
-  Ping扫描 
 仅仅检测主机是否在线,不扫描端口:nmap -sp <target>
-  不ping 
 在扫描时跳过ping步骤,直接进行端口扫描:nmap -Pn <target>
-  更快速的扫描 
 使用-T选项可以指定扫描的速度/时间模板。例如,-T4表示更快速的扫描,但可能会失去一些准确性:nmap -T4 <target>
-  脚本扫描 
 nmap还带有一个强大的脚本引擎,用于进一步的检查和审计。例如,使用默认的脚本进行扫描:
nmap -sC <target>
- 扫描所有的TCP端口
 默认情况下,nmap只扫描知名的1,000个TCP端口。使用-p-扫描所有65535个端口:
nmap -p- <target>
- 输出结果
 使用-o选项可以将扫描结果保存到文件中,支持多种格式(例如-oN为普通,-oX为XML):
nmap -oN output.txt <target>
在 nmap 中,-T 选项后跟一个值(从0到5)用于设置扫描时的时间和超时参数。这些值提供了预设的一组参数,以便用户可以轻松地在速度与扫描准确性之间做出权衡。-T4 是其中的一个预设值。
下面是每个 -T 选项的含义:
-  -T0 (paranoid): 这是最慢的扫描选项。它在连续的两个扫描之间增加了大约5分钟的延迟,以避免被侦测。 
-  -T1 (sneaky): 比 -T0快,但还是很慢,扫描之间的延迟大约为15秒。
-  -T2 (polite): 更快速,但仍然相对温和,扫描之间的延迟大约为0.4秒。 
-  -T3 (normal): 这是 nmap的默认扫描速度。它没有特定的延迟,而是使用nmap的内部算法来确定最佳的扫描速度。
-  -T4 (aggressive): 这是一个加快的扫描模式,减少了很多的超时和延迟。这可能导致在不稳定的网络上结果不准确。 
-  -T5 (insane): 这是最快的扫描选项,但也是最有可能被侦测、被防火墙阻止或产生不准确结果的选项。 
在选择 -T 选项时,通常建议从 -T3 开始,并根据需要调整。如果觉得扫描过于缓慢或结果不准确,可以尝试 -T4 或 -T5,但要注意这可能会增加被侦测的风险。
以上只是 nmap 的一些基本和常用选项,实际上它还有许多高级功能和选项,可以参考官方文档或使用 man nmap 查看更多详细信息。
以上内容仅供学习使用!!!
 注意!!!未经授权使用 nmap 扫描他人的设备是非法的。在使用此工具时,务必确保自己的行为是合法和道德的。