使用 Open_Ports 查看 Mac OS X 中所有打开的网络连接

在 Mac 桌面上显示开放端口

您可以使用名为 open_ports.sh 的免费命令行实用程序来查看所有打开的网络连接以进行传入和传出传输。 Open_Ports 比使用 lsof 更有用列出打开的互联网连接,因为它以一种非常易于阅读的格式提供了大量的网络信息,包括打开连接的程序或进程、哪个端口和用户、每个进程的连接数、连接到的主机名,国家,甚至城市。

此外,open_ports 会向您显示所有侦听连接的开放端口,同样包含有关应用程序、用户、端口号和名称,甚至服务 IP 范围的信息。所有的输出都是彩色编码的,红色背景表示进程属于root,红色文本表示IP地址不对应域名,蓝色表示IP匹配多个域名,绿色文本表示协议是加密。

安装需要一些命令行的经验,但如果您想要这样的应用程序,那很可能不会成为一个问题。我们开始了……

在 Mac OS X 中安装 Open_Ports

这些是直接来自瑞典隆兹大学的开发人员页面的安装说明,它们已验证可在 Mac OS X 10.6.8 中工作:

警告:这是一个以 root 身份运行的 bash 脚本,它会从网络上下载其他脚本。这有明显的潜在安全问题,如果您对此不满意或者您处于脆弱的网络环境中,则不建议使用。该脚本按预期工作,如果需要,您可以自己验证 bash 脚本的来源,但如果您对以 root 身份运行第三方脚本有任何疑问或犹豫,那么您可能需要使用替代方法来观察打开的连接, 例如使用 lsof .自行承担风险。


  1. http: //fileadmin.cs.lth.se/cs/Personal/Peter_Moller/scripts/open_ports_install.sh
  2. 启动一个终端
  3. 成为 root:如果您是普通用户,请输入 sudo adminusernamne 如果您是管理员用户,则输入 sudo -i,输入 sudo -i
  4. 设置安装脚本的访问权限:
    chmod 755 open_ports_install.sh(您必须找到它)
  5. 运行脚本:
    ./open_ports_install.sh
  6. 安装通常很快。对于 Linux,仅此而已。在 Mac 上打开 GeekTool。要安装它,请双击它的 .PrefPane
  7. 在 GeekTool 中:单击名为“Shell”的图标并将其拖到桌面的空白部分(必须没有窗口)。也调整大小。
  8. “属性”窗口打开。您需要输入的是:
    • 命令:open_ports.sh
    • 刷新间隔:120 秒
    • 将字体更改为等宽字体(我使用的是 Menlo 和白色字体颜色)
  9. 现在你可以关闭GeekTool

open_ports 的另一个优点是 Mac OS X 版本专为在 GeekTool 中使用而构建,因此您可以在 Mac 桌面上显示输出。如果你打算通过 GeekTool 使用它,我建议使用更简单的背景图片,否则文本很难阅读,这是它与 OS X Lion Galaxy 壁纸

在 Mac OS X 桌面上显示打开的网络连接

如果您想从 Mac OS X 中卸载所有 open_ports,请以 root 身份使用以下命令:
launchctl stop se.lth.cs.open_ports

launchctl 卸载 /Library/LaunchDaemons/se.lth.cs.open_ports.plist

然后你可以删除脚本:
rm -rf /usr/bin/open_ports.sh (脚本)

rm -rf /Library/LaunchDaemons/se.lth.cs.open_ports.plist(收集控件)

rm -rf /Library/cs.lth.se/OpenPorts(数据文件)

如果您想知道,还有一个 Linux 版本可用。我在 MacWorld 上看到了这个很棒的实用程序,但 MacWorld 并没有实际测试脚本来验证它有效,但我可以确认它确实有效。