У меня есть несколько пользователей оболочки на сервере с 300 ГБ ежемесячной передачи данных. Как я могу отслеживать использование полосы пропускания для каждого пользователя?
12
У меня есть несколько пользователей оболочки на сервере с 300 ГБ ежемесячной передачи данных. Как я могу отслеживать использование полосы пропускания для каждого пользователя?
Ответы:
Как пользователь root, вы можете по крайней мере измерить исходящий трафик для каждого пользователя, используя модуль «владельца» iptables. Если все пользователи, которых вы хотите контролировать, находятся в
/root/list-of-users.txt
:И тогда счетчик пакетов и байтов для исходящего трафика каждого пользователя виден:
Это может быть расширено с помощью CONNMARK для отслеживания входящей стороны.
источник
Я только что наткнулся на NetHogs :
Это должно позволить вам отслеживать пропускную способность по имени пользователя. Может потребоваться еще пара инструментов для регистрации информации и добавления всего этого, но это хорошее начало без непосредственного использования iptables.
источник
sudo nethogs -v 3 eth0
(или нажмитеm
несколько раз после начала циклического переключения режимов). Объедините сtmux
для постоянного запуска (даже если вашаssh
сессия терпит крах).Вы можете использовать Кактусы
Или vnStat
Оба они великолепны.
источник
Я посмотрел немного, и я не нашел полный пакет графического интерфейса, который делает то, что вы хотите. Надеюсь, что один существует, и кто-то опубликует об этом здесь в конце концов.
Я на самом деле не сетевой парень, но от того, что я прочитал, среди многих других вещей ,
netstat
иiptables
должен сделать для IP / хост -На пользователя учета того , чтоacct
инструменты сделал для учета системных процессов. Эта ссылка на cyberciti.biz может помочь вам в разработке системы с помощью следующих инструментов:http://www.cyberciti.biz/faq/linux-configuring-ip-traffic-accounting/
источник
netstat -e
показывает пользователей оболочки, позволяя вам связать ip / host с именем пользователя.