답변:
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
왜 그런지 말해 줄 수 있습니까?
한 가지 방법은 스위치에 미러 또는 스팬 포트 를 사용하는 것 입니다. 스위치가 충분히 지능적이지 않은 경우 스위치 / 호스트-캡처 연결 사이에 작은 허브를 넣을 수도 있습니다. 청취 호스트에서 해당 포트 / 허브로의 물리적 링크를 연결하면 장치를 통과하는 모든 트래픽을 볼 수 있습니다. 또는 경계 방화벽 / 라우터와 같이보다 전략적인 네트워크 위치에 패킷 캡처 소프트웨어를 설치해야합니다.
로컬 컴퓨터가 연결하고 캡처 할 수 있도록 원격 컴퓨터 설정에 대한 정보를 참조하십시오.
RHEL에서 konrad의 대답은 tcpdump
루트가 필요 하기 때문에 저에게 효과가 없었으며 sudo 액세스 권한 만 있습니다. 내가 일한 것은 내가 읽을 수있는 여분의 원격 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