Utilizar o Wireshark para Capturar e Filtrar Pacotes: Guia Completo
Wireshark · captura pacotes · análise rede · filtros · tshark · tcpdump · diagnóstico rede | ✎ Duarte Spínola | 2026-07-11
Internet & Redes · Wireshark · Análise de Rede · Captura de Pacotes
Duarte Spínola · actualizado a 11 de Julho de 2026
O Wireshark é a ferramenta gratuita de análise de rede mais usada no mundo. Captura pacotes em tempo real das diferentes interfaces de rede (Ethernet, Wi-Fi, loopback) e exibe-os num formato legível com filtros, código de cores e inspeção detalhada de cada pacote. É essencial para diagnosticar problemas de conectividade, identificar portas e IPs usados por aplicações, detectar tráfego suspeito e analisar protocolos de rede.
Em 2026, o Wireshark está na versão 4.4.x com melhorias significativas desde o artigo original de 2018: suporte para TLS 1.3 decryption, interface renovada, filtros mais rápidos e suporte para novos protocolos. Este artigo foi actualizado para reflectir as versões actuais e inclui alternativas de linha de comandos como tshark e tcpdump.
⚠ **Atenção
** Capturar tráfego de rede pode expor dados sensíveis (passwords, tokens, conteúdo de sessões TLS). Usar apenas em redes que controla ou com autorização explícita. Em ambientes empresariais, coordenar com a equipa de segurança antes de iniciar capturas.
1. Obter e Instalar o Wireshark
1.1 Windows e macOS
Descarregar o instalador em https://www.wireshark.org/ e executar. A instalação inclui o Npcap (Windows) ou requer apenas permissões de administrador (macOS). Em Windows, o Npcap substitui o antigo WinPcap desde a versão 3.0 — permite captura de loopback (tráfego local 127.0.0.1) que o WinPcap não suportava.
1.2 Linux — Ubuntu / Debian
Em 2026, o Wireshark está disponível nos repositórios oficiais — não é necessário PPA de terceiros:
sudo apt install wireshark
Durante a instalação, responder “Yes” à pergunta “Should non-superusers be able to capture packets?” — isto permite usar o Wireshark sem sudo, adicionando o utilizador ao grupo wireshark:
Reiniciar a sessão (logout/login) para que a alteração do grupo tenha efeito.
1.3 Linux — RHEL / Fedora / Rocky / Alma
1.4 Linux — Arch / Manjaro
sudo usermod -aG wireshark $USER
2. Capturar Pacotes
Após iniciar o Wireshark, a janela principal mostra as interfaces de rede disponíveis com um gráfico de actividade em tempo real (traço de ondas junto a cada interface). Para iniciar a captura:
- Clique duas vezes na interface pretendida (ex: eth0, enp3s0, Wi-Fi)
- Ou seleccione a interface e prima Ctrl+E
- Ou clique no ícone azul (barbatana de tubarão) na barra de ferramentas

Figura 1 — Selecção da interface de rede para iniciar captura
Assim que a captura inicia, os pacotes aparecem em tempo real. Por defeito, o Wireshark tem o modo promíscuo activo — captura não só o tráfego destinado ao computador mas todo o tráfego visível na rede (em switched networks, isto significa apenas o tráfego do próprio segmento).
Nota: Para desactivar o modo promíscuo, aceder a Captura → Options (ou Capture → Options) e desmarcar “Enable promiscuous mode on all interfaces”.

Figura 2 — Opções de captura: desactivar modo promíscuo
Para parar a captura, clicar no ícone vermelho “Stop capturing packets” ou premir Ctrl+E novamente.

Figura 3 — Parar a captura de tráfego
3. Código de Cores
O Wireshark usa código de cores para identificar rapidamente o tipo de tráfego. Por defeito:
| Cor | Tipo de tráfego | Significado |
|---|---|---|
| Violeta claro | TCP | Tráfego TCP normal |
| Azul claro | UDP | Tráfego UDP (DNS, streaming, etc.) |
| Verde claro | HTTP | Tráfego web não encriptado |
| Laranja | TLS/SSL | Tráfego encriptado (HTTPS, etc.) |
| Cinzento | TCP (RST) | Conexões rejeitadas/reset |
| Preto | Erros | Pacotes com checksum inválido ou outros erros |
Para ver, adicionar ou modificar as regras de cor: View → Coloring Rules.

