vnStat: мониторинг трафика сетевых интерфейсов на UBUNTU 18.04 LTS

Висит у меня на Amazon AWS виртуалка, которая используется исключительно под proxy/vpn и захотелось мне посмотреть, а сколько же я использую на ней трафика. Панель управления от Amazon не позволила мне без дополнительных телодвижений посмотреть трафик за расчетный период, после чего я решил прямо на сервак воткнуть утилиту vnStat.

vnStat ведёт лог трафика за определённый период и хранит собранную статистику по каждому выбранному администратором интерфейсу, предоставляя доступ к ней в случае необходимости. vnStat, в отличие от снифферов, например таких, как Wireshark, не собирает информацию непосредственно с сетевого интерфейса, а анализирует данные, предоставляемые ядром через файловые системы proc и sys, что даёт возможность использовать эту утилиту даже непривилегированным пользователем.

Установка vnStat на сервере с Ubuntu 18.04. LTS

vnStat в Ubuntu имеется в стандартных репозиториях, так что установка не должна вызвать каких-либо осложнений:

sudo apt install vnstat

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

Настройка и запуск vnStat на сервере Ubuntu 18.04 LTS

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

sudo vnstat -i eth0 -u
Error: Unable to read database "/var/lib/vnstat/eth0".
Info: - A new database has been created.

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

Сбором статистики занимается демон vnStat — vnstatd. Init-скрипт для запуска/останова демона располагается в файле /etc/init.d/vnstat.  После установки пакета будут созданы симлинки из каталогов /etc/rc*.d для автоматического запуска демона во время старта системы. Если вы не перезагружали систему после установки vnStat, его придётся запустить вручную:

sudo /etc/init.d/vnstat start
или
sudo service vnstat start

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

По умолчанию демон vnStat обновляет базу данных каждые 5 минут, а «снимает» информацию с интерфейсов каждые 30 секунд. Эти и другие параметры регулируются в файле конфигурации, и при необходимости вы можете изменить их, предварительно проконсультировавшись с man vnstat.conf. Если вы не хотите ждать, пока демон обновит данные в БД, вы можете принудительно обновить данные:

sudo vnstat -u

Эта команда обновит БД всех интерфейсов. Если вам необходимо обновить информаци по какому-то определённому интерфейсу, воспользуйтесь опцией «-i», передав ей имя нужного интерфейса, например:

sudo vnstat -i eth0 -u 

Автостарт и автоматическое обновление статистики трафика при помощи vnStat на сервере Ubuntu 18.04 LTS

Т.к. на нескольких машинах с Ubuntu 18.04 LTS vnstat сам не стартанул, я решил не заморачиваться, не разбираться в проблеме и решить её очень простым путем:

Открываем задания крона:

sudo crontab -e

Вставляем туда ежеминутное обновление vnstat:

 * * * * * vnstat -u >/dev/null 2>&1 

Просмотр статистики трафика при помощи vnStat на сервере Ubuntu 18.04 LTS

Сводная информация по всем интерфейсам:

 vnstat
vnStat: мониторинг трафика сетевых интерфейсов на UBUNTU 18.04 LTS

Сводная информация по конкретному интерфейсу:

vnstat -i eth0

Отдельный интерфейс, по часам:

vnstat -i eth0 -h 

Отдельный интерфейс, по дням:

vnstat -i eth0 -d

Отдельный интерфейс, по неделям:

vnstat -i eth0 -w

Отдельный интерфейс, по месяцам:

vnstat -i eth0 -m

Live-режим просмотра статистики трафика при помощи vnStat на сервере Ubuntu 18.04 LTS

Также vnStat можно использовать для просмотра статистики в режиме реального времени:

vnstat -i eth0 -l
Live-режим просмотра статистики трафика при помощи vnStat на сервере Ubuntu 18.04 LTS

Также можно использовать следующие ключи:

-h,  --hours          по часам
-d, --days за день
-m, --months за месяц
-w, --weeks за неделю
-t, --top10 top10
-s, --short короткий вывод
-l, --live мониторинг в реальном времени

Дополнительную информацию по мониторингу трафика в Ubunu server можно найти по ссылке https://help.ubuntu.ru/wiki/мониторинг_трафика