Для системных администраторов и DevOps-инженеров мониторинг сетевого трафика — одна из важнейших задач для обеспечения безопасности и стабильности работы серверов. Ubuntu, как популярная операционная система на базе Linux, предоставляет множество инструментов для анализа сетевого трафика. В этой статье мы рассмотрим наиболее эффективные способы проверки и мониторинга сетевого трафика на сервере Ubuntu, включая практические примеры применения.
Зачем нужно отслеживать сетевой трафик?
Мониторинг сетевого трафика позволяет:
- Обнаруживать подозрительную активность и атаки.
- Оптимизировать использование сети.
- Следить за нагрузкой и предотвращать перегрузки.
- Обеспечивать общий контроль и безопасность.
Основные инструменты для мониторинга сетевого трафика в Ubuntu
- iftop
iftop — это мощный инструмент, который отображает входящий и исходящий трафик в реальном времени. Он позволяет увидеть IP-адреса, взаимодействующие с сервером, и объем передаваемых данных. Установка и использование:
sudo apt install iftop sudo iftop
Пример: После запуска iftop
откроется интерфейс, где вы сможете наблюдать, какие IP-адреса обмениваются данными с вашим сервером, и видеть трафик в реальном времени в удобном формате.

- nload
nload — удобный инструмент для визуального отображения входящего и исходящего сетевого трафика в виде графиков. Установка и использование:
sudo apt install nload sudo nload
Пример: Используя nload
, вы увидите графики, которые позволяют моментально оценить текущую загрузку сети. Это полезно для быстрой диагностики проблемы с подключением.

- vnStat
vnStat — это инструмент для сохранения и отображения сетевой статистики за определенные периоды времени. Установка и настройка:
sudo apt install vnstat sudo systemctl start vnstat sudo systemctl enable vnstat
Пример использования:
vnstat vnstat -d # Показать статистику за день vnstat -m # Показать статистику за месяц
Это особенно полезно для получения долгосрочной информации о потреблении трафика.
- bmon
bmon (Bandwidth Monitor) позволяет мониторить сетевой трафик с подробной визуализацией и дополнительной информацией о сети. Установка и использование:
sudo apt install bmon sudo bmon
Пример: bmon
предоставляет возможность отслеживать загрузку интерфейсов и детализацию пакетов, что помогает при анализе производительности сети.

- nethogs
nethogs — инструмент, который показывает, какие процессы используют сетевой трафик. Это помогает быстро определить приложение, потребляющее наибольшую полосу пропускания. Установка и использование:
sudo apt install nethogs sudo nethogs
Пример: Если вы подозреваете, что определенный процесс или приложение создает аномально высокую сетевую нагрузку, nethogs
покажет, какое именно приложение передает данные.

Расширенные возможности мониторинга
- tcpdump
tcpdump — это мощный инструмент для сниффинга и анализа сетевого трафика. Он позволяет захватывать пакеты и детально их анализировать. Пример использования:
sudo tcpdump -i eth0
Пример захвата пакетов и сохранения в файл:
sudo tcpdump -i eth0 -w capture.pcap
Файл можно затем проанализировать с помощью таких инструментов, как Wireshark.
- iftop с фильтрами
Для более точного мониторинга можно использовать фильтры, чтобы отображать трафик только на определенные порты или IP-адреса. Пример фильтрации по порту:
sudo iftop -f "port 80"
Это позволит вам увидеть трафик, проходящий через порт 80 (HTTP).
- iftop с выбором интерфейса
Если у сервера несколько сетевых интерфейсов, можно указать конкретный:
sudo iftop -i eth1
Автоматизация мониторинга
Для автоматизации мониторинга и создания отчетов можно использовать cron и скрипты.
Пример скрипта для сбора данных с vnStat:
#!/bin/bash vnstat --dumpdb > /var/log/vnstat_report.txt echo "Отчет по трафику сохранен в /var/log/vnstat_report.txt"
Добавление в crontab:
0 * * * * /path/to/your_script.sh
Это позволит автоматизировать сбор данных каждый час.
Заключение
Мониторинг сетевого трафика на сервере Ubuntu — важная часть управления системой. Использование инструментов, таких как iftop, vnStat, nload и nethogs, поможет вам не только следить за нагрузкой в реальном времени, но и выявлять проблемы и аномалии. Автоматизация мониторинга позволяет создавать регулярные отчеты, что упрощает работу с сетью и повышает безопасность.
Следите за загрузкой вашего сервера и оптимизируйте работу сети, чтобы избежать простоев и повысить производительность.