在这篇简短的文章中,您将学习如何在Linux服务器上的HTTP或HTTPS端口上找到所有连接到Apache或Nginx Web服务器的客户端(使用其IP地址)。
在Linux中,服务器上运行的每个服务都在侦听客户端的套接字以发出连接请求。 从客户端成功连接后,将创建套接字(IP地址和端口的组合(标识客户端连接到的应用程序/服务的数字))。
为了获得这些套接字的详细信息,我们将使用ss命令行工具,该工具用于在Linux机器上显示与网络套接字相关的信息。 您也可以使用较旧的netstat命令,该命令显示活动的套接字连接。
例如,您可以使用这些工具来获取连接到特定端口或服务的所有客户端的套接字统计信息。
# ss
或者
# netstat
要获取连接到HTTP(端口80)或HTTPS(端口443)的所有客户端的列表,可以使用ss命令或netstat命令,它们将列出所有连接(无论它们处于何种状态),包括UNIX套接字统计信息。 。
# ss -o state established '( sport = :http or sport = :https )'
或者
# netstat -o state established '( sport = :http or sport = :https )'
或者,您可以运行以下命令以列出数字端口号。
# ss -tn src :80 or src :443
或者
# netstat -tn src :80 or src :443