Linux

如何找出客戶端連接到redhat linux中的代理伺服器

  • November 19, 2019

有沒有辦法找出連接到 redhat linux 中特定代理伺服器的客戶端機器,我使用的是 redhat linux 版本 6 並在其中配置了 squid

如果 Squid 正在偵聽埠,比如 3128,您可以使用netstat伺服器中的命令列出所有連接到該埠的 IP 地址。

例如:

netstat -na | grep :3128

將顯示如下內容:

tcp        0      0 0.0.0.0:3128            0.0.0.0:*               LISTEN
tcp        1      0 10.12.0.1:3128          10.12.3.60:53736        CLOSE_WAIT
tcp        1      0 10.12.0.1:3128          10.12.4.24:60545        CLOSE_WAIT
tcp        1      0 10.12.0.1:3128          10.12.4.13:50484        ESTABLISHED
tcp        1      0 10.12.0.1:3128          10.12.3.55:52669        ESTABLISHED

您可以忽略第一行,它顯示 squid 服務的預設偵聽。對於其餘行,第 4 行是本地伺服器 ip,第 5 行列出了遠端端點(連接到代理的客戶端)。在第 6 列可以看到 tcp 連接狀態。ESTABLISHED表示目前處於活動狀態的連接。

您只能列出已建立的連接:

netstat -na | grep :3128 | grep ESTABLISHED

您可以使用不帶-n選項的命令來顯示主機名,而不是 IP 地址。

netstat -a | grep :3128 | grep ESTABLISHED

引用自:https://serverfault.com/questions/754004