Como monitorar a rede
Autor: Patrick Brandão
E-mail: contato@tmsoft.com.br
Copyright: Proibida a cópia ou reprodução do conteúdo ou parte dele, exceto se o nome do autor, e-mail e este aviso constarem na cópia.

As vezes é necessário monitorar os pacotes que estão transmitidos na rede para identificar origem de ataques, abuso de internet, virus, entre outros males.
O Linux possui muitas ferramentas para monitorar a rede e capturar pacotes, as mais conhecidas são:
	iptraf - permite monitorar conexões, velocidade de tráfego nas interfaces de rede, etc...
	tcpdump - permite capturar pacotes para depuração avançada

IPTRAF


root@servidor:~# iptraf

Opções:
  • 1 - Monitorar conexões TCP passando pelo servidor
  • 2 - Monitorar velocidade do tráfego nas interfaces de rede
  • 3 - Detalhes do tráfego em uma interface de rede (velocidade de entrada/saida, total, número de pacotes por protocolo e tamanhos)
  • 4 - Permite monitorar detalhes de conexões TCP por porta ou por tamanho de pacotes
  • 5 - Permite monitorar tráfego pelo MAC envolvido no quadro (normalmente o MAC do servidor está envolvido em todas, por isso aparece no inicio da lista)
  • 6 - Permite configurar filtros para monitorar tráfegos específicos
  • 7 - Configurações avançadas do IPTRAF
  • 8 - Sair do IPTRAF


  • Dica: Se o iptraf travar ou acusar execução concorrente, execute o comando abaixo para destravá-lo:
    root@servidor:~# rm /var/run/iptraf/*
    root@servidor:~# 

    TCPDUMP

    Quem se acostuma com o iptraf raramente utiliza o tcpdump por sua sintaxe parecer mais complexa.
    	tcpdump [opções]
    	
    	Opções:
    		-n = desativa a verificação de DNS (recomendável)
    		-e = exibe endereço MAC de origem e de destino no cabeçalho
    		-v = aumenta o nível de informação (-vvv por exemplo)
    		-l = ativa buffer de saida, para integração com outros comandos (como grep)
    		-i INTERFACE = captura pacotes de uma determinada interface (padrão: eth0, exemplo: -i eth1)
    		host IP = captura pacotes com destino ou origem envolvendo o ip (exemplo: host 192.168.20.3)
    		src IP = captura apenas pacotes com origem igual ao ip especificado (exemplo: src 192.168.20.4)
    		dst IP = captura apenas pacotes com destino igual ao ip especificado (exemplo: dst 200.160.2.3)
    	
    

    Exemplos de comandos:
    Capturar pacotes vindo de um cliente (ip do cliente: 10.20.10.37 conectado à eth1)
    root@servidor:~# tcpdump -nevvl -i eth1 src 10.20.10.37
    

    Capturar pacotes enviados para um cliente (ip do cliente: 172.17.1.14 conectado à eth2)
    root@servidor:~# tcpdump -nevvl -i eth2 dst 172.17.1.14
    

    Capturar pacotes ARP na eth0
    root@servidor:~# tcpdump -nevvl -i eth0 arp
    

    Capturar pacotes ICMP (ping) na eth1
    root@servidor:~# tcpdump -nevvl -i eth1 icmp
    

    Capturar pacotes ICMP (ping) na eth1 (filtrando cliente 192.168.0.160)
    root@servidor:~# tcpdump -nevvl -i eth1 icmp | grep 192.168.0.160