Provavelmente você também já “googleou” bastante em busca de uma aplicação free-software ou ao menos gratuita que realizasse este tipo de monitoramento, de implementação simplificada e que lhe desse relatórios resumidos. Muito possivelmente já deve ter instalado o velho e bom MRTG e percebido que ele não lhe dá respostas diretas às suas necessidades, quem sabe, até mesmo, implementou o Bandwidthd na esperança de disponibilizar uma interface mais amigável para este tipo de monitoramento, mas se decepcionou um pouco em função da coerência dos dados apresentados e do desenvolvimento descontinuado da ferramenta – estou certo?
Bem, se minhas previsões acima estiverem corretas (na sua maioria pelo menos), não se preocupe, nada de “cortar os pulsos com a faca da cozinha”.
Se você utiliza uma distribuição baseada no Debian (ele próprio, claro), basta instalar:
# apt-get install iftop
Uma vez com a ferramenta instalada, e logado como root, sem nenhuma configuração específica em arquivos textos ou qualquer outra ação, você pode executá-la com uma invocação simples:
# iftop
Isso lhe dará um panorama geral de todas as conexões ativas, de todas as interfaces de rede que estejam trafegando dados e todos os protocolos utilizados neste exato momento. Além dos dados quantitativos o programa gera gráficos em barra e os atualiza automaticamente a cada 10 segundos ou por um período que você pode determinar. Note que as conexões são mostradas em ambos os sentidos (cliente x servidor) o que lhe permite analisar o tráfego de forma independente. Por se tratar de um programa totalmente texto, sua utilização em servidores remotos, principalmente através de conexões ssh, é muito confortável (em função da sua leveza).
Você pode utilizar o programa com diversos filtros, tanto com o intuito de restringir a exibição dos dados (apenas de uma interface de rede, por exemplo), quanto no sentido de buscar strings, ips ou protocolos específicos. O comando abaixo, por exemplo, faz com que o iftop exiba apenas conexões (em todas as interfaces de rede) que utilizem protocolo icmp:
# iftop -f icmp
Você também pode querer restringir o monitoramento a uma de suas redes, como no exemplo abaixo:
# iftop -F 192.168.1.0/24
Se preferir, pode limitar o monitoramento por interface de rede do seu firewall/router Linux:
# iftop -i eth1
Além das opções ilustradas acima, é possível solicitar a exibição dos dados em bytes, limitar a escala de visualização dos gráficos gerados pela ferramenta, mostrar as portas utilizadas pelos hosts durante as conexões ou basear sua execução por intermédio de um arquivo alternativo. A lista completa das possibilidades pode ser obtida através do comando:
# iftop –help
Há também várias formas de se visualizar os dados e gráficos, uma vez que o iftop já esteja em execução. Para saber mais, basta teclar um “?” e uma tela de ajuda será exibida com todas as possibilidades.