我想扫描一个大型网络,例如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范围之后,该怎么办?换句话说:
希望我有所作为,谢谢。
答案 0 :(得分:2)
出于效率原因,这不是Nmap的设计方式。特别是如果您正在扫描/ 16网络,您会发现这种方法非常低效。
您可能对--max-hostgroup
option感兴趣,可用于设置每个主机组的最大主机数。默认情况下,仅针对少数端口的扫描使用较大的主机组,这意味着您将无法快速查看结果(尽管扫描总体上会更快)。您可以将其设置为较低的值,如24,以便在完成后为每批24个主机获取结果。将其设置为1将产生您想要的效果。