Wireshark jest jednym z najlepszych dostępnych obecnie sieciowych analizatorów pakietów typu open source GUI. Jest on używany do przechwytywania pakietów sieciowych i wyświetlania szczegółów danych pakietów. Wireshark i tcpdump używają libpcap, aby uzyskać dane sieciowe na żywo. Często łatwiej jest przechwycić pakiety za pomocą polecenia tcpdump i wyświetlić je za pomocą Wiresharka. Jest to przydatne do rozwiązywania problemów związanych z siecią lub bezpieczeństwem sieciowym oraz do debugowania implementacji protokołów.
W tym poradniku przejdziemy przez instalację Wiresharka na Ubuntu 16.04, CentOS 7 i Arch Linux.
Instalacja na Ubuntu 16.04
Zanim rozpoczniemy instalację, poznajmy zależności:
$ sudo apt-get install build-essential checkinstall libcurl4-openssl-dev bison flex qt5-default qttools5-dev libssl-dev libgtk-3-dev libpcap-d
Po zainstalowaniu wszystkich zależności uruchamiamy poniższe polecenie w terminalu.
$ sudo add-apt-repository ppa:wireshark-dev/stable$ sudo apt-get update$ sudo apt-get install wireshark
Podczas instalacji, jeśli zostaniesz zapytany, czy osoby niebędące superużytkownikami mogą przechwytywać pakiety. Naciśnij klawisz strzałki w lewo na klawiaturze, aby wybrać <Tak> i naciśnij Enter.
Możesz uruchomić go z dasha lub wpisać polecenie:
$ wireshark
Instalacja na CentOS 7
Zainstalujemy Wiresharka na CentOS 7 za pomocą yum. W terminalu wpisz następujące komendy:
Uruchom go z launchera lub wpisz następujące polecenie w wierszu poleceń:
$ wireshark
Instalacja na Arch Linux
W terminalu wpisz następujące komendy:
$ sudo pacman -S wireshark-qt
lub jeśli wolisz interfejs GTK+, użyj tej komendy:
$ sudo pacman -S wireshark-gtk
Instalacja ze źródła
Instalacja ze źródła będzie wymagała skompilowania kodu źródłowego. Gdy wymagania zostaną spełnione, uruchom następujące polecenia w terminalu, aby zainstalować kod źródłowy.
Tshark
TShark jest narzędziem wiersza poleceń, które jest dostarczane wraz z Wiresharkiem do przechwytywania ruchu na żywo oraz odczytywania i parsowania plików przechwytywania. Bez żadnych ustawionych opcji, TShark będzie działał podobnie jak tcpdump. Używa biblioteki pcap do przechwytywania ruchu z pierwszego dostępnego interfejsu sieciowego i wyświetla linię podsumowującą na stdout dla każdego odebranego pakietu.
Tshark jest automatycznie instalowany w CentOS 7, kiedy instalujesz wireshark. Na Ubuntu można go zainstalować za pomocą polecenia:
$ sudo apt install tshark
Używanie Tsharka
Jeśli chcesz przechwycić pakiety przychodzące/wychodzące na port UDP 1812 na eth0, możesz użyć polecenia tshark w następujący sposób:
$ tshark -f "tcp port 80" -i eth0 -w capture.capCapturing on 'eth0'
Flaga -f
służy do określenia filtra przechwytywania sieci (więcej o filtrach później). Pakiety, które nie spełniają warunków podanych za flagą -f
nie będą przechwytywane. W tym przykładzie przechwytywane są tylko pakiety IP przychodzące lub wychodzące na port UDP 1812.
Flaga -i
jest używana do określenia interfejsu, z którego spodziewamy się zobaczyć pakiety RADIUS. Zmień 'eth0′ na dowolną nazwę interfejsu.
Flaga -w
jest używana do określenia pliku, w którym przechwycony ruch zostanie zapisany do późniejszego przetworzenia.
Jeśli otrzymujesz błąd 'Permission Denied’ podczas uruchamiania wiresharka jako użytkownik lokalny, możesz uruchomić go z uprawnieniami roota lub dodać konto użytkownika do grupy wireshark za pomocą następującej komendy:
$ sudo usermod -a -G wireshark username
Wnioski
.