Figura 4 — Regras de coloração de pacotes no Wireshark
4. Guardar e Abrir Capturas
Para guardar uma captura: File → Save As e escolher o formato. O formato nativo é .pcapng (suporta metadados, comentários em pacotes e múltiplas interfaces). O formato .pcap (antigo) ainda é suportado para compatibilidade.
Para abrir uma captura existente: File → Open e seleccionar o ficheiro.
Na Wiki do Wireshark é possível encontrar exemplos de capturas de diferentes protocolos (MySQL, TFTP, Telnet, DNS, TLS, etc.) para análise — ver Sample Captures — Wireshark Wiki.
💡 **Dica
Para partilhar uma captura com suporte técnico, usar File → Export Specified Packets** e exportar apenas os pacotes relevantes (com filtro aplicado). Isto reduz o tamanho do ficheiro e evita expor tráfego irrelevante.
5. Filtros de Visualização (Display Filters)
Os filtros de visualização permitem exibir apenas pacotes que correspondem a critérios específicos — sem remover os restantes da captura. Aplicam-se retroactivamente à captura já feita.
A barra de filtro está na parte superior da janela do Wireshark. Aplicar um filtro e premir Enter. Se a barra ficar verde, o filtro é válido; se ficar vermelho, há erro de sintaxe.
Para gerir filtros guardados: Analyze → Display Filters.

Figura 5 — Gestão de filtros de visualização no Wireshark
Mais exemplos em: DisplayFilters — Wireshark Wiki.
Exemplos práticos de filtros de visualização
Mostrar apenas tráfego LAN (192.168.1.0/24) — tráfego interno, sem Internet:
Mostrar apenas SMTP (porta 25) e ICMP:
Mostrar tráfego entre IP origem e IP destino específicos:
Mostrar apenas tráfego HTTP (porta 80):
Mostrar tráfego DNS:
Mostrar retransmissões TCP (diagnóstico de latência):
Mostrar ligações TLS falhadas (handshake errors):
Mostrar tráfego de um MAC address específico:
Follow TCP Stream
Para visualizar toda a conversação entre cliente e servidor (útil para HTTP, FTP, SMTP): clicar com o botão direito sobre um pacote → Follow → TCP Stream. Abre uma janela com o conteúdo completo da sessão, com cliente e servidor em cores diferentes.

Figura 6 — Follow TCP Stream: visualizar conversação completa
6. Filtros de Captura (Capture Filters)
Ao contrário dos filtros de visualização (que filtram depois da captura), os filtros de captura determinam que pacotes são capturados desde o início. Usam sintaxe BPF (Berkeley Packet Filter) — a mesma do tcpdump. Isto reduz o tamanho da captura e o consumo de CPU/disco.

