如何在 Linux 上审核超过一定流量或带宽的网络连接?

gro*_*wse 5 linux monitoring audit

我一直在照看一些 Debian 机器,偶尔我会看到网络流量出现大幅飙升。我正在用石墨绘制指标(由每分钟收集每个接口指标的 sensu 检查提供),偶尔会看到这样的事情:

我不知道是什么导致了这种情况,因为在它进行时我从来没有设法抓住它。找出导致这种情况的原因会很好,那么尝试找出这可能是什么的最佳方法是什么?

我想我真正想要的是:如果发送/接收的数据量超过一定数量或速率,是否有办法审核网络连接(和进程 ID/名称)?

daw*_*wud 6

您可以使用 轻松跟踪每个进程的网络统计信息nethogs有一个用于 Debian 的预编译包

它的工作原理类似于top

NetHogs version 0.8.0

  PID USER     PROGRAM                             DEV        SENT        RECEIVED
11951 dawud    /usr/lib64/firefox/firefox          p5p1       4.682       5.502 KB/sec
1145  tomcat   java                                p5p1       0.313       0.560 KB/sec
12411 dawud    /usr/lib64/firefox/plugin-container p5p1       0.027       0.013 KB/sec

TOTAL                                                         5.022       6.075 KB/sec
Run Code Online (Sandbox Code Playgroud)

检查其联机帮助页以获取更多选项。


dmo*_*ati 2

我会修改您的 sensu (nagios?)插件以运行 ps 或 top 命令并将输出转储到本地文件。然后返回并将峰值与 ps/top 输出相关联,以弄清楚发生了什么。

如果您不想或无法进行更改,请查看saratop

编辑:下一个想法,运行 tcpdump,然后查看wireshark中的流量。