如何用wireshark嗅探远程机器的stream量?

我可以嗅闻我的本地电脑的stream量,但我想知道如何通过wireshark嗅探远程机器的stream量?

在捕获选项时,我select远程接口,并input我的远程ip show me error.code(10061)。 我该怎么办?

    在Linux和OSX上,您可以通过在ssh上运行tcpdump并让wireshark在pipe道上监听来实现此目的。

    1. 创build一个命名pipe道:

      $ mkfifo /tmp/remote

    2. 从命令行启动wireshark

      $ wireshark -k -i /tmp/remote

    3. 在远程计算机上通过ssh运行tcpdump并将数据包redirect到命名pipe道:

      $ 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/

    一种方法是在交换机上使用所谓的镜像或跨接端口 。 如果您的交换机不够智能,您也可以在交换机/主机到捕获连接之间插入一个小型集线器。 您从监听主机连接到该端口/集线器的物理链路,然后您可以看到穿过该设备的所有通信。 或者,您需要将您的数据包捕获软件安装在networking中更为重要的位置,如边界防火墙/路由器。

    我使用这个oneliner作为根。 非常有用!

    ssh root@sniff_server_ip -p port tcpdump -U -s0 'not port 22' -i eth0 -w - | wireshark -k -i -

    最后-在de |之前 是该输出的redirect,并用于wireshark的标准input。 wireshark中的-k选项表示“开始不中用嗅探

    您可以使用文件描述符通过ssh连接和接收数据包,并将其传送到wireshark本地:

    wireshark -i <(ssh root@firewall tcpdump -s 0 -U -n -w - -i eth0 not port 22)

    wireshark会打开并显示“接口”,如/dev/fd/63 ,这是包含远程系统数据的文件描述符。

    请参阅有关设置远程计算机的信息,以允许本地计算机进行连接和捕获

    http://wiki.wireshark.org/CaptureSetup/WinPcapRemote

    你只能嗅探到你的stream量。 所以Joe A去Joe B不会靠近你的电脑,所以你看不到它。

    唯一的办法是让你去交通或获得交通给你。 要获得stream量,需要连接到路由器或连接中间某个位置的交换机或集线器。 要获得stream量给你,你需要ARP毒化一些交换机,所以他们认为你的。

    在RHEL下,konrad的答案不适用于我,因为tcpdump需要root用户,而且我只有sudo访问权限。 什么工作是创build一个额外的远程前锋,我可以读:

     remote:~$ mkfifo pcap remote:~$ sudo tcpdump -s 0 -U -n -w - -i eth0 not port 22 > pcap 

    并通过单独的连接发送数据:

     local:~$ mkfifo pcap local:~$ ssh user@host "cat pcap" > pcap 

    最后启动Wireshark

     local:~$ wireshark -k -i pcap