Figura 7 — Filtros de captura: exemplos pré-definidos
Para gerir filtros: Capture → Capture Filters. Mais exemplos em: CaptureFilters — Wireshark Wiki.
Exemplos de filtros de captura (sintaxe BPF)
Capturar apenas tráfego TCP porta 80 (HTTP):
Capturar tráfego de um host específico:
Capturar tudo excepto ARP e DNS:
Capturar tráfego entre dois hosts:
Capturar apenas ICMP (ping):
Diferença chave: Filtros de visualização usam sintaxe Wireshark (ip.src==, tcp.port==) e filtram retroactivamente. Filtros de captura usam sintaxe BPF (src host, tcp port) e determinam o que é capturado desde o início. Não são intercambiáveis.
7. Alternativas de Linha de Comandos
Nem sempre é possível ou prático usar a interface gráfica do Wireshark — especialmente em servidores remotos sem ambiente gráfico.
7.1 tshark (CLI do Wireshark)
O tshark é a versão de linha de comandos do Wireshark, com a mesma engine de dissecação de protocolos. Está incluído no pacote Wireshark ou pode ser instalado separadamente:
sudo apt install tshark
# RHEL/Fedora
sudo dnf install tshark
# Arch
sudo pacman -S tshark
Capturar 100 pacotes na interface eth0:
Capturar com filtro de captura (BPF):
Capturar com filtro de visualização (display filter):
Gravar captura para ficheiro pcapng:
Ler um ficheiro de captura com filtro:
7.2 tcpdump
O tcpdump é a ferramenta clássica de captura de pacotes, disponível em praticamente todos os sistemas Unix/Linux por defeito. Não tem a engine de dissecação do Wireshark mas é leve e ideal para capturas em servidores remotos que depois são analisadas no Wireshark.
Capturar na interface eth0 e gravar para ficheiro:
Capturar 100 pacotes de porta 80:
Capturar tráfego de um host:
Depois, transferir o ficheiro .pcap para o PC com Wireshark e abrir com File → Open.
8. Exportar Objectos de uma Captura
O Wireshark pode extrair objectos transferidos via HTTP (imagens, ficheiros, documentos) directamente da captura. Útil em análise forense ou para verificar o que foi transferido.
File → Export Objects → HTTP — mostra uma lista de todos os ficheiros transferidos via HTTP na captura, com opção de guardar individualmente ou todos.
Para HTTPS, é necessário a chave privada do servidor ou a chave de sessão TLS (pré-master secret) — ver Edit → Preferences → Protocols → TLS → (Pre)-Master-Secret log filename.
9. Estatísticas e Análise
O Wireshark inclui várias ferramentas de estatística acessíveis no menu Statistics:
| Ferramenta | Função |
|---|---|
| Capture File Properties | Resumo da captura: duração, nº pacotes, tamanho |
| Conversations | Lista de todas as conversações (TCP, UDP, IP) com bytes/pacotes |
| Endpoints | Lista de endpoints com tráfego agregado |
| I/O Graphs | Gráfico de throughput ao longo do tempo |
| Protocol Hierarchy | Distribuição por protocolo (TCP, UDP, HTTP, TLS, etc.) |
| Flow Graph | Diagrama visual de fluxo de pacotes (sequência temporal) |
O Flow Graph é particularmente útil para visualizar handshakes TCP, DNS queries/responses e timeouts.
10. Outras Causas e Problemas Comuns
- “No interfaces available” — em Linux, o utilizador não tem permissões de captura. Verificar se está no grupo
wireshark(groups | grep wireshark) ou executar comsudo. Em Windows, verificar que o Npcap está instalado e a correr. - Captura não mostra tráfego de outra máquina na rede — em redes switched (a maioria), só se vê o tráfego do próprio segmento. Para ver todo o tráfego, configurar port mirroring/SPAN no switch ou usar um hub (não recomendado em produção).
- Tráfego HTTPS aparece encriptado — sem a chave TLS não é possível decifrar o conteúdo. Para decifrar, configurar o browser para exportar a TLS session key (variável de ambiente
SSLKEYLOGFILE) e importar no Wireshark em Preferences → TLS → (Pre)-Master-Secret log filename. - Filtros de captura não aceitam sintaxe Wireshark — filtros de captura usam BPF, não a sintaxe de display filters.
tcp.port==80é display filter;tcp port 80é capture filter. Confundir os dois é o erro mais comum. - Captura muito grande (gigabytes) — usar filtros de captura para reduzir desde o início, ou configurar ring buffer em Capture → Options → Ring buffer with N files of M MB — rotação automática de ficheiros.
11. Como Evitar Problemas e Boas Práticas
- Usar filtros de captura desde o início — em redes de alta velocidade (1Gbps+), capturar tudo sem filtro pode saturar o disco e o CPU. Usar BPF filters para capturar apenas o tráfego relevante.
- Configurar ring buffer em capturas longas — em capturas contínuas (monitorização), configurar ring buffer para evitar encher o disco: Capture → Options → Ring buffer with 10 files of 100 MB.
- Verificar permissões antes de iniciar — em Linux, confirmar que o utilizador está no grupo
wireshark. Executar comsudo wiresharknão é recomendado por razões de segurança. - Usar tshark em servidores remotos — instalar apenas o pacote
tshark(sem interface gráfica) em servidores. Capturar para ficheiro e analisar localmente no Wireshark desktop. - Anonimizar capturas antes de partilhar — usar
editcap(incluído com Wireshark) para remover endereços MAC sensíveis ou usar Edit → Preferences → Name Resolution → desactivar MAC name resolution. - Manter Wireshark actualizado — novas versões adicionam dissectors para novos protocolos e corrigem vulnerabilidades. Verificar em Help → Check for Updates.
- Documentar filtros usados — guardar filtros de visualização e captura personalizados em Analyze → Display Filters / Capture Filters com nomes descritivos. Isto acelera diagnósticos futuros.
- Não capturar em modo promíscuo sem necessidade — em redes com tráfego sensível, o modo promíscuo captura tráfego de outros equipamentos. Desactivar se só se pretende analisar o tráfego do próprio computador.
Mais informação e documentação oficial: Wireshark Wiki e Wireshark User’s Guide.