Tengo algunos usuarios de shell en un servidor con 300 GB de transferencia de datos mensual. ¿Cómo puedo monitorear el uso de ancho de banda por usuario?
12
Tengo algunos usuarios de shell en un servidor con 300 GB de transferencia de datos mensual. ¿Cómo puedo monitorear el uso de ancho de banda por usuario?
Respuestas:
Como root, al menos podría medir el tráfico saliente por usuario utilizando el módulo "propietario" de iptables. Si se encuentran todos los usuarios que desea monitorear
/root/list-of-users.txt
, puede hacer lo siguiente:Y luego, los conteos de paquetes y bytes para el tráfico saliente de cada usuario son visibles:
Esto podría extenderse aún más con CONNMARK para rastrear el lado entrante también.
fuente
Acabo de encontrar NetHogs :
Esto debería permitirle rastrear el ancho de banda por nombre de usuario. Es posible que aún necesite otro par de herramientas para registrar la información y agregarla, pero es un buen comienzo sin usar directamente iptables.
fuente
sudo nethogs -v 3 eth0
(o presionarm
repetidamente después de comenzar a recorrer los modos). Combine contmux
para ejecutar de forma persistente (incluso si sussh
sesión se bloquea).Puedes usar cactus
O vnStat
Ambos son geniales.
fuente
Miré un poco, y no he encontrado un paquete completo de interfaz gráfica de usuario que haga lo que quieres. Esperemos que exista uno y alguien lo publique aquí eventualmente.
No soy realmente un tipo de red, pero por lo que he leído, entre otras muchas cosas
netstat
, yiptables
se supone que debemos hacer por ip / host de usuario basada en lo que representa lo que lasacct
herramientas hicieron para la contabilidad de proceso del sistema. Este enlace cyberciti.biz puede ayudarlo a desarrollar un sistema con estas herramientas:http://www.cyberciti.biz/faq/linux-configuring-ip-traffic-accounting/
fuente
netstat -e
muestra los usuarios de shell, permitiéndole vincular ip / host al nombre de usuario.