dumpcap是Wireshark套件中的一个命令行抓包工具,可以用于远程抓包。以下是几种远程抓包的方法:
ssh username@remote_host "dumpcap -i eth0 -w -" > local_file.pcap
这条命令会: 1. 通过SSH连接到远程主机 2. 在远程主机上执行dumpcap抓取eth0接口的数据 3. 将输出(-w -)通过SSH隧道传回本地 4. 保存为本地文件local_file.pcap
dumpcap支持通过TCP连接远程捕获:
# 在远程主机上启动dumpcap服务器
dumpcap -i eth0 -w - -P | nc -l -p 2000
# 在本地连接并保存抓包
nc remote_host 2000 > remote_capture.pcap
# 在远程主机上
mkfifo /tmp/remote_pipe
dumpcap -i eth0 -w /tmp/remote_pipe
# 在本地主机上
ssh username@remote_host "cat /tmp/remote_pipe" > local_capture.pcap
虽然这不是纯dumpcap方法,但Wireshark GUI可以方便地配置远程捕获:
-b
选项设置环形缓冲区-f
选项设置捕获过滤器减少数据量ssh username@remote_host "dumpcap -i eth0 -f 'port 80' -w -" > http_traffic.pcap
这个例子只捕获远程主机上eth0接口的HTTP流量(端口80)。