Tcpdump: Difference between revisions

From TÜ Narva Kolledži Wiki
Jump to navigation Jump to search
Content deleted Content added
Apantjke (talk | contribs)
No edit summary
Apantjke (talk | contribs)
No edit summary
Line 15: Line 15:


= Работа с Tcpdump =
= Работа с Tcpdump =
Чтобы начать работу, прежде всего, утилиту стоит установить. Для этого используем команду:
<pre>sudo apt-get install tcpdump</pre>
Выполнение tcpdump без параметров будет искать первый активный интерфейс. После этого утилита найдет и отобразит информацию о пакетах, входящих или исходящих с сетевого устройства. Процесс можно прервать комбинацией '''Ctrl+C'''. Заходим в терминал и пишем:
Выполнение tcpdump без параметров будет искать первый активный интерфейс. После этого утилита найдет и отобразит информацию о пакетах, входящих или исходящих с сетевого устройства. Процесс можно прервать комбинацией '''Ctrl+C'''. Заходим в терминал и пишем:
<pre>sudo tcpdump</pre>
<pre>sudo tcpdump</pre>
Line 26: Line 28:
Для просмотра информации о трафике мы можем выбрать какой-нибудь другой интерфейс. Чтобы узнать, с какими интерфейсами будет работать tcpdump, используется параметр «-D», который отображает список устройств, которые можно использовать в качестве параметров. Для того, чтобы вывести этот список, используем команду:
Для просмотра информации о трафике мы можем выбрать какой-нибудь другой интерфейс. Чтобы узнать, с какими интерфейсами будет работать tcpdump, используется параметр «-D», который отображает список устройств, которые можно использовать в качестве параметров. Для того, чтобы вывести этот список, используем команду:
<pre>sudo tcpdump -D</pre>
<pre>sudo tcpdump -D</pre>
Альтернативой служит команда:
<pre>sudo tcpdump --list-interfaces</pre>
[[File:ubuntu3_C18055.png|500px]]
[[File:ubuntu3_C18055.png|500px]]


Line 31: Line 35:
<pre>sudo tcpdump -i enp0s3</pre>
<pre>sudo tcpdump -i enp0s3</pre>
[[File:ubuntu4_C18055.png|500px]]
[[File:ubuntu4_C18055.png|500px]]

Также для удобства вместо названия интерфейса можно использовать номер его идентификатора в списке следующим образом:
<pre>sudo tcpdump -i "номер идентификатора"</pre>
Или:
<pre>sudo tcpdump --interface "номер идентификатора"</pre>


=== Ограничение количества пакетов для захвата ===
=== Ограничение количества пакетов для захвата ===
Line 38: Line 47:


[[File:ubuntu5_C18055.png|1000px]]
[[File:ubuntu5_C18055.png|1000px]]

=== Сохранение вывода tcpdump в файл ===
Tcpdump может сохранить результат в файл, на который позже можно будет ссылаться. Для этого мы будем использовать параметр '''-w''' вместе с именем файла, чтобы записать его. После выполнения tcpdump сохранит захваченные данные в файле .pcap, который впоследствии можно будет проанализировать с помощью tcpdump или других инструментов мониторинга сети.

Чтобы сохранить вывод инструмента в файл, нам нужно будет присвоить ему любое имя, которое мы хотим. Например:
<pre>sudo tcpdump -w world.dump</pre>
[[File:ubuntu6_C18055.png|500px]]

Revision as of 16:15, 17 December 2022

Что такое Tcpdump

Tcpdump — это утилита UNIX, позволяющая перехватывать и анализировать сетевой трафик, который проходит через компьютер, на котором данная программа запущена. Также существует клон tcpdump и для windows, WinDump. Это диагностический инструмент, позволяющий увидеть нам информацию о пакетах. Информация будет содержать сведения о том, откуда приходят входящие пакеты и куда направляются исходящие пакеты, предоставляя некоторую дополнительную информацию. Мы даже можем сохранить результат в файл, чтобы посмотреть его в случае необходимости.

Для выполнения программы требуется наличие прав суперпользователя и прямой доступ к устройству.

Пользователь может применять различные фильтры, чтобы сделать вывод более точным. Фильтр — это выражение, которое идет после параметров и позволяет нам выбирать пакеты, которые мы ищем. При отсутствии фильтров tcpdump будет сбрасывать весь трафик, видимый выбранным сетевым адаптером.


Для чего используется Tcpdump

  • Для отладки приложений, использующих сеть для связи.
  • Для отладки самой сети.
  • Для захвата и чтения данных, отправленных другими пользователями или компьютерами. Пользователь, управляющий маршрутизатором, через который проходит незашифрованный трафик, может использовать tcpdump для получения паролей или другой информации.


Работа с Tcpdump

Чтобы начать работу, прежде всего, утилиту стоит установить. Для этого используем команду:

sudo apt-get install tcpdump

Выполнение tcpdump без параметров будет искать первый активный интерфейс. После этого утилита найдет и отобразит информацию о пакетах, входящих или исходящих с сетевого устройства. Процесс можно прервать комбинацией Ctrl+C. Заходим в терминал и пишем:

sudo tcpdump

После завершения команды на выходе мы получим следующую информацию, показывающую сколько пакетов было захвачено, сколько действительно получено и сколько покинуло ядро.

Отображение параметров

Для просмотра информации о трафике мы можем выбрать какой-нибудь другой интерфейс. Чтобы узнать, с какими интерфейсами будет работать tcpdump, используется параметр «-D», который отображает список устройств, которые можно использовать в качестве параметров. Для того, чтобы вывести этот список, используем команду:

sudo tcpdump -D

Альтернативой служит команда:

sudo tcpdump --list-interfaces

Далее просто указываем любой из предложенных интерфейсов для использования, например:

sudo tcpdump -i enp0s3

Также для удобства вместо названия интерфейса можно использовать номер его идентификатора в списке следующим образом:

sudo tcpdump -i "номер идентификатора"

Или:

sudo tcpdump --interface "номер идентификатора"

Ограничение количества пакетов для захвата

В случае, когда мы хотим ограничить вывод определенным количеством пакетов, мы можем использовать параметр -c, благодаря которому мы указываем, сколько пакетов мы хотим захватить и отобразить информацию после вывода заданного нами числа пакетов. Для примера ограничим вывод до 10-ти штук командой

sudo tcpdump -c 10 

Поскольку пакеты получаются по несколько штук единовременно, то на выходе количество захваченных и количество полученных пакетов отличается, так как мы ограничили вывод до 10-ти. Как итог получаем:

Сохранение вывода tcpdump в файл

Tcpdump может сохранить результат в файл, на который позже можно будет ссылаться. Для этого мы будем использовать параметр -w вместе с именем файла, чтобы записать его. После выполнения tcpdump сохранит захваченные данные в файле .pcap, который впоследствии можно будет проанализировать с помощью tcpdump или других инструментов мониторинга сети.

Чтобы сохранить вывод инструмента в файл, нам нужно будет присвоить ему любое имя, которое мы хотим. Например:

sudo tcpdump -w world.dump