Saltar para o conteudo
Avanet

Use tcpdump no Sophos Firewall com segurança

tcpdump é a ferramenta certa quando é necessário ver com mais detalhes quais pacotes realmente chegam em Sophos Firewall, por qual interface eles passam e se surge algum problema antes, dentro ou atrás da firewall. Complementa Log Viewer, WebAdmin Packet Capture e Service-Logs, mas não os substitui.

Para verificações rápidas no navegador, usar Sophos Firewall Packet Capture em WebAdmin geralmente é mais conveniente. Para capturas mais longas, filtros muito precisos, ficheiros PCAP ou casos de suporte, tcpdump a SSH geralmente é mais adequado.

⚠️ Importante: As capturas de pacotes podem conter dados confidenciais: endereços IP internos, nomes de host, nomes de utilizadores, consultas DNS, detalhes de certificados ou dados úteis não criptografados. Portanto, devem ser rigorosamente filtrados, registados apenas durante o tempo necessário, documentados e transmitidos apenas através de canais seguros. Uma captura não filtrada no any pode gerar muitos dados em firewalls de produção.

Seleção de ferramentas e pré-requisitos

Qual item é apropriado?

tcpdump não é o primeiro passo para todas as análises. Dependendo da questão, outro ponto de partida pode ser mais rápido:

Essa separação economiza tempo e reduz riscos. tcpdump fornece dados de pacotes robustos, mas não decisões políticas específicas do Sophos. ID de regra, ID NAT, motivo de queda, política da Web, IPS ou inspeção SSL/TLS devem ser verificados em paralelo em Log Viewer, WebAdmin Packet Capture ou ficheiros de log correspondentes.

Pré-requisitos

Para este guia é necessário de:

  • Acesso administrativo a Sophos Firewall.
  • SSH acesso à firewall ou acesso ao Advanced Shell.
  • O IP de origem, o IP de destino, a porta de destino e o protocolo afetado.
  • Espaço livre em disco suficiente para gravar um ficheiro PCAP.
  • Wireshark ou outra ferramenta de análise no cliente administrativo se um ficheiro PCAP for avaliado.

Como preparar SSH com segurança está detalhado em Conectar Sophos Firewall por SSH. Para informações básicas gerais sobre CLI, Resolução de problemas de CLI em Sophos Firewall: Comandos importantes também é útil.

Quando o tcpdump é o próximo passo correto

tcpdump não deve ser automaticamente o primeiro passo. Se se quiser apenas saber qual regra de firewall, regra NAT, política da web ou regra de inspeção SSL/TLS escolheu, o Log Viewer é mais rápido e legível. Se quiser ver no navegador se pacotes individuais estão chegando, sendo encaminhados ou descartados, Packet Capture in WebAdmin geralmente é suficiente.

tcpdump é especialmente útil quando qualquer um destes pontos for atendido:

  • A captura deve ser avaliada como um ficheiro PCAP no Wireshark ou pelo suporte.
  • A captura WebAdmin é muito curta, confusa ou o buffer está cheio.
  • O teste deve ser executado durante uma janela de manutenção, chamada telefônica ou erro reproduzível do utilizador.
  • Filtros CLI precisos são necessários, por exemplo, para VoIP, DNS, IPsec, vários hosts ou intervalos de portas.
  • O tráfego relevante deve ser comparado primeiro em any e depois em uma determinada interface.

A expectativa é importante: tcpdump mostra pacotes, mas não decisões específicas do Sophos, como Rule ID, NAT ID, Drop Reason ou Web Policy. Estas informações devem ser verificadas paralelamente nos ficheiros Log Viewer, WebAdmin Packet Capture ou ficheiros de log correspondentes.

Advanced Shell ou Device Console?

tcpdump pode aparecer em dois contextos CLI no Sophos Firewall. O Sophos Device Console inclui seu próprio comando tcpdump com sintaxe Sophos e opções como filedump. O Advanced Shell também oferece o tcpdump mais próximo do Linux, que em casos de suporte costuma ser mais prático porque permite trabalhar com processos, scp, /tmp e outras ferramentas de shell.

