在大型网络扫描中发现每个端口打开后,Nmap服务是否可以扫描?

时间:2012-09-11 10:50:38

标签: networking nmap network-scan

我想扫描一个大型网络,例如10.10.0.0/16,我正在寻找端口22打开,但我只对那些运行“OpenSSH 5.1”的端口感兴趣。

到目前为止我所做的是以下内容:

nmap -PN -T4 -sS -p 22 -sV 10.10.0.0/16 -oG test_results
cat test_results | grep 'OpenSSH 5.1'

这是有效的,但这是困难的部分。 Nmap只有在完成扫描范围内所有IP的端口扫描后才会启动服务扫描,我是否正确?

但是,如果我想查看在单个IP的每个端口扫描之后运行的服务,而不是在扫描整个IP范围之后,该怎么办?换句话说:

  1. 端口扫描一个IP,找出端口22是否打开。
  2. 如果22端口已打开,则立即进行服务扫描。
  3. 如果服务名称与“OpenSSH 5.1”匹配,则在屏幕上立即输出IP,同时扫描仍在运行。
  4. 端口扫描范围内的下一个IP ......依此类推......
  5. 希望我有所作为,谢谢。

1 个答案:

答案 0 :(得分:2)

出于效率原因,这不是Nmap的设计方式。特别是如果您正在扫描/ 16网络,您会发现这种方法非常低效。

您可能对--max-hostgroup option感兴趣,可用于设置每个主机组的最大主机数。默认情况下,仅针对少数端口的扫描使用较大的主机组,这意味着您将无法快速查看结果(尽管扫描总体上会更快)。您可以将其设置为较低的值,如24,以便在完成后为每批24个主机获取结果。将其设置为1将产生您想要的效果。