回答:
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/
ssh root@{MY_VPS_IP} -p 27922 "tcpdump -s 0 -U -n -w - -i eth0 not port 27922" > /tmp/remote
理由を教えてください。
1つのアプローチは、スイッチでミラーポートまたはスパンポートと呼ばれるものを使用することです。スイッチのインテリジェンスが不十分な場合は、スイッチ/ホストからキャプチャへの接続の間に小さなハブを配置することもできます。リスニングホストからそのポート/ハブに物理リンクを接続すると、デバイスを通過するすべてのトラフィックを確認できます。または、パケットキャプチャソフトウェアを、境界ファイアウォール/ルーターなどのネットワーク内のより戦略的な場所にインストールする必要があります。
ローカルコンピューターが接続してキャプチャできるように、リモートコンピューターのセットアップに関する情報を参照してください。
RHELでは、tcpdump
rootが必要であり、sudoアクセスしかできないため、konradの答えはうまくいきませんでした。動作したのは、読み取り可能な追加のリモートfifoを作成することでした。
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