Esta distinção é importante:

  • Device Console: adequado para o comando Sophos CLI tcpdump. Antes de executar, verifique a sintaxe com Tab ou ?. Segundo a Sophos, a saída criada com filedump é armazenada em /tmp.
  • Advanced Shell: adequado para fluxos clássicos de shell com tcpdump, ps, df, grep, scp, acesso a arquivos e parada direcionada de processos em execução.

Este artigo usa deliberadamente o Advanced Shell porque arquivos PCAP, processos em segundo plano, scp e limpeza posterior ficam mais compreensíveis nesse contexto. Se tcpdump for usado no Device Console, valem as mesmas regras básicas: filtros estreitos, janela curta de captura, verificar espaço livre e comparar o resultado com Log Viewer ou WebAdmin Packet Capture.

Se não estiver claro em que consola está, a visão geral Resolução de problemas Sophos Firewall: Serviços e registos pode ajudar.

Preparar a captura

Delimita antes de iniciar

Antes de uma captura, os parâmetros de análise devem ser anotados:

  • IP de origem: por exemplo 172.16.10.25.
  • IP de destino: por exemplo 198.51.100.20.
  • Protocolo: por exemplo TCP.
  • Porta de destino: por exemplo 443.
  • Interface esperada: LAN, WAN ou interface VPN.
  • Hora do teste: Hora exata com fuso horário.
  • Resultado esperado: ligação permitida, bloqueada, DNAT, SNAT, VPN ou Drop.
  • Verificação paralela: Log Viewer, Packet Capture, Service-Log ou ticket de suporte.

Quanto mais estreito for o filtro, melhor será o resultado. Uma captura não filtrada geralmente só é útil em firewalls muito silenciosos.

O teste deve ser reprodutível. Se várias pessoas alterarem as configurações ao mesmo tempo ou vários clientes testarem, a captura se tornará difícil de interpretar. Melhor com um único cliente de teste, um prazo apertado e uma pergunta clara: o pacote está chegando? Isso sai? A resposta volta? Qual regra, regra ou política NAT é vista em paralelo?

Para teste de regras, Testar regras Sophos Firewall com Log Viewer e Packet Capture também é útil. Se o foco estiver em Drop, Violation, Rule ID ou NAT ID, Analisar pacotes descartados em Sophos Firewall é o artigo de acompanhamento mais apropriado.

Execute o tcpdump

Execute o tcpdump ao vivo

Para uma primeira verificação ao vivo, um filtro de host geralmente é suficiente:

tcpdump -i any -nn host 198.51.100.20

Parâmetros:

  • -i any: captura em todas as interfaces.
  • -nn: não executa resolução de nome ou porta DNS.
  • host 198.51.100.20: mostra apenas pacotes de ou para este IP.

Para um teste web, um filtro de porta adicional é útil:

tcpdump -i any -nn 'host 198.51.100.20 and port 443'

Expressões de filtro com and, or ou not devem ser colocadas entre aspas simples. Isso mantém a expressão unida e evita que o shell a quebre.

Exemplos de filtros comuns

  • Host específico: tcpdump -i any -nn 'host 198.51.100.20'
  • IP de origem específico: tcpdump -i any -nn 'src host 172.16.10.25'
  • IP de destino específico: tcpdump -i any -nn 'dst host 198.51.100.20'
  • Rede específica: tcpdump -i any -nn 'net 172.16.10.0/24'
  • Porta específica: tcpdump -i any -nn 'port 443'
  • Host e porta: tcpdump -i any -nn 'host 198.51.100.20 and port 443'
  • ICMP/Ping: tcpdump -i any -nn 'proto ICMP'
  • DNS: tcpdump -i any -nn 'port 53'
  • Todas as portas exceto SSH: tcpdump -i any -nn 'host 198.51.100.20 and port not 22'

