Wireshark (Русский)

Состояние перевода:
На этой странице представлен перевод статьи
Wireshark
. Дата последней синхронизации: 12 декабря 2022. Вы можете
помочь
синхронизировать перевод, если в английской версии произошли
изменения
.
Wireshark
— бесплатная программа-анализатор сетевых пакетов с открытым исходным кодом. Она используется для решения проблем в сети, анализа, разработки программного обеспечения и протоколов связи, а также для обучения.
Установка
Установите
пакет
wireshark-qt
, который предоставляет графический интерфейс. Версия для командной строки (
tshark(1)
) доступна в пакете
wireshark-cli
.
Примечание
Устаревший GTK-интерфейс был удалён в Wireshark 3.0.
termshark
— альтернативная версия для командной строки.
Разрешение на захват пакетов
Не запускайте Wireshark от имени root; это небезопасно. Wireshark позволяет разделить привилегии: пользовательский интерфейс запускается от имени обычного пользователя, в то время как утилита dumpcap запускается от имени root.
[1]
Установочный скрипт
пакета
wireshark-cli
настраивает
привилегии
для исполняемого файла
/usr/bin/dumpcap
.
/usr/bin/dumpcap
может выполняться только пользователем root и пользователями из группы
wireshark
, поэтому для использования Wireshark от имени обычного пользователя добавьте себя в
группу
wireshark
.
Методы анализа захваченных пакетов
В Wireshark есть много разных способов захватить в точности то, что вам нужно. Для этого используются фильтры захвата (
capture filters
) и дисплейные фильтры (
display filters
).
Примечание
Синтаксис фильтров захвата подробно описан в
pcap-filter(7)
, а синтаксис дисплейных фильтров — в
wireshark-filter(4)
.
Фильтрация TCP-пакетов
Чтобы посмотреть все текущие TCP-пакеты, введите
tcp
в фильтр захвата. В командной строке:
$ tshark -f "tcp"
Фильтрация UDP-пакетов
Чтобы посмотреть все текущие UDP-пакеты, введите
udp
в фильтр захвата. В командной строке:
$ tshark -f "udp"
Фильтрация пакетов с определённым IP-адресом
Для просмотра трафика, отправляемый на определённый адрес, используйте следующий дисплейный фильтр:
ip.dst ==
1.2.3.4
.
Для просмотра трафика, отправляемого с определённого адреса:
ip.src ==
1.2.3.4
.
Для просмотра входящего и исходящего трафика, связанного с указанным адресом:
ip.addr ==
1.2.3.4
.
Исключение пакетов с определённым IP-адресом
ip.addr != 1.2.3.4
Фильтрация пакетов локальной сети
Чтобы посмотреть только локальный трафик, не связанный с интернетом, можно использовать такой дисплейный фильтр:
(ip.src==10.0.0/8 AND ip.dst==10.0.0/8) OR (ip.src==172.16.0.0/12 AND ip.dst==172.16.0.0/12) OR (ip.src==192.168.0.0/16 and ip.dst==192.168.0.0/16)
Он покажет только трафик в пределах локальных сетей.
Фильтрация пакетов с определённым портом
Просмотр всех пакетов с указанными TCP-портами:
tcp.port==80||tcp.port==3306
tcp.port==80||tcp.port==3306||tcp.port==443
Захват в фоне с помощью dumpcap
dumpcap
— компонент Wireshark, используемый для захвата пакетов без какого-либо графического интерфейса. В сочетании с
tmux
он позволяет захватывать пакеты в фоновом сеансе.
Для просмотра всех доступных параметров запустите dumpcap с флагом
-h
.
Следующий пример захватывает пакеты из кольцевого буфера. Он захватывает двадцать файлов
.pcap
размером 100 МБ каждый, заменяя самый старый файл двадцать первым и так далее. Это позволяет осуществлять непрерывный захват без исчерпания дискового пространства.
# dumpcap -i 1 -b filesize:100000 -b files:20 -w
mycapture
.pcapng
-i
− номер интерфейса (как указано в
dumpcap -D
)
-b filesize:
− размер файла (в килобайтах), при достижении которого начнётся запись нового файла
.pcap
-b files:
− максимальное число сохраняемых файлов
-w
− запись захвата в файл
mycapture
identifier
.pcapng