我想使用 Wireshark 从远程服务器捕获数据包。我有一台基于 Linux 的服务器,我可以通过 Putty 访问它。此远程服务器不在我的网络上。我如何使用 Wireshark 从我家访问远程服务器数据包,尤其是 MQTT 协议?
我使用了远程 SSH 配置,但似乎无法捕获数据。
答案1
您可以在远程服务器上运行 wireshark(例如通过 ssh)并将结果传回您的机器以方便使用。
例如本文有一个例子:- 我将在远程机器上运行捕获,将结果传输到本地 wireshark,您可以在其中以漂亮的 GUI 形式看到结果。ssh [email protected] 'tshark -f "port !22" -w -' | wireshark -k -i -
答案2
类似于@rvs 的回答:
ssh [email protected] sudo tcpdump --dont-verify-checksums -i any -U -s0 -w - 'port 1883 and src 192.168.0.22' | wireshark -k -i -
差异:
- 利用
sudo
- 使用
tcpdump
而不是tshark
请注意:您必须tcpdump
在您的“服务器”上安装。
是否可以用同样的方式捕获远程服务器中的环回接口?
是的,看到参数了吗-i any
?-->任何接口