Em VPN, VLAN ou problemas de encaminhamento, pode ser útil não se limitar a any, mas sim a uma interface específica. Os nomes das interfaces devem corresponder à firewall correspondente. Esta ordem costuma ser prática:

  1. Verifique brevemente any para ver se o host ou porta esperado aparece.
  2. Em seguida, capture na interface de entrada presumida.
  3. Em seguida, capture na interface de saída presumida.
  4. Compare as três observações com Log Viewer, NAT ID, Rule ID ou Drop Reason.

Isso torna mais rápido reconhecer se o tráfego não alcança a firewall, para na firewall ou se falta resposta no caminho de volta.

Limitar captura

Uma captura deve ser limitada para que não seja executada desnecessariamente por muito tempo.

Com -c, tcpdump para após um número fixo de pacotes:

tcpdump -i any -nn -c 100 'host 198.51.100.20 and port 443'

Para testes curtos, isso geralmente é mais limpo do que um processo em segundo plano. A captura é iniciada, o problema é reproduzido e a saída é obtida automaticamente.

Gravar um ficheiro PCAP

Caso a captura seja analisada posteriormente no Wireshark ou pelo suporte, um ficheiro PCAP é gravado no /tmp.

tcpdump -i any -nn -s 0 -w /tmp/sophos-capture.pcap 'host 198.51.100.20 and port 443'

Parâmetros importantes:

  • -s 0: captura pacotes completos.
  • -w /tmp/sophos-capture.pcap: grava a saída em um ficheiro PCAP.
  • -nn: desativa a resolução de nomes.

-s 0 é útil quando é necessária uma captura completa. Ao mesmo tempo, o risco de privacidade aumenta à medida que mais conteúdo do pacote é capturado. Para questões de fluxo ou cabeçalho, uma captura ao vivo sem um ficheiro PCAP ou uma captura curta com filtragem rigorosa geralmente é suficiente.

Antes de grandes capturas, o espaço livre em disco deve ser verificado:

df -h /tmp
df -h /var

Se o problema precisar apenas ser reproduzido brevemente, -c também pode ser adicionado aqui:

tcpdump -i any -nn -s 0 -c 500 -w /tmp/sophos-capture.pcap 'host 198.51.100.20 and port 443'

Após iniciar, deve repetir imediatamente o teste e não deixar a captura continuar desnecessariamente. Um PCAP que contém cinco minutos extras não é apenas maior, mas muitas vezes também contém mais informações confidenciais adicionais.

Para casos de suporte, o nome do ficheiro deve conter contexto neutro, mas não nomes de clientes, nomes de utilizadores ou nomes de host confidenciais. Nomes melhores como /tmp/ticket-12345-wan-443.pcap ou /tmp/vpn-test-20260629.pcap são melhores.

Iniciar e parar um processo em segundo plano

Às vezes, uma captura deve ser executada enquanto outro teste está a ser executado. tcpdump pode então ser iniciado em segundo plano.

tcpdump -i any -nn -s 0 -w /tmp/voip-test.pcap 'host 192.0.2.50 and portrange 5060-5090' &

Mostrar jobs em execução:

jobs

Concluir trabalho:

kill %1

Se houver vários processos tcpdump em execução ou a tarefa não estiver mais visível no shell atual, verifique os processos primeiro:

ps | grep tcpdump

Em seguida, conclua o processo correspondente. killall tcpdump só deve ser usado se estiver claro que nenhuma outra captura importante está a ser executada.

Após parar, deve verificar se o ficheiro PCAP foi gravado e tem um tamanho plausível:

