Linux трафик от приложения

Содержание
  1. Мониторинг сети Linux
  2. Как работает мониторинг сети?
  3. Мониторинг сети с помощью iptraf
  4. Мониторинг сети с помощью других утилит
  5. 1. iftop
  6. 2. nload
  7. 3. nethogs
  8. 4. bmon
  9. 5. Vnstat
  10. 6. bwm-ng
  11. 7. speedometer
  12. 8. netwatch
  13. 9. ifstat
  14. 10. trafshow
  15. Выводы
  16. Re: Чем отледить сетевой траффик, который потребляет определенное приложение?
  17. Re: Чем отледить сетевой траффик, который потребляет определенное приложение?
  18. Re: Чем отледить сетевой траффик, который потребляет определенное приложение?
  19. Re: Чем отледить сетевой траффик, который потребляет определенное приложение?
  20. Re: Чем отледить сетевой траффик, который потребляет определенное приложение?
  21. Re: Чем отледить сетевой траффик, который потребляет определенное приложение?
  22. Re: Чем отледить сетевой траффик, который потребляет определенное приложение?
  23. Re: Чем отледить сетевой траффик, который потребляет определенное приложение?
  24. Re: Чем отледить сетевой траффик, который потребляет определенное приложение?
  25. Re: Чем отледить сетевой траффик, который потребляет определенное приложение?
  26. Re: Чем отледить сетевой траффик, который потребляет определенное приложение?
  27. Как поймать трафик(пакеты) исходящие от определенного приложения с определенным PID(Linux)?
  28. Войдите, чтобы написать ответ
  29. Безопасен ли линукс для хранения файлов?

Мониторинг сети Linux

Во многих случаях может понадобиться отследить нагрузку на сеть, посмотреть сколько данных передается и какие пользователи, программы или компьютеры занимают канал. Особенно часто такие задачи возникают перед системными администраторами, перед которыми стоит задача отслеживать работу сети целой компании. Но также это может быть полезно и обычным пользователям.

В этой статье мы рассмотрим как выполняется мониторинг сети Linux. Для этого можно использовать различные утилиты. Начиная от сетевых анализаторов, таких как Wireshark и tcpdump до более простых инструментов, таких как iptraf.

Как работает мониторинг сети?

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

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

Мониторинг сети с помощью iptraf

iptraf — это одна из самых лучших программ для мониторинга сети в Linux. Она предоставляет очень удобный интерактивный интерфейс, с помощью которого можно наглядно увидеть всю необходимую информацию, причем достаточно подробно. Утилита не поставляется по умолчанию, но она достаточно популярна, поэтому вы можете установить ее из официальных репозиториев. Для этого в Ubuntu выполните команду:

А в CentOS / Red Hat выполните:

После установки утилиты для ее запуска просто наберите в терминале iptraf-ng:

Перед вами откроется интерактивный интерфейс на основе Ncurses, в котором необходимо выбрать нужное действие. Здесь доступны монитор пропускной способности сети, статистика по интерфейсу, статистика по сбоям и монитор локальной сети.

Обратите внимание на нижнюю часть окна, там отображается описание выбранного действия, а также находятся подсказки по горячим клавишам.Например, для просмотра сетевых соединений и статистики трафика для каждого из них выберите IP traffic moitor. Затем вам будет необходимо выбрать сетевой интерфейс, например, enp2s0:

Читайте также:  Linux users and groups permissions

Дальше вы увидите все IP адреса, с которыми сейчас выполняется взаимодействие. Здесь можно увидеть направление отправки пакетов, количество пакетов и общий объем переданных или полученных данных в байтах.

С помощью других пунктов меню можно посмотреть статистику по интерфейсу или статистику по работе локальной сети. Утилита даже может работать в неразборчивом режиме, чтобы собирать максимум данных про локальную сеть.

Также поддерживаются фильтры, которые позволяют отфильтровывать информацию только по определенному критерию. Например, чтобы создать фильтр откройте меню Filters, затем выберите IP. , а дальше Apply new filter:

Затем нужно указать имя фильтра:

На следующем этапе вы можете расписать нужные параметры фильтрации:

Чтобы применить фильтр нужно выбрать Apply filter и выбрать имя фильтра из списка:

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

Мониторинг трафика Linux чаще всего выполняется администраторами именно с помощью этой утилиты. Видео про использование утилиты:

