如何列出为网页提供服务的每个端口

chr*_*654 4 shell shell-script http https netstat

我有许多服务器,所有服务器都具有可通过各种端口访问的各种 HTTP(S) 服务。跟踪哪些服务在哪个主机和哪个端口上可用是非常困难的。通常我只是依赖我的浏览器历史记录。

是否有一些 shell 命令(netcat 的某些变体)或脚本可以从给定的服务器列出为网页提供服务的每个端口?或者每个端口都使用 HTTP 或 HTTPS?

Joh*_*ohn 5

一个特定的脚本,不,但是有一种方法可以获取该信息。可能有几种方法。我将从 开始netstat -tuln,它将告诉您哪些端口具有与其关联的侦听服务。然后,您可以查看一些信息,例如fuser -n tcp <port num>告诉哪些 PID 正在侦听给定端口,然后端口可以告诉您哪个守护进程/进程与该 PID 关联。

不过,严肃地说,你最好一次性解决这个问题,然后成为一个彻头彻尾的混蛋,确保它的文档保持最新,无论这意味着打败自己还是打败别人——反复地——四分之 一的线索。

  • 至少使用 GNU `netstat` 你可以使用 `-p` 让它显示正在使用端口的 PID/进程名称 (2认同)