Linux中的nmap命令

nmap(Network Mapper)是一个开源的网络扫描和安全审计工具,它被设计为用于发现设备在网络上运行并确定其开放的网络端口。该工具常用于网络安全实践和网络管理任务,例如检查开放的网络端口,检测网络服务及其版本,以及确定设备的操作系统类型。

常用的 nmap 选项和用法

  1. 基本扫描
    扫描主机以查看哪些端口是开放的:

    nmap 
    
  2. 指定端口范围
    扫描特定的端口或端口范围:

    nmap -p 20-30 
    
  3. 扫描多个目标
    可以扫描多个主机或整个子网:

    nmap 192.168.1.1,2,3
    nmap 192.168.1.1-20
    
  4. 端口状态
    nmap 会报告端口的几种状态:开放(open)、关闭(closed)、过滤(filtered)、未过滤(unfiltered)、开放|过滤(open|filtered)和关闭|过滤(closed|filtered)。

  5. 服务和版本检测
    使用 -sV 选项来检测运行在开放端口上的服务和版本:

    nmap -sV 
    
  6. 操作系统检测
    使用 -O 选项来尝试确定目标主机的操作系统类型:

    nmap -O 
    
  7. Ping扫描
    仅仅检测主机是否在线,不扫描端口:

    nmap -sp 
    
  8. 不ping
    在扫描时跳过ping步骤,直接进行端口扫描:

    nmap -Pn 
    
  9. 更快速的扫描
    使用 -T 选项可以指定扫描的速度/时间模板。例如,-T4 表示更快速的扫描,但可能会失去一些准确性:

    nmap -T4 
    
  10. 脚本扫描
    nmap 还带有一个强大的脚本引擎,用于进一步的检查和审计。例如,使用默认的脚本进行扫描:

nmap -sC 
  1. 扫描所有的TCP端口
    默认情况下,nmap 只扫描知名的1,000个TCP端口。使用 -p- 扫描所有65535个端口:
nmap -p- 
  1. 输出结果
    使用 -o 选项可以将扫描结果保存到文件中,支持多种格式(例如 -oN 为普通,-oX 为XML):
nmap -oN output.txt 

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 扫描他人的设备是非法的。在使用此工具时,务必确保自己的行为是合法和道德的。

你可能感兴趣的:(Linux,linux,网络,服务器)