如何使用 nmap 确定给定范围内的哪些 IP 具有端口 80?

Posted

技术标签:

【中文标题】如何使用 nmap 确定给定范围内的哪些 IP 具有端口 80?【英文标题】:How to determine which IPs in a given range have port 80 using nmap? 【发布时间】:2011-04-15 22:47:21 【问题描述】:

我是 bash 脚本的新手,我正在努力让它发挥作用:

正在扫描 IP 范围以查找端口 80 已打开的设备... 我认为它必须看起来像这样:

#!/bin/bash
echo -----------------------------------
for ip in 192.168.0.1,.255; do
nmap -p80 192.168.0.1
      if #open; then
            echo "ip has the port 80 open"
      else
            #do nothing
fi
done
echo -----------------------------------
exit 0

我也只想看到这样的结果:

-----------------------------------
192.168.0.1 has the port 80 open
192.168.0.10 has the port 80 open
192.168.0.13 has the port 80 open
192.168.0.15 has the port 80 open
-----------------------------------

(所以没有错误或nmap的正常输出..)

有人可以帮我吗?

【问题讨论】:

您可以在不编写 shellscript 的情况下执行此操作。 nmap 支持地址范围和特定端口扫描,都作为命令行参数。查看手册页或nmap.org 的文档。 你应该使用 nmap 选项来做你想做的事。但是,这里有一点语法帮助:for ip in 192.168.0.1,255(没有多余的点)将为您提供 192.168.0.1 和 192.168.0.255 only。如果您想要从 1 到 255 的范围,请执行以下操作:for ip in 192.168.0.1..255 然后您的 nmap 命令将使用此变量:nmap -p80 "$ip" 【参考方案1】:

nmap 带有一个很好的输出参数-oGgrepable 输出),它使解析更容易。此外,没有必要遍历您要扫描的所有 IP 地址。 nmap 可以识别网络掩码。

你的例子可以写成:

nmap -p80 192.168.0.0/24 -oG - | grep 80/open

-oG 启用grepable 输出- 指定要输出到的文件(在本例中为stdout)。管道符号将 nmap (stdout) 的输出重定向到 grep,在这种情况下只返回包含 80/open 的行。

【讨论】:

感谢您的回答...遗憾的是,您的代码没有得到输出...我只是得到这些行(在 shell 脚本中): mass_dns: warning: Unable to open /etc /resolv.conf。尝试使用 --system-dns 或使用 --dns servers mass_dns 指定有效服务器:警告无法确定任何 DNS 服务器。反向 DNS 已禁用。尝试使用 --system-dns 或使用 --dns-servers 指定有效的服务器 和相同的行,但在 Term 中有输出。问题是我想将设备的 ip 与开放端口保留在 var... 您的/etc/resolv.conf 配置是否正确,比如说它包含至少一个有效的DNS 服务器?尝试使用 nmap 的 -n 开关,永久禁用任何(反向)DNS 查找。 将设备的 IP 保存在变量中 是什么意思?你的目标是什么?【参考方案2】:

试试这个

nmap --open -p80 192.168.0.*

--open 只会列出开放了 80 端口的主机。这样您就不必检查您的 shell 脚本,因为过滤已经由 nmap 本身完成。

https://nmap.org/book/man-briefoptions.html

【讨论】:

我不得不引用这个 IP 地址掩码,但它起作用了 - nmap --open -p80 "192.168.0.*"

以上是关于如何使用 nmap 确定给定范围内的哪些 IP 具有端口 80?的主要内容,如果未能解决你的问题,请参考以下文章

Java - 打印给定范围内的随机 IP 地址

如何通过nmap端口扫描漏洞入侵别人电脑

nmap的简单使用

扫描技术概述与nmap使用

七.Excel统计函数

nmap扫描网段内的所有IP