ls -lh /tmp/*.pcap

Se uma captura em segundo plano for planeada para um compromisso de suporte, primeiro deve ficar claro quem a inicia, quem a interrompe e onde o ficheiro estará depois. Uma captura esquecida não é um problema raro de resolução de problemas, mas sim um risco operacional evitável.

Exemplo: Analisar VoIP ou 3CX

Nas questões VoIP, a sinalização SIP e o streaming de mídia RTP geralmente devem ser considerados separadamente. Uma única captura de ecrã em port 5060 mostra apenas parte do problema.

Para um primeiro teste do 3CX, o host PBX pode ser capturado:

tcpdump -i any -nn -s 0 -w /tmp/3cx-test.pcap 'host 192.0.2.50'

Se o tráfego for muito amplo, ele poderá ser ainda mais restrito ao SIP:

tcpdump -i any -nn -s 0 -w /tmp/3cx-sip.pcap 'host 192.0.2.50 and portrange 5060-5090'

Para problemas de áudio, o intervalo de portas RTP realmente utilizado também deve ser verificado. Isso depende da central telefônica e de sua configuração.

Nas edições VoIP de Sophos Firewall, também se deve marcar Otimizar configurações de VoIP em Sophos Firewall.

Avaliação e limpeza

Baixe e limpe o ficheiro PCAP

Um ficheiro PCAP pode ser copiado para um servidor interno usando scp:

scp /tmp/sophos-capture.pcap adminuser@192.0.2.10:/tmp/

Dependendo do ambiente, outro método de transferência seguro também pode ser usado. FTP com credenciais fixas deve ser evitado.

Após uma transferência bem-sucedida, o ficheiro da firewall deve ser excluído:

rm /tmp/sophos-capture.pcap

Para ficheiros de log completos e casos de suporte, Salvar logs de Sophos Firewall para suporte e análise é o guia mais adequado.

Contexto para suporte ou análise externa

Um ficheiro PCAP sem contexto é difícil de avaliar. Para o Suporte Sophos, Avanet ou um parceiro de análise externo, pelo menos estes dados devem ser fornecidos:

  • Janela de tempo: por exemplo 2026-06-29, 14:05-14:08 Europe/Zurich.
  • Fluxo esperado: por exemplo cliente 172.16.10.25 para servidor 198.51.100.20:443.
  • Função afetada: DNAT, IPsec, SSL VPN, Webfilter, VoIP, DNS ou encaminhamento.
  • Nota: por exemplo SYN visível, sem SYN-ACK, Drop in Log Viewer ou nenhuma resposta do destino.
  • Verificado em paralelo: ID da regra, ID NAT, Packet Capture e logs de serviço relevantes.
  • Alteração antes do erro: firmware, alteração de regra, alteração de provedor, certificado ou rota SD-WAN.

Antes de entregar a captura, o ficheiro deve ser verificado para ver se contém nomes internos, endereços privados, IPs de clientes públicos ou conteúdo não criptografado. Se o conteúdo não puder ser anonimizado, os destinatários, o canal de transmissão e a preservação devem ser decididos conscientemente.

Avaliar corretamente o tcpdump

Ao avaliar, não se trata apenas de saber se os pacotes estão visíveis. O que é crucial é o que está faltando.

  • Nenhum pacote de cliente visto: o problema está antes da firewall. Verifique cliente, VLAN, gateway, switch ou encaminhamento para a firewall.
  • Pacotes entram, mas não saem: verifique regra de firewall, NAT, encaminhamento, função ou política de segurança.
  • Pacotes saem, mas não chega resposta: verifique sistema de destino, rota de retorno, firewall oposto, NAT ou provedor.
  • Apenas SYN, não SYN-ACK: O destino ou caminho de retorno não está respondendo.
  • Solicitação ICMP visível, resposta faltando: verifique caminho de retorno, firewall de destino ou contraparte.
  • Consulta DNS visível, sem resposta: Verifique o servidor, rota, regra ou upstream DNS.
  • Pacote visível apenas em any, mas não na interface esperada: revise a suposição de atribuição de interface, zona, rota ou túnel.
  • Pacote visível na interface de entrada, mas não na interface de saída: regra de verificação, NAT, rota, função de segurança ou motivo de drop.

tcpdump mostra o fluxo de pacotes. A própria decisão política é verificada paralelamente em Log Viewer. Em questões de firewall e NAT, muitas vezes a combinação de Log Viewer, Packet Capture e tcpdump é a mais rápida.

Para erros NAT, deve-se entender também que NAT apenas traduz tráfego, mas não permite isso. A base adequada é Entenda NAT em Sophos Firewall: SNAT, DNAT, MASQ, PAT. Nos túneis IPsec, Resolução de problemas de VPN IPsec em Sophos Firewall e os registos VPN correspondentes ajudam em paralelo.

Erros comuns e lista de verificação

Erros típicos

  • Captura sem filtro: muitos dados, difícil de avaliar. Sempre limite por host, rede, porta ou protocolo.
  • Captura não interrompida: O espaço em disco e o desempenho podem ser prejudicados. Use -c ou encerre com êxito o processo em segundo plano.
  • Apenas any foi avaliado: Um problema de interface ou túnel está oculto. Após a primeira descoberta, compare especificamente a interface de entrada e saída.
  • Apenas a direção de saída foi verificada: o problema do caminho de retorno é ignorado. Considere ambas as direções.
  • A interface errada foi escolhida: pacotes relevantes estão faltando. Primeiro any, depois ancore na interface específica.
  • PCAP compartilhado não criptografado: Dados confidenciais podem ser expostos. Use transferência segura e grupo mínimo de destinatários.
  • Ficheiro deixado após o caso de suporte: consumo desnecessário de espaço e risco de dados. Remova o PCAP após a transferência.

Lista de verificação

  • IP de origem, IP de destino, porta e protocolo conhecidos.
  • SSH acesso à firewall configurado com segurança.
  • Pré-decidiu se Log Viewer ou WebAdmin Packet Capture seria suficiente.
  • Filtro escolhido o mais estreito possível.
  • Captura limitada com -c ou processo de parada clara.
  • Ficheiro PCAP gravado apenas se necessário.
  • Nas questões de interface, primeiro comparei any e depois as interfaces de entrada e saída.
  • Problema reproduzido especificamente durante a captura.
  • Tempo de teste documentado.
  • Log Viewer verificado em paralelo.
  • ID da regra, ID NAT, motivo da queda ou log de serviço anotados se estavam visíveis.
  • PCAP transferido com segurança.
  • Ficheiro PCAP temporário removido da firewall.

Perguntas frequentes

Qual é melhor: WebAdmin Packet Capture ou tcpdump?

Para análises rápidas diretamente no navegador, o WebAdmin Packet Capture é ideal. Para capturas mais longas, ficheiros PCAP, filtros mais precisos ou casos de suporte, o tcpdump é mais adequado.

O tcpdump deve ser iniciado em alguma ou em uma interface?

Para uma primeira cerca, any é prático, pois nenhum pacote é perdido devido à filtragem incorreta da interface. Uma vez claro qual interface é relevante, ela deve ser filtrada mais especificamente.

Por que -nn deveria ser usado?

-nn impede a resolução do nome DNS e do nome da porta. Isso faz com que a saída comece mais rápido e seja menos distorcida pela resolução de nomes.

-s 0 sempre deve ser usado em ficheiros PCAP?

Não. -s 0 captura pacotes inteiros e é útil para análises detalhadas. No entanto, para muitas verificações iniciais, as informações do cabeçalho ou uma captura curta ao vivo são suficientes. Quanto mais conteúdo for capturado, mais importantes serão a privacidade e a transferência segura.

Onde os ficheiros PCAP devem ser salvos?

Para capturas temporárias, /tmp é comum. O ficheiro deve ser excluído após a transferência.

Por que o tcpdump não mostra o ID da regra ou o ID NAT?

tcpdump mostra pacotes no sistema operacional e no nível da interface. Decisões específicas do Sophos, como Rule ID, NAT ID, Web Policy, IPS Policy ou Drop Reason são vistas em Log Viewer, WebAdmin Packet Capture ou nos ficheiros de log apropriados.