温馨提示×

Debian dumpcap怎么配置

小樊
45
2026-08-21 12:26:02
栏目: 智能运维

在 Debian 系统上配置和使用 dumpcap(Wireshark 的命令行抓包工具),通常涉及 安装、权限配置、抓包选项 等几个方面。下面按常见使用场景一步步说明。


一、安装 dumpcap

dumpcap 属于 wireshark-common 包:

sudo apt update
sudo apt install wireshark-common

安装完成后,可执行文件一般在:

/usr/bin/dumpcap

检查版本:

dumpcap --version

二、配置普通用户抓包权限(重点)

默认情况下,只有 root 才能抓包。推荐做法是使用 dumpcap 的 capabilities,而不是用 sudo

方法 1:使用 setcap(推荐 ✅)

sudo setcap cap_net_raw,cap_net_admin=eip /usr/bin/dumpcap

验证:

getcap /usr/bin/dumpcap

输出应类似:

/usr/bin/dumpcap = cap_net_admin,cap_net_raw+eip

然后 普通用户即可直接抓包

dumpcap -i eth0

方法 2:加入 wireshark 用户组(传统方式)

sudo usermod -aG wireshark $USER

然后 重新登录或重启

检查:

groups

如果看到 wireshark,说明成功。

⚠️ 某些 Debian 版本中,这种方式不如 setcap 稳定。


三、dumpcap 基本配置与常用参数

1️⃣ 查看可用网卡

dumpcap -D

输出示例:

1. eth0
2. wlan0
3. lo

2️⃣ 抓包并保存为 pcap 文件

dumpcap -i eth0 -w /tmp/test.pcap

常用参数说明:

参数 说明
-i 指定网卡
-w 保存文件
-c 抓包数量
-s 快照长度
-b 环形缓冲区
-f 抓包过滤(BPF)

3️⃣ 限制包大小(推荐)

dumpcap -i eth0 -s 96 -w /tmp/test.pcap

-s 96 表示只抓前 96 字节,减少磁盘占用。


4️⃣ 限制抓包数量

dumpcap -i eth0 -c 1000 -w /tmp/test.pcap

5️⃣ 使用 BPF 过滤器

dumpcap -i eth0 -f "tcp port 80" -w http.pcap

四、dumpcap 环形缓冲(日志类抓取)

非常适合长时间抓包:

dumpcap -i eth0 \
  -w /var/log/pcap/trace.pcap \
  -b filesize:10000 \
  -b files:50

含义:

  • 每个文件最大 10MB
  • 最多保存 50 个文件
  • 自动覆盖旧文件

五、dumpcap 与 Wireshark 的关系

  • dumpcap:底层抓包工具(权限要求高)
  • tshark / wireshark:分析工具
  • 通常流程:
dumpcap 抓包 → .pcap 文件 → tshark / wireshark 分析

六、常见问题排查

❌ 没有权限抓包

Couldn't open device: Permission denied

✅ 解决:

sudo setcap cap_net_raw,cap_net_admin=eip /usr/bin/dumpcap

❌ dumpcap 不存在

sudo apt install wireshark-common

❌ 抓不到包

  • 确认网卡不是 down
  • 是否使用了正确的接口
  • 是否在交换机镜像口 / 云环境(可能有限制)

七、示例:完整抓包命令

dumpcap \
  -i eth0 \
  -s 96 \
  -c 100000 \
  -f "not port 22" \
  -w /tmp/capture.pcap

如果你有 具体需求(比如:

  • 抓 HTTPS / QUIC
  • 多网卡
  • 服务器长期抓包
  • 容器 / Docker 环境
  • 与 systemd / cron 配合)

可以告诉我,我可以给你定制配置方案。

0