Linux:获取本地端口的所有连接调用

Linux:获取本地端口的所有连接调用

我有一个 ssh 隧道,客户端通过它连接到服务器。使用,wireshark我可以看到除了 keepalive 之外的定期 SSH 连接,但我无法获取pid导致此流量的进程 ()。

我使用了ss -ntap -o state all '( dport = :22 )'while 循环,但它只捕获来自监听的keepalive本地端口的连接。ssh

 tcp        0      0 192.168.132.126:52998   10.10.100.102:22 \
 ESTABLISHED 0          10619644   8875/ssh

如何获取导致此连接产生流量的进程 ID ssh?换句话说,如何获取为此发起的所有连接调用10.10.100.102:22

答案1

又快又脏。

  1. 用于iptables -A INPUT ... -j DROP暂时丢弃发往本地端口的数据包。
  2. 然后sleep 10
  3. 聚集起来ss -antp,你的联系人很可能会在那里(我认为)保持地位SYN
  4. 然后重新加载 iptables 防火墙以恢复所有更改。
  5. TCP 重传机制将导致挂起的连接继续。它们只会被延迟。

相关内容