Mogę wąchać ruch mojego lokalnego komputera, ale chciałbym wiedzieć, jak mam wąchać ruch komputera zdalnego przez Wireshark?
W opcji przechwytywania wybieram interfejs zdalny i wprowadzam mój zdalny adres ip pokaż mi kod błędu (10061). Co powinienem zrobić?
Odpowiedzi:
W systemach Linux i OSX można to osiągnąć, uruchamiając tcpdump przez ssh i słuchając wireshark na potoku.
Utwórz nazwaną potok:
$ mkfifo /tmp/remote
Uruchom wireshark z wiersza poleceń
$ wireshark -k -i /tmp/remote
Uruchom tcpdump przez ssh na zdalnym komputerze i przekieruj pakiety do nazwanego potoku:
$ ssh root@firewall "tcpdump -s 0 -U -n -w - -i eth0 not port 22" > /tmp/remote
Źródło: http://blog.nielshorn.net/2010/02/using-wireshark-with-remote-capturing/
źródło
ssh root@{MY_VPS_IP} -p 27922 "tcpdump -s 0 -U -n -w - -i eth0 not port 27922" > /tmp/remote
czy możesz mi powiedzieć dlaczego?Używam tego oneliner jako root. Jest bardzo przydatny!
ssh root@sniff_server_ip -p port tcpdump -U -s0 'not port 22' -i eth0 -w - | wireshark -k -i -
Ostatni
-
przed de|
jest przekierowaniem tego wyjścia i służy do standardowego wprowadzania danych przez wireshark.-k
Opcja w środkach Wireshark „start inmidiately wąchaniaźródło
Jednym z podejść jest użycie na przełączniku portu lustrzanego lub rozpiętego . Jeśli twój przełącznik nie jest wystarczająco inteligentny, możesz także umieścić mały hub pomiędzy przełącznikiem / hostem do przechwytywania. Połączysz fizyczne łącze z hosta nasłuchującego z tym portem / hubem, a następnie zobaczysz cały ruch przechodzący przez urządzenie. Możesz też zainstalować oprogramowanie do przechwytywania pakietów w bardziej strategicznym miejscu w sieci, takim jak firewall / router graniczny.
źródło
Możesz użyć deskryptora pliku, aby połączyć się z pakietami i odebrać je
ssh
oraz przesłać potokiem do lokalnego portu wireshark:wireshark -i <(ssh root@firewall tcpdump -s 0 -U -n -w - -i eth0 not port 22)
Wireshark otworzy się i wyświetli „interfejs” podobny
/dev/fd/63
do deskryptora pliku zawierającego dane ze zdalnego systemu.źródło
zobacz informacje na temat konfigurowania komputera zdalnego, aby umożliwić połączenie komputera lokalnego i przechwytywanie
http://wiki.wireshark.org/CaptureSetup/WinPcapRemote
źródło
Pod RHEL odpowiedź konrada nie działała dla mnie, ponieważ
tcpdump
wymaga rootowania, a ja mam tylko dostęp do sudo. To, co zadziałało, to stworzenie dodatkowego zdalnego fifo, z którego mogę czytać:i wyślij dane osobnym połączeniem:
i wreszcie uruchom Wireshark
źródło
Możesz wąchać tylko ruch, który trafia do Ciebie. Więc Joe A idąc do Joe B nigdy nie zbliża się do twojego komputera, więc go nie widzisz.
Jedynym sposobem jest dotarcie do ruchu lub dotarcie do Ciebie. Aby dostać się do ruchu, wymagane jest połączenie z routerem lub dobrym przełącznikiem lub koncentratorem gdzieś pośrodku połączenia. Aby uzyskać ruch do ciebie, musisz zatruć niektóre przełączniki ARP, aby myśleli, że to oni.
źródło
Oprócz poprzednich odpowiedzi
nc
przydatna może być również wersja z netcat :Zdalny host:
mkfifo /tmp/mypcap.fifo
tcpdump -i em0 -s 0 -U -w - > /tmp/mypcap.fifo
nc -l 10000 < /tmp/mypcap.fifo
Lokalny Gospodarz:
wireshark -ki <(nc 192.168.1.1 10000)
Uwaga na temat tej metody: sprawia, że niezabezpieczony port jest otwarty na wszystkie interfejsy, więc należy filtrować połączenia przychodzące za pomocą reguł zapory.
źródło