我可以嗅探本地电脑的流量,但我想知道如何通过wireshark嗅探远程机器的流量?
在捕获选项中,我选择远程接口并输入我的远程 ip 显示 error.code(10061)。我该怎么办?
kon*_*rad 65
在 Linux 和 OSX 上,您可以通过在 ssh 上运行 tcpdump 并让 wireshark 监听管道来实现这一点。
创建命名管道:
$ mkfifo /tmp/remote
从命令行启动wireshark
$ wireshark -k -i /tmp/remote
在远程机器上通过 ssh 运行 tcpdump 并将数据包重定向到命名管道:
$ ssh root@firewall "tcpdump -s 0 -U -n -w - -i eth0 not port 22" > /tmp/remote
来源:http : //blog.nielshorn.net/2010/02/using-wireshark-with-remote-capturing/
小智 33
我使用这个 oneliner 作为 root。非常有用!
ssh root@sniff_server_ip -p port tcpdump -U -s0 'not port 22' -i eth0 -w - | wireshark -k -i -
-de 之前的最后一个|是该输出的重定向,用于wireshark 的标准输入。-kwireshark 中的选项意味着“立即开始嗅探
小智 6
您可以使用文件描述符来连接和接收数据包,ssh并将其通过管道传输到本地的wireshark:
wireshark -i <(ssh root@firewall tcpdump -s 0 -U -n -w - -i eth0 not port 22)
您的wireshark将打开并向您显示“接口”,例如/dev/fd/63,它是包含来自远程系统的数据的文件描述符。
小智 5
在 RHEL 下,konrad 的答案对我不起作用,因为tcpdump需要 root,而我只有 sudo 访问权限。所做的工作是创建一个额外的远程 fifo,我可以从中读取:
remote:~$ mkfifo pcap
remote:~$ sudo tcpdump -s 0 -U -n -w - -i eth0 not port 22 > pcap
Run Code Online (Sandbox Code Playgroud)
并通过单独的连接发送数据:
local:~$ mkfifo pcap
local:~$ ssh user@host "cat pcap" > pcap
Run Code Online (Sandbox Code Playgroud)
最后启动Wireshark
local:~$ wireshark -k -i pcap
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
109738 次 |
| 最近记录: |