Мониторинг сети с помощью других утилит

Самая мощная программа для мониторинга сети — это iptraf. Она предоставляет всю необходимую для администраторов информацию. Но, кроме нее, существуют и другие продукты. Рассмотрим их более подробно.

1. iftop

Утилита имеет более простой интерфейс и отображает намного меньше информации. Она выводит ip адреса отправителя и получателя, а также количество переданных или полученных данных за несколько последних секунд:

Установить программу в Ubuntu можно командной:

Хотя здесь отображается информация по каждому соединению, программа не может идентифицировать программу, которая создает пакеты.

2. nload

nload — это очень простая утилита, которая отображает только скорость входящих и исходящих соединений. Это позволяет сделать примитивный анализ сети linux и определить нагрузку. Отображается текущая скорость, максимальная и минимальная скорость за период работы. Также данные о скорости выводятся в виде графика, поэтому вам будет достаточно беглого взгляда, чтобы понять что происходит.

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

3. nethogs

Nethogs — это достаточно интересная утилита для мониторинга сетей, которая выделяется среди других. С помощью нее можно посмотреть какой процесс создает тот или иной трафик. Здесь отображаются PID процессов и имена пользователей, отсортированные по занимаемой пропускной способности сети:

Программа, как и другие доступна из официальных репозиториев, поэтому у вас не возникнет проблем с установкой:

4. bmon

Утилита bmon позволяет отображать достаточно подробно статистику по каждому сетевому интерфейсу. Она работает похоже на nload и выводит график кроме текстовой информации:

Для установки программы выполните:

5. Vnstat

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

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

sudo systemctl start vnstat

Далее необходимо немного подождать, пока утилита соберет данные и можно просматривать статистику:

Здесь будет отображаться информация о нагрузке на сеть с указанием дат и периодов. Также вы можете посмотреть доступную информацию в реальном времени. Для этого используйте опцию -l:

Видео про использование и настройку vnstat:

Читайте также:  Linux мониторинг блока питания

6. bwm-ng

Это еще одна утилита, очень простая в использовании, которая позволяет следить за сетевой нагрузкой в режиме реального времени. Отображаются все доступные сетевые интерфейсы в системе:

Для установки утилиты выполните такую команду:

7. speedometer

Это еще один простой инструмент, который позволяет выполнить мониторинг сети и выводит данные в виде красивых графиков. Для установки программы выполните:

sudo pip install speedometer

Как видите, она есть в официальных репозиториев не всех дистрибутивов, зато вы можете установить программу из репозитория python.

speedometer -r enp2s0f0 -t enp2s0f0

Опция -r указывает интерфейс, с которого необходимо отображать количество полученных пакетов, а опция -t — отправленных.

8. netwatch

Netwatch — это небольшая утилита, которая входит в набор инструментов Netdiag и показывает сетевые соединения между локальной и удаленными системами, а также скорость, с которой будут передаваться данные. Для установки программы используйте:

9. ifstat

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

10. trafshow

Это утилита, очень похожа на iftop, которая отображает не только скорость передачи, но и сами соединения. Здесь выводится информация по соединениях, размеры пакетов и протокол. Для установки программы наберите:

sudo apt install trafshow

Осталось запустить программу:

Выводы

В этой статье мы рассмотрели команду Iptraf, а также еще несколько полезных утилит, с помощью которых можно выполнять мониторинг сети linux на сервере или домашнем компьютере. Некоторые из этих инструментов можно использовать даже в корпоративной среде. В качестве альтернативы вы можете использовать инструменты с веб-интерфейсом. Некоторые из них перечислены в статье системы мониторинга Linux. А какие инструменты мониторинга используете вы? Напишите в комментариях!

Обнаружили ошибку в тексте? Сообщите мне об этом. Выделите текст с ошибкой и нажмите Ctrl+Enter.

Источник

Re: Чем отледить сетевой траффик, который потребляет определенное приложение?

Помоему с 2.6.14 это не поддерживается к тому же на smp системах никогда и не работало.

Re: Чем отледить сетевой траффик, который потребляет определенное приложение?

Re: Чем отледить сетевой траффик, который потребляет определенное приложение?

