W każdej sieci z komutacją pakietów, pakiety reprezentują jednostki danych, które są przesyłane między komputerami. Do obowiązków inżynierów sieciowych i administratorów systemu należy monitorowanie i sprawdzanie pakietów w celu zapewnienia bezpieczeństwa i rozwiązywania problemów.
W tym celu korzystają oni z programów nazywanych analizatorami pakietów sieciowych, przy czym Wireshark jest prawdopodobnie najpopularniejszy i najczęściej używany ze względu na swoją wszechstronność i łatwość użycia. Na dodatek Wireshark pozwala nie tylko monitorować ruch w czasie rzeczywistym, ale także zapisywać go do pliku w celu późniejszego sprawdzenia.
Related Read: Best Linux Bandwidth Monitoring Tools to Analyze Network Usage
W tym artykule podzielimy się 10 wskazówkami, jak używać Wiresharka do analizowania pakietów w sieci i mamy nadzieję, że kiedy dotrzesz do sekcji Podsumowanie, poczujesz chęć dodania go do zakładek.
- Instalacja Wiresharka w Linuksie
- Setting Capture Options
- WSKAZÓWKA #1 – Inspect HTTP Traffic
- TIP #2 – Inspect HTTP Traffic from a Given IP Address
- TIP #3 – Inspect HTTP Traffic to a Given IP Address
- Wskazówka #4 – Monitorowanie ruchu sieciowego Apache i MySQL
- WSKAZÓWKA #5 – Odrzucanie pakietów na dany adres IP
- TIP #6 – Monitorowanie ruchu w sieci lokalnej (192.168.0.0/24)
- TIP #7 – Monitorowanie zawartości konwersacji TCP
- Wskazówka #8 – Edycja reguł kolorowania
- TIP #9 – Save the Capture to a File
- TIP #10 – Practice with Capture Samples
- Podsumowanie
Instalacja Wiresharka w Linuksie
Aby zainstalować Wiresharka, wybierz odpowiedni instalator dla twojego systemu operacyjnego/architektury z https://www.wireshark.org/download.html.
W szczególności, jeśli używasz Linuksa, Wireshark musi być dostępny bezpośrednio w repozytoriach twojej dystrybucji, aby ułatwić instalację w dogodnym dla ciebie czasie. Chociaż wersje mogą się różnić, opcje i menu powinny być podobne – jeśli nie identyczne w każdej z nich.
------------ On Debian/Ubuntu based Distros ------------ $ sudo apt-get install wireshark------------ On CentOS/RHEL based Distros ------------$ sudo yum install wireshark------------ On Fedora 22+ Releases ------------$ sudo dnf install wireshark
W Debianie i pochodnych znany jest błąd, który może uniemożliwić wyświetlenie listy interfejsów sieciowych, chyba że użyjesz sudo do uruchomienia Wiresharka. Aby to naprawić, postępuj zgodnie z zaakceptowaną odpowiedzią w tym poście.
Gdy Wireshark jest uruchomiony, możesz wybrać interfejs sieciowy, który chcesz monitorować pod Capture:

W tym artykule, użyjemy eth0
, ale możesz wybrać inny, jeśli chcesz. Nie klikaj jeszcze na interfejs – zrobimy to później, gdy przejrzymy kilka opcji przechwytywania.
Setting Capture Options
Najbardziej użyteczne opcje przechwytywania, które rozważymy to:
- Network interface – Jak wyjaśniliśmy wcześniej, będziemy analizować tylko pakiety przychodzące lub wychodzące przez eth0.
- Filtr przechwytywania – Ta opcja pozwala nam wskazać, jaki rodzaj ruchu chcemy monitorować według portu, protokołu lub typu.
Zanim przejdziemy do wskazówek, należy zauważyć, że niektóre organizacje zabraniają używania Wiresharka w swoich sieciach. Jeśli nie używasz Wiresharka do celów osobistych, upewnij się, że Twoja organizacja zezwala na jego użycie.
Na razie wybierz eth0
z listy rozwijanej i kliknij przycisk Start. Zaczniesz widzieć cały ruch przechodzący przez ten interfejs. Nie jest to zbyt przydatne do monitorowania ze względu na dużą ilość kontrolowanych pakietów, ale jest to dobry początek.

