Anda di halaman 1dari 6

Tecnologia da Informação

TCPDUMP

Bruno Ferreira Agostinho


Tecnologia da Informação
bruno.agostino@gmail.com
2011
As informações contidas neste documento apresentam informações colhidas em
materiais pela world wide web e outros documentos para fins de estudo pessoal,
sendo apresentado as devidas referências ao final deste documento.

Autor: Bruno Ferreira Agostinho


Tecnologia da Informação
Cel.: + 55 11 8197 7768
e-mail: bruno.agostino@gmail.com

Data de disponibilização: Fevereiro de 2011.


1. O que é TCPDUMP

Conforme pesquisa inicial, o tcpdump trata-se de uma ferramenta/comando


utilizado para monitorar tráfego de pacotes (enviados e recebidos) em uma rede
de computadores. Este comando permite que seja feito uma análise do
comportamento da rede, desempenho e aplicações que geram tráfego de
pacotes.

O comando tcpdump também pode ser utilizado para com o propósito de


interceptar e exibir comunicações de outro computador ou usuário, sendo
necessário um usuário com permissões avançadas pata utilizar o tcpdump.

O tcpdump é um comando do ambiente Unix, em várias plataformas: Linux,


Solaris, BSD, Mac OS X, HP-UX, etc.

2. Utilizando o TCPDUMP

Antes de utilizar o tcpdump é necessário realizar a instalação do mesmo.


Conforme referências encontradas para instalar o tcpdump basta que o sistema
tenha a ferramenta apt-get configurada corretamente. Com o apt-get
configurado, basta executar a linha de comando apt-get install tcpdump logado
com o usuário root, pois este usuário possui todas as permissões de
administração do sistema operacional.

2.1 Sintaxe

#tcpdump [Opções] [Expressões] [Operadores Lógicos]

#tcpdump -n -i eth0 -s 2500 –X host 192.168.0.110 –c 50

Na expressão acima o tcpdump irá fazer a captura de 50 pacotes (“-c 50”) do


host 192.168.0.110 na interface eth0 (“-i eth0”) sem converter nomes em
endereços (“-n”) e os pacotes com tamanho máximo de 2500 bytes (“-s 2500”).

Neste exemplo não foi utilizado nenhum operador lógico.

#tcpdump -i eth2 -s 1500 dst net 192.168 and not host 192.168.0.114 and not
port ssh -w log.dump

Nesta outra expressão o tcpdump irá analisar o tráfego na interface eth2 (“-i
eth2”) e coletar pacotes com tamanho máximo de 1500 bytes referentes a rede
de destino 192.168.0.0(“dst net 192.168”), menos o que se refere ao host
192.168.0.114(“and not host 192.168.0.114”) e a porta 22 (“and not port ssh”)
escrevendo os pacotes em um arquivo de nome log.dump (“-w log.dump”).
O tcpdump possui várias opções, expressões e operadores lógicos.

2.2 Opções

A seguir, serão listadas algumas opções. O comando tcpdump distingue


caracteres minúsculos de maiúsculos.

-A : imprime os pacotes em código ASCII;


-c : termina a execução após receber N pacotes;
-D : mostra a lista de todas interfaces de rede disponíveis e onde o tcpdump
pode analisar e capturar pacotes. Ex.: eth0, eth1, eth2, any;
-i : recebe como parâmetro a interface. Caso receba o valor “any” irá capturar
pacotes em todas interfaces;
-n : não converte endereços em nomes (endereços de hosts, números de
portas);
-r : lê os pacotes a partir de um arquivo (criado com a opção –w);
-s: define o tamanho dos pacotes a serem capturados;
-t : não exibe o timestamp no começo de cada linha (hora, minutos e segundos);
-v : mostra a saída com mais detalhes;
-vv : mostra saída com mais detalhes ainda;
-vvv : mostra saída com informações ainda mais detalhadas;
-w : irá salvar os pacotes em um arquivo que poderá ser lido posteriormente com
a função “-r”;
-x : mostra o conteúdo do pacote em formato hexadecimal;
-X : mostra o conteúdo do pacote nos formatos hexadecimal e ASCII.

2.3 Expressões

Compete às expressões selecionar quais pacotes serão exibidos pelo tcpdump.


Caso nenhuma expressão seja definida, todos os pacotes serão exibidos. Caso
contrário somente os pacotes que as expressões coincidirem serão exibidos.

A expressão consiste em uma ou mais premissas que usualmente consistem em


um ou mais qualificadores (Type), direção (Direction) e protocolos (Protocol).

Type (tipo): host, net, port, portrange;


Ex.: host 192.168.0.0; port 22; portrange 5000-5777.

Temos também a direção dos pacotes a serem capturados.

Direction (direção): src (origem), dst (destino), src or dst (origem ou destino), src
and dst (origem e destino).
Caso nenhum destino for especificado, é assumido “src or dst”.

A lista de protocolos é:

Protocol (protocolo): ether, ip, tcp, udp, arp, rarp, fddi, tr, ip6.

2.4 Operadores Lógicos

Os operadores lógicos são três: “And”, “Or” e “Not”.

3. Exemplos

1) #tcpdump tcp and dst port 23


Na expressão acima, apenas os pacotes que atendem a expressão serão
capturados. Esta expressão seleciona os pacotes que possuem o protocolo
TCP e porta de destino 23. Neste caso a porta de destino 23 se refere aos
pacotes telnet.
2) #tcpdump host pine.tree.com and host oak.tree.com and port telnet
Nesta expressão, é capturado todos os pacotes entre os hosts “pine.tree” e
“oak.tree”. Note que desta vez foi utilizado “port telnet” ao invés de “port 23”
como na primeira expressão.

4. Conclusão

O tcpdump é uma excelente ferramenta para monitorar a rede. Apresenta uma


vasta possibilidade de comandos para a análise do tráfego na rede, além da
possibilidade de detectar problemas no tráfego.
5. Referências

Wikipédia – A Enciclopédia livre. Disponível em:


<http://pt.wikipedia.org/wiki/Tcpdump>. Acesso em Fevereiro de 2011.

http://www.tcpdump.org/tcpdump_man.html
Acesso em Fevereiro de 2011.

http://www.minimedia.com.br/downloads/tcpdump.pdf
Acesso em Fevereiro de 2011.

http://felipe-net.blogspot.com/2009/01/tcpdump-com-ele-voc-pode-muito.html
Acesso em Fevereiro de 2011.

http://www.ubuntu-br.org/ubuntu
Acesso em Fevereiro de 2011.

http://br-linux.org/apostila-linux/
Acesso em Fevereiro de 2011.

http://www.scribd.com/doc/3613/TCPDUMP-Quick-Reference
Acesso em Fevereiro de 2011.

http://taviso.decsystem.org/files/tcpdump_quickref.pdf
Acesso em Fevereiro de 2011.

http://www.safepatrolsolutions.com/papers/Tcpdump.pdf
Acesso em Fevereiro de 2011.

Anda mungkin juga menyukai