Мне нужно иметь возможность отслеживать использование клиентских данных между их виртуальной машиной и ведром хранилища объектов, совместимым с S3 (доступ через https). Я установил ntopng
community edition на виртуальной машине, и прямо сейчас он выгружает все свои данные в базу данных MySQL.
Я заметил, что накладные расходы ntopng
не является несущественным, и это не ресурсоемкие виртуальные машины, поэтому я хотел бы уменьшить объем памяти / ресурсов, если могу. Меня интересует ТОЛЬКО соединение, описанное выше, поэтому есть ли способ применить фильтр для отслеживания соединений только из определенного источника, а не для отслеживания ВСЕГО трафика?
На самом деле меня интересует только ВХОДЯЩИЙ трафик, так как загружает не оплачиваются, поэтому я уже установил --capture-direction=1
флаг только для отслеживания RX
трафик (от Bucket к ВМ).
Я предполагаю, что компонент веб-сервера либо простаивает, либо отключен, поскольку я не установил никаких значений для этих параметров. Или надо их как-то специально отключать? Наконец, я отключил все функции DNS.
Вот моя текущая конфигурация на /etc/ntopng/ntopng.conf
...
# ntopng Configuration
--community
-G=/run/ntopng.pid
-e=
-i=eth0
-n=3
--capture-direction=1
-N=myhost.tld
-F=mysql;/run/mysqld/mysqld.sock;ntop;flows;user;pass
В качестве альтернативы, есть ли лучший и / или более легкий метод достижения того, что мне нужно? Моя цель - просто в конце месяца узнать, что виртуальная машина Acme Co использовала n ГБ данных.
Я нашел гораздо лучший метод для достижения моей цели подсчета трафика с определенного IP-адреса. Это можно сделать с помощью iptables/nftables
который уже запущен в ядре и уже способен увеличивать итоговые значения пакетов и байтов. Это немного более сложная конфигурация, но она того стоит из-за гораздо меньших накладных расходов и простоты.
Где регистрируются / хранятся счетчики nftables и как долго они сохраняются?