首页/安全/取证与溯源速查/主机侧抓包与环形留存
Linux 取证135 条

主机侧抓包与环形留存

现场抓包能补上日志没有的网络事实:指定快照长度、写入文件并用环形命名控制体积,便于长时间留存。

取证与溯源速查安全更新于 2026-10-13

主机侧抓包与环形留存

主机侧抓包能补上日志里没有的网络事实:日志只记录应用层的成功或失败,抓包能看到实际发出的报文、重传与连接尝试。现场使用 tcpdump 时要控制三件事:抓取长度、文件体积与运行权限。指定 -s 0 抓完整报文,用 -C 与 -W 做环形留存,用 -Z 让抓包进程降权运行,避免长时间抓包把磁盘写满。

基本信息

基本命令tcpdump -i any -s 0 -w <输出文件>
体积控制-C 指定单文件大小(MB)、-W 指定保留文件数,超限覆盖最旧文件
运行权限-Z 指定降权用户,降低抓包带来的权限风险
离线分析tcpdump -r 回放,或导入分析工具做流重组
过滤表达式按主机、端口与协议限定范围,减少无关流量

典型使用场景

  • 确认主机是否真的向某个地址发出过请求
  • 现场留取一段时间窗内的原始流量作为旁证
  • 排查应用日志与网络层面的事实是否一致
  • 分析明文协议的交互内容与会话先后顺序
  • 上线监测前估算流量规模,评估磁盘与性能开销

抓包与回放

抓包与回放
ip -s link show eth0                                          # 抓包前先看接口流量规模
tcpdump -i any -s 0 -w /mnt/ev/cap.pcap -C 100 -W 20 -Z root   # 环形留存,控制体积
tcpdump -i eth0 -nn 'tcp port 443 and host 203.0.113.10'      # 限定条件下的实时观察
tcpdump -r /mnt/ev/cap.pcap -nn 'tcp port 443' | head         # 离线回放
ls -lh /mnt/ev/cap.pcap*                                       # 确认环形文件与各文件体积

常用选项

选项作用注意点
-i 接口指定抓包接口,any 表示全部any 会丢失部分链路层信息
-s 0按完整长度抓取报文全量抓包体积增长很快
-C 与 -W按大小轮转并限制文件数超限覆盖最旧文件,需先预估留存时长
-Z 用户抓包进程降权运行降低抓包引入的权限风险
-nn不做名称解析减少解析开销与额外查询
抓包会占用磁盘与 CPU,上线前先估算流量规模与留存时长,再决定单文件大小与文件数量。抓包文件的时间范围要登记清楚,否则事后无法确定某段流量落在哪一个文件里。
PCAP 中可能包含明文口令、会话凭据与个人数据,应按敏感证据管理:限定存放位置、控制访问权限、记录每一份副本的去向,对外提交前做必要的脱敏处理。

易错点

  • 不限制文件大小与数量,长时间抓包写满证据盘
  • 使用默认抓取长度截断报文,后续无法还原完整内容
  • 抓包文件命名与时间范围未登记,事后无法定位对应时段
  • 忽略 PCAP 中的敏感数据,未按证据密级管理

数据来源与参考

  • tcpdump 官方文档(man 8 tcpdump)
​‌‌​​‌​​​‌‌​‌‌‌‌​‌‌​​​‌‌​‌‌‌​​‌‌​​‌​‌‌‌​​‌‌‌​​​‌​‌‌​‌​​‌​‌‌‌​​​‌​‌‌​‌​​‌​‌‌​​​‌‌​‌‌‌​‌​​​‌‌​‌‌‌‌​​‌​‌‌‌​​‌‌​​​‌‌​‌‌​‌‌‌‌​‌‌​‌‌​‌