网站搜索

如何查找连接到 HTTP 或 HTTPS 端口的所有客户端


在这篇简短的快速文章中,您将了解如何查找通过 HTTP 连接到 ApacheNginx Web 服务器的所有客户端(使用其 IP 地址) > 或 Linux 服务器上的 HTTPS 端口。

在Linux中,服务器上运行的每个服务都会侦听套接字以供客户端发出连接请求。客户端成功连接后,将创建一个套接字(IP 地址和端口(标识客户端所连接的应用程序/服务的数字)的组合)。

推荐阅读:如何实时观察 TCP 和 UDP 端口

为了获取这些套接字的详细信息,我们将使用一个 ss 命令行工具,该工具用于在 Linux 机器上显示网络套接字相关信息。您还可以使用旧的 netstat 命令,它显示活动的套接字连接。

例如,您可以使用这些工具来获取连接到特定端口或服务的所有客户端的套接字统计信息。

ss
OR
netstat

要获取连接到 HTTP(端口 80)或 HTTPS(端口 443)的所有客户端的列表,您可以使用 ss 命令或 netstat 命令,这将列出所有连接(无论它们处于什么状态),包括 UNIX 套接字统计信息。

ss -o state established '( sport = :http or sport = :https )'
OR
netstat -o state established '( sport = :http or sport = :https )'

或者,您可以运行以下命令来列出数字端口号。

ss -tn src :80 or src :443
OR
netstat -tn src :80 or src :443

您可能还会发现以下文章很有用:

  1. 找出 Linux 中正在监听的端口的 4 种方法
  2. 如何使用“nc”命令检查远程端口是否可达

这就是这篇短文中的全部内容。有关 ss 实用程序的更多信息,请阅读其手册页 (man ss)。如有任何问题,您可以通过下面的评论表联系我们。