Установка vnStat на сервер с Debian или Ubuntu для отслеживания сетевого трафика

vnStat — это утилита с открытым исходным кодом для мониторинга сетевого трафика через консоль, распространяемая под лицензией GPL. Программа отличается низким потреблением ресурсов и может функционировать без прав суперпользователя. Данные о трафике сохраняются в базе данных, разделённой по сетевым интерфейсам, каждый из которых имеет свою собственную запись. На данный момент актуальной является версия vnStat 1.1.5. В данном руководстве рассмотрен процесс установки vnStat на серверы Debian/Ubuntu и его дальнейшее использование.

Инструкция по установке vnStat на сервер с операционной системой Debian или Ubuntu

vnStat можно установить напрямую из официальных репозиториев Debian и Ubuntu.

sudo apt-get install vnstat

После установки демон vnstatd автоматически запускается. Кроме того, он будет запускаться при каждой загрузке системы Debian/Ubuntu. Это можно проверить с помощью команды systemctl.

Читайте также:  Команда htop в Linux (Интерактивный просмотр процессов)

systemctl status vnstat

vnstat.service - vnStat монитор сетевого трафика Loaded: загружен (/lib/systemd/system/vnstat.service; включен Активен:Функционирует (в действии) с Сб 2016-04-16 05:58:33 EDT; 1 месяц 9 дней назад Docs: man:vnstatd(1) man:vnstat(1) man:vnstat.conf(5) Main PID: 654 (vnstatd) CGroup: /system. slice/vnstat.service └─654 /usr/sbin/vnstatd - n

«Активирован» означает, что автоматический запуск при загрузке системы включён.

Разработка базы данных для сетевой системы

После установки vnStat на системах Debian или Ubuntu база данных автоматически создаётся для каждого сетевого интерфейса. Каталог /var/lib/vnstat служит хранилищем данных для vnStat.

linuxbabe@xenial:~$ ls /var/lib/vnstat/ eth0 eth1

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

vnstat --add - i eth0

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

vnstat --remove - i eth0

Демон vnstatd отвечает за сбор и сохранение данных, в то время как команда vnstat служит интерфейсом для получения информации о трафике, которая хранится в базах данных, связанных с сетевыми интерфейсами.

Чтобы изменить имя интерфейса, сначала остановите vnstat.

sudo systemctl stop vnstat

sudo vnstat - i eth0 --rename new_name --force

sudo systemctl start vnstat

vnstat может уведомить вас о том, что интерфейс неактивен. Не переживайте, он будет включён через несколько секунд.

Читайте также:  Как сделать Ubuntu чрезвычайно быстрой?

Мониторинг сетевого трафика в режиме реального времени

Чтобы осуществить мониторинг сетевого трафика в реальном времени, введите следующую команду:

vnstat - i eth0 - l

-i указывает на интерфейс. — l означает работу в реальном времени. Замените eth0 на название вашего интерфейса. Для завершения нажмите Ctrl+C.

На скриншоте выше rx обозначает «Receiving» (входящий трафик), а tx — «Transmitting» (исходящий трафик). Здесь можно увидеть, сколько пропускной способности (скорости передачи) используется. Все SSD облачные серверы Digital Ocean располагают сетевым интерфейсом с пропускной способностью 1 Гбит. (Зарегистрируйтесь на Digital Ocean по моей партнёрской ссылке, и вы получите $10 в виде бесплатного кредита.)

Анализ почасового потока данных

Просмотр сетевого трафика за последние 24 часа.

vnstat -h

Эта команда позволяет определить, в какие часы ваш сайт привлекает наибольшее количество посетителей. Напоминаем, что r указывает на «Получение» (входящий трафик), тогда как t обозначает «Передачу» (исходящий трафик).

просмотр почасового трафика с помощью vnstat

Анализ повседневного интернет-трафика

vnstat -d

Данная команда предоставит данные о трафике за предыдущие 30 дней.

Читайте также:  Установите и соберите самую свежую версию Pidgin 2.11.0 на Ubuntu 16.04 LTS

Анализ недельного трафика

vnstat - w

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

Анализ трафика в сети за месяц

vnstat -m

Учтите, что Apr ’16 на представленном выше экране обозначает апрель 2016 года. Вначале я решил, что это указывает на 16 апреля. Если вам не подходит данный формат, вы можете его изменить, отредактировав файл конфигурации vnstat.

sudo nano /etc/vnstat.conf

Определите 19-ю строку.

MonthFormat "%b '%y"

Измените строчную букву y на заглавную Y. Также можно удалить символ ‘. После этого сохраните и закройте файл. Затем снова выполните команду vnstat — m. Теперь вы сможете ясно увидеть, что это обозначает год 2016.

%y и %Y представляют собой два варианта форматирования даты в системе Unix. При использовании %y отображаются только последние две цифры года (например, 16), в то время как %Y показывает полный четырехзначный формат года (например, 2016).

Представить список десяти лучших дней

vnstat - t

Просмотр 10 лучших дней с использованием vnstat

Для смены единицы измерения скорости воспользуйтесь опцией — ru (единица скорости). К примеру, если вы хотите наблюдать за трафиком в реальном времени в байтах, добавьте параметр 0 к опции — ru.

vnstat - i wlp3s0 - l - ru 0

Для отображения трафика в битах следует указать число 1 в качестве параметра для опции — ru.

vnstat - i wlp3s0 - l - ru 1