当我在 Mac 上运行“top”并按端口使用情况排序时,Adobe Creative Cloud 是最大的端口用户,使用的端口数量是 launchd 的十倍,后者是端口使用率排名第二的竞争者。应用程序代码是否遵循最佳实践来保护每个端口?
答案1
在 TCP 中,使用端口并不会自动使您容易受到端口扫描的攻击。接受连接到该端口。如果程序不监听传入连接而只进行传出连接,则操作系统将拒绝所有与现有连接不匹配的数据包。
(在 中netstat -a
,等待接收 TCP 连接的套接字处于“侦听”状态。对于无状态的 UDP,很难分辨。)但无论如何,如果程序做监听连接,通常你的家用路由器和/或操作系统带有防火墙,可以阻止它们,所以这不是即时担心。
但这不是重点,因为苹果系统top
实际上并没有显示 TCP/IP 端口。(这几乎是一个毫无意义的统计数据。)它显示的是马赫端口——同一台计算机上的 macOS 软件内部使用的 IPC 原语,而不是通过网络使用。
答案2
您指的是#PORT
OSX 上的顶部列吗?
那代表正在运行的进程打开了 mach 端口,这些端口是内核级别的进程间通信端口,而不是网络上的监听端口。
尝试运行sudo lsof -PiTCP -sTCP:LISTEN
以查看您的 Mac 上哪些端口正在主动监听。我认为您不会找到 27000