如何判断哪个进程在 Linux 上打开了特定端口?

jnm*_*man 32 networking linux

我在我的服务器上运行 nmap 并发现一个奇怪的端口打开了。我想弄清楚是否有办法将该端口映射到特定进程,但不知道是否有这样的工具。

有什么建议?

bjt*_*tus 57

除了在其他帖子中提到的 Netstat 之外,lsof 命令应该能够很好地做到这一点。只需使用这个:

lsof -i :<port number>

并且所有流程都应该出现。我经常在 OS X 上使用它。

lsof 的 Debian 管理文章

  • 这确实是一个rootkit。我以前见过这种行为,它*总是*一个rootkit。您的系统受到威胁,您使用的任何工具都无法信任。启动到 Live CD(其中包含只读受信任的二进制文件)并使用它来提取您的数据、设置等。您拥有的任何程序、您拥有的任何脚本,放弃它们。不要带它们。把系统当作麻风病来对待,因为它/确实/。完成后,从轨道上对其进行核弹。尽快执行此操作。哦,拔掉您的网络连接 - 拒绝您的攻击者访问。 (6认同)
  • 如果 netstat 和 lsof 都没有显示正在使用的端口,但机器正在响应它,则可能安装了 root 工具包。我建议将任何数据从机器上移到其他地方,然后对其进行核处理。 (4认同)

Ave*_*yne 23

警告:您的系统已被入侵。

您需要的工具是lsof,它将列出文件(以及套接字和端口)。它很可能已安装,而且很可能是攻击者的版本,这意味着它会你。

这确实是一个rootkit。我以前见过这种行为,它总是一个rootkit。您的系统受到了威胁,您使用的任何来自同一台机器的工具都无法信任。启动到 Live CD(具有只读受信任的二进制文件)并使用它来提取您的数据、设置等。您拥有的任何程序、您拥有的任何脚本,放弃它们不要带它们。对待他们和系统,就像他们患有麻风病一样,因为他们确实如此

完成后,将其从轨道上核弹

游戏结束人,游戏结束。

尽快执行此操作。哦,拔掉您的网络连接 - 拒绝您的攻击者访问。

  • 在你[跳到那个结论]​​(https://www.youtube.com/watch?v=uxuTyXQHqkI) 之前,对于意外的端口打开还有其他可能的解释;例如您安装但忘记的软件包。 (6认同)
  • 只是补充:确保您知道入侵的日期,因为您可能正在恢复刚刚删除的同一个 rootkit。否则,是的,从/之前/那个日期恢复。 (2认同)

Joe*_*Joe 14

sudo netstat -lnp  
Run Code Online (Sandbox Code Playgroud)

列出侦听传入连接的端口以及打开该端口的关联进程。