ИТ Блог. Администрирование серверов на основе Linux (Ubuntu, Debian, CentOS, openSUSE)

Как отслеживать сетевой трафик в Linux

Как отслеживать сетевой трафик в Linux

Мониторинг сетевого трафика помогает вашим компьютерным системам работать быстро, эффективно и безопасно, применяя информацию, полученную с помощью инструментов мониторинга. Эффективный мониторинг сети предоставляет ИТ-специалистам необходимую информацию для предотвращения простоев сети, преодоления узких мест в производительности сети и смягчения различных угроз безопасности, связанных с входящими подключениями.

В этой статье мы обсудим, как отслеживать сетевой трафик в системах Linux. Поскольку серверы Linux широко используются для размещения приложений и администрирования сетей, большинство инструментов сетевого мониторинга разработаны специально для операционных систем Linux. Мы обсудим ключевые инструменты интерфейса командной строки (CLI), которые эффективно отслеживают сетевой трафик в Linux, и покажем различные сценарии, в которых они могут быть использованы.

 

Важность мониторинга сетевого трафика в Linux

Большинство современных приложений подключаются к различным удаленным сетевым службам через фоновые процессы, обрабатывающие данные, push-уведомления и подключения к веб-сокетам. Это означает, что ваши хосты постоянно подвергаются атакам трафика из различных источников. Это особенно верно в отношении систем Linux, которые широко используются в качестве производственных серверов для размещения приложений и администрирования сетей. Таким образом, понимание сетевого трафика является ключевым условием бесперебойной работы ваших серверов и приложений Linux.

Вот как эффективные инструменты мониторинга сетевого трафика могут помочь ИТ-командам:

 

Как отслеживать сетевую активность в Linux

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

 

Общее состояние сети

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

 

Входящий трафик

Мониторинг входящего трафика может помочь предотвратить сетевые атаки и поддерживать безопасность ваших серверов (или систем) Linux. Например, инструменты мониторинга сетевого трафика могут помочь идентифицировать соединения, которые отправляют чрезмерное количество трафика на ваш хост. Это может быть полезно для предотвращения DDoS-атак или обнаружения вредоносного ПО, установленного локально.

 

Исходящий трафик

Еще один важный показатель для мониторинга – это использование полосы пропускания отдельными процессами в вашей системе. Полезно знать, какие приложения потребляют большую и наименьшую часть полосы пропускания. Обладая этими знаниями, вы можете останавливать процессы, потребляющие большой объем трафика, без необходимости быть активными и/или перераспределять сетевые ресурсы приложениям, испытывающим проблемы.

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

 

Инструменты сетевого мониторинга

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

Мы обсудим основные функции, предлагаемые самыми популярными инструментами: NetFlow, NetHogs, nload, netstat и iftp.

 

NetFlow

NetFlow позволяет собирать метаданные трафика по мере его прохождения через устройство (или интерфейс). Хотя просмотр данных NetFlow через терминал возможен, сложно проанализировать все данные в командной строке. Инструменты сетевого мониторинга позволяют легко сопоставлять метаданные и представлять их в понятном формате на панели мониторинга сети. Эта панель мониторинга обеспечивает полную видимость вашей сети со статистикой пикового трафика, скачков объемов трафика, трафика приложений и интерфейсов, а также разговоров о превышении пропускной способности. Кроме того, с помощью этого инструмента вы можете анализировать потоки на основе различных технологий, таких как J-Flow, sFlow, IPFIX, NetStream, AppFlow и CFlow.

 

NetHogs

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

Рис. 1: Сетевые подключения в терминале Linux

Рис. 1: Сетевые подключения в терминале Linux

 

nload

nload – это еще один консольный инструмент сетевого мониторинга для Linux. Он предоставляет информацию о входящем и исходящем трафике, минимальном и максимальном использовании сети и объеме передаваемых данных. Его основным преимуществом является визуализация входящего и исходящего трафика непосредственно в консоли. Однако, в отличие от NetHogs, nload не предоставляет информацию о пропускной способности сети с помощью PID, что ограничивает его возможности.

Рис. 2: Визуализация данных о трафике в nload

Рис. 2: Визуализация данных о трафике в nload

 

netstat

Другим популярным инструментом сетевого мониторинга CLI является netstat. Он отображает входящие и исходящие сетевые подключения по протоколам TCP и UDP. Данные, которые он собирает, организованы по имени протокола, локальному адресу, внешнему адресу и состоянию соединения (например, ESTABLISHED, CLOSE_WAIT и так далее). Кроме того, netstat предоставляет информацию о таблицах маршрутизации, сетевых интерфейсах и статистике сетевых протоколов. Он предлагает опции для фильтрации подключений на основе атрибутов. Например, netstat может сообщать общее количество отправленных и полученных байт (-b, -i), предоставлять статистику ethernet (-e), включая пакеты, фильтровать по типу подключения и отображать общую сетевую статистику.

 

iftop

iftop, что расшифровывается как interface top, позволяет отображать использование пропускной способности сети сетевым интерфейсом и соединением или хостом в режиме реального времени. С помощью этой утилиты вы можете определить удаленные узлы, которые замедляют работу вашей сети, и пропускную способность сети для каждого доступного интерфейса: например, Ethernet, программно-определяемые сети, беспроводную связь и многое другое.

Хотя iftop не показывает сетевой трафик по процессам, как NetHogs, вы можете легко обойти это ограничение. Например, вы можете записать номер порта из iftop и использовать netstat -p для идентификации процесса.

Рис. 3: Список удаленных подключений в iftop

Рис. 3: Список удаленных подключений в iftop

 

Заключение

Лучший подход к мониторингу сетевого трафика в Linux – использовать комбинацию инструментов. Инструменты “сетевого управления”, такие как NetHogs, полезны для выявления узких мест в пропускной способности и эффективного перераспределения ресурсов между приложениями. Общие сетевые инструменты, такие как iftop и netstat, помогают собирать данные о пропускной способности на уровне интерфейса и протокола. В то время как большинства инструментов мониторинга сетевого трафика на основе CLI достаточно для поддержания скорости, эффективности и безопасности сетей Linux, интуитивно понятные сетевые инструменты на основе пользовательского интерфейса предоставляют мощные возможности визуализации сетевого трафика для более эффективного мониторинга сети.

Exit mobile version