Na powyższym obrazku widoczne są również ikony służące do wyświetlania listy dostępnych interfejsów, zatrzymywania bieżącego przechwytywania i jego ponownego uruchamiania (czerwona ramka po lewej stronie) oraz konfigurowania i edytowania filtra (czerwona ramka po prawej stronie). Po najechaniu kursorem myszy na jedną z tych ikon zostanie wyświetlona podpowiedź, co ona robi.
Zaczniemy od zilustrowania opcji przechwytywania, natomiast wskazówki od #7 do #10 omówią, jak faktycznie zrobić coś użytecznego z przechwyconym obrazem.
WSKAZÓWKA #1 – Inspect HTTP Traffic
Wpisz http
w polu filtra i kliknij przycisk Apply. Uruchom przeglądarkę i przejdź do dowolnie wybranej witryny:

Aby rozpocząć każdą kolejną wskazówkę, zatrzymaj przechwytywanie na żywo i edytuj filtr przechwytywania.
TIP #2 – Inspect HTTP Traffic from a Given IP Address
W tej konkretnej wskazówce dodamy ip==192.168.0.10&&
do zwrotki filtru, aby monitorować ruch HTTP między komputerem lokalnym a 192.168.0.10:

TIP #3 – Inspect HTTP Traffic to a Given IP Address
Blisko spokrewniony z #2, w tym przypadku użyjemy ip.dst
jako części filtru przechwytywania w następujący sposób:
ip.dst==192.168.0.10&&http

Aby połączyć wskazówki #2 i #3, można użyć ip.addr
w regule filtru zamiast ip.src
lub ip.dst
.
Wskazówka #4 – Monitorowanie ruchu sieciowego Apache i MySQL
Czasami będziesz zainteresowany kontrolą ruchu, który pasuje do jednego (lub obu) warunków. Na przykład, aby monitorować ruch na portach TCP 80 (serwer WWW) i 3306 (serwer bazy danych MySQL / MariaDB), możesz użyć warunku OR
w filtrze przechwytywania:
tcp.port==80||tcp.port==3306

W poradach #2 i #3, ||
i słowo lub dają takie same wyniki. To samo dotyczy &&
i słowa and.
WSKAZÓWKA #5 – Odrzucanie pakietów na dany adres IP
Aby wykluczyć pakiety niepasujące do reguły filtrującej, należy użyć !
i zawrzeć regułę w nawiasie. Na przykład, aby wykluczyć pakiety pochodzące z lub kierowane na dany adres IP, można użyć:
!(ip.addr == 192.168.0.10)
TIP #6 – Monitorowanie ruchu w sieci lokalnej (192.168.0.0/24)
Następująca reguła filtrująca wyświetli tylko ruch lokalny i wykluczy pakiety wychodzące i przychodzące z Internetu:
ip.src==192.168.0.0/24 and ip.dst==192.168.0.0/24

TIP #7 – Monitorowanie zawartości konwersacji TCP
Aby sprawdzić zawartość konwersacji TCP (wymiany danych), należy kliknąć prawym przyciskiem myszy na danym pakiecie i wybrać opcję Śledź strumień TCP. Pojawi się okno z zawartością konwersacji.
Będzie ona zawierać nagłówki HTTP, jeśli badamy ruch internetowy, a także wszelkie dane uwierzytelniające przesyłane podczas procesu, jeśli takie istnieją.

Wskazówka #8 – Edycja reguł kolorowania
Jestem pewien, że zauważyłeś już, że każdy wiersz w oknie przechwytywania jest kolorowy. Domyślnie ruch HTTP jest wyświetlany na zielonym tle z czarnym tekstem, natomiast błędy sum kontrolnych są wyświetlane w postaci czerwonego tekstu na czarnym tle.
Jeśli chcesz zmienić te ustawienia, kliknij ikonę Edytuj reguły kolorowania, wybierz dany filtr i kliknij przycisk Edytuj.

TIP #9 – Save the Capture to a File
Zapisanie zawartości zrzutu pozwoli nam na bardziej szczegółową inspekcję. Aby to zrobić, przejdź do File → Export i wybierz format eksportu z listy:

TIP #10 – Practice with Capture Samples
Jeśli uważasz, że Twoja sieć jest „nudna”, Wireshark dostarcza serię przykładowych plików przechwytywania, które możesz wykorzystać do ćwiczeń i nauki. Możesz pobrać te SampleCaptures i zaimportować je przez menu File → Import.
Podsumowanie
Wireshark jest wolnym i otwartym oprogramowaniem, jak można zobaczyć w sekcji FAQ na oficjalnej stronie. Możesz skonfigurować filtr przechwytywania przed lub po rozpoczęciu inspekcji.
W przypadku, gdy nie zauważyłeś, filtr ma funkcję autouzupełniania, która pozwala łatwo wyszukać najczęściej używane opcje, które można dostosować później. Z tym, niebo jest granicą!