Немного странно для ОС ориентированной на работу с сетью. В свое время озадачивался подобным вопросом и тоже не нашел нормального решения. Кстати atop помоему только считает трафик приложения без возможности логирования или анализа. У меня было так: какое-то приложение временами отсылало udp пакеты и зерез какое-то время приходили ответы, причем происходило спонтанно. Решилось все просто — это оказался глючный плагин от фаерфокса и он не закрывал сокет поэтому я его нашел.

Re: Чем отледить сетевой траффик, который потребляет определенное приложение?

Надо запускать это приложение от другого пользователя, и дальше любая гормальная считалка трафика по идее.

Re: Чем отледить сетевой траффик, который потребляет определенное приложение?

Что странно? 1. Есть iptables со своими счетчиками и -m owner 2. Есть куча сниферов: tcpdump, tcpflow и иже с ними для логирования и анализа. 3. Есть tcptraf, iftop для набл. за трафиком 4. atop + kernel patch для набл. за трафиком конкр. приложения Чего не хватает?

Re: Чем отледить сетевой траффик, который потребляет определенное приложение?

>для ОС ориентированной на работу с сетью

Читайте также:  Как настроить резервное копирование линукс

кстати, Линукс не «ОС ориентированной на работу с сетью», а ОС общего назначения.

Re: Чем отледить сетевой траффик, который потребляет определенное приложение?

> Немного странно для ОС ориентированной на работу с сетью.

> Кстати atop помоему только считает трафик приложения без возможности логирования или анализа.

Для логирования — iptables.

Re: Чем отледить сетевой траффик, который потребляет определенное приложение?

Приложение должно определенный порт юзать 🙂 Дальше всё просто.

Re: Чем отледить сетевой траффик, который потребляет определенное приложение?

Это все замечательные инструменты. Обрисую ситуацию. Появился например вирус каким то образом. Он периодически пытается рассылать свои куски в сеть по протоколу udp причем все время на разные хосты при этом сеанс длится недолго и после этого он закрывает сокет. Как можно определить какое приложение поражено ? iptables с -m owner замечательно для этого подошел бы но на современных ядрах —cmd-owner и —pid-owner не поддерживаются. Можно конечно убивать по одному и смотреть когда прекратится рассылка но если заражено не одно приложение ? Логировать весь udp трафик тоже нет смысла потому что определить какое приложение является хозяином какого то пакета будет проблематично.

Re: Чем отледить сетевой траффик, который потребляет определенное приложение?

если вирус не шибко мудреный, спасет глобальный LD_PRELOAD с логгированием (=

Re: Чем отледить сетевой траффик, который потребляет определенное приложение?

Вообще можно и нетстатом не брезговать

Источник

Как поймать трафик(пакеты) исходящие от определенного приложения с определенным PID(Linux)?

Есть приложение которое генерирует трафик, у него есть свой PID — Как отфильтровать трафик по PID?

KC5PlwTolDI.jpg

Интересует меня в данном случаи PID = 18831/wineserver

Как установить мониторинг за всеми исх./вход. пакетами этого процесса?

Это в корне не так. Даже если предположить, что приложение — демон (предоставляет какой-то сервис) оно может одновременно «слушать» пакеты на сколь угодно много портов.
Я тут даже опущу описание самой технологии и того, что на «портах» никто не «сидит» и на самом деле «порты» это просто идентификаторы, указывающие кому этот пакет передать.

Если же приложение не является демоном, то оно для исходящих запросов (и получения ответа) каждый раз (для кажого запроса) использует абсолютно рандомные порты (ну, с торрент-клиентами тут есть небольшая оговорка, которая, впрочем, всё равно не отменяет применимости вышесказанного и к некоторым из них.

А отвечая на вопрос ОПа — можно маркировать пакет по прилжению. Например:
iptables -A OUTPUT -p TCP -m owner —pid-owner $PID -j
Которое, правда, не очень работает на мультиядерных системах :'(

Но можете ещё погуглить немного вокруг match packets by pid и набора утилит из tc/ipset/iptables

// либо запустить то wine-приложение под отдельным пользователем и ичпользовать -m owner —uid-owner $id_пользователя. Так оно работает и на многоядерных системах тоже.

Например по порту. Определённое приложение будет сидеть на определённом сетевом порте.
Сделайте так:
tcpdump -i eth1 ‘port 80’

Да, чуть не забыл. Определить на каком порте сидит приложение можно с помощью netstat.

Войдите, чтобы написать ответ

Безопасен ли линукс для хранения файлов?

Источник

Оцените статью
Adblock
detector