¿Qué puedo usar para monitorear y registrar el tráfico entrante/saliente hacia/desde hosts remotos?

¿Qué puedo usar para monitorear y registrar el tráfico entrante/saliente hacia/desde hosts remotos?

Ejecuto un servidor web (Debian Squeeze en un VPS) y los gráficos proporcionados por la empresa de hosting muestran consistentemente que aproximadamente el doble de tráfico entrante al servidor en comparación con el tráfico saliente. Esto me confunde un poco, así que me gustaría ejecutar algún tipo de utilidad de registro en la máquina que no sólo confirme las cifras de carga/descarga, sino que también las divida por el host remoto involucrado, para poder ver si Una gran proporción del tráfico entrante proviene de una fuente particular.

Sospecho que la mayor parte del tráfico saliente pasa a través de Apache, pero el tráfico entrante puede ser principalmente a través de Apache o podría estar dominado por otros scripts y trabajos cron, por lo que preferiría una herramienta que monitoreara el tráfico a nivel de interfaz en lugar de algo dentro de Apache. .

Lo ideal sería tener una herramienta que pueda dejar funcionando durante unos días y luego volver y obtener un resultado de "bytes por host remoto" tanto para el tráfico entrante como para el saliente.

¿Es esto posible con una herramienta estándar de Linux y un poco de configuración (si es así, cómo?) o con un programa especializado (si es así, ¿cuál?)

Respuesta1

arribaes probablemente su mejor solución para hacer esto. Está diseñado para funcionar a largo plazo y capturar exactamente lo que estás buscando.
Puede mostrarle qué destinos remotos se utilizan más, cuánto tráfico se envía hacia/desde, qué protocolos y puertos se utilizan, etc. Puede hacer lo mismo con los hosts de origen si lo ejecuta en un enrutador para poder ver las mismas estadísticas sobre los clientes locales también.
Luego utiliza una GUI web para navegar y mostrar esta información.

arriba

Respuesta2

Si tienes root, puedes usar tcpdumpy tomar todo. Luego puedes levantarloWiresharky analizar a tu antojo.

$ sudo tcpdump -i <interface> -w mycapture.tcpdump  

... y luego presiona Ctrl-C cuando hayas tenido suficiente. Ejecute en una screensesión si necesita desconectarse, etc.

De forma predeterminada, solo capturará la primera parte de cada paquete, pero como lo que más le interesa es el análisis de origen, debería estar bien.Toneladas de otras opciones para tcpdumpsi te sientes aventurero.

EDITAR: De hecho, una vez cargado en Wireshark, puedes usar la opción de menúEstadísticas|Direcciones IP...y obtenga un buen resumen del tráfico por recuento/tasa/porcentaje:

ingrese la descripción de la imagen aquí

Respuesta3

Y para métricas más avanzadas puedes usar algo comomonitorizarque tienen módulos para los servicios más comunes y es simplemente simple:

apt-get install monitorix

También tienescactusUna herramienta GUI RDD completa, pero no en tiempo real.

Y en el top 1 para mí está el multiconfigurable.grafana. Es un poco más difícil de instalar y configurar, pero es simplemente perfecto, puedes medir todo en detalle y en tiempo real. Necesita algunas dependencias JVM, Graphite, Whisper,... algunos conocimientos sobre JSON, pero funciona de maravilla. ¡Realmente lo recomiendo!

Quizás una buena configuración para su caso debería ser:

collectd + graphite + whisper + grafana

Realmente grafana cambió mi vida en la oficina.

Respuesta4

seguro ;)

https://github.com/graphite-project/whisper

Además, si desea un mini tutorial sobre cómo conectar todo: https://linuxboss.wordpress.com/2015/12/03/graphite-grafana/

información relacionada