Saltar para o conteudo
Avanet

Usar o Packet Capture da Sophos Firewall no WebAdmin

Em Diagnostics > Packet capture, é possível acompanhar um único fluxo de rede diretamente no WebAdmin. Define-se um filtro BPF preciso, inicia-se a captura, reproduz-se o problema uma vez e verificam-se depois as interfaces, Rule ID, NAT ID, Status e Reason.

O Packet Capture mostra o fluxo real dos pacotes. A política que tomou a decisão deve ser verificada também no Log Viewer. Para capturas mais longas ou um ficheiro .pcap, é necessário usar tcpdump por SSH, porque a captura do WebAdmin não pode ser descarregada como PCAP.

Se a ligação já estiver estabelecida e primeiro for apenas necessário localizar a sessão ativa com o utilizador, interfaces, Rule ID, NAT ID ou gateway, começa-se por Live Connections e Connection List. O Packet Capture é utilizado depois quando for necessário comprovar o caminho real de ida e volta.

Packet Capture em seis passos

  1. Anotar Source IP, destino, protocolo, porta e hora do teste. Exemplo: cliente 172.16.10.25 para 93.184.216.34 através de TCP 443.
  2. Abrir Diagnostics > Packet capture e clicar em Configure.
  3. Definir e guardar uma string BPF, por exemplo host 172.16.10.25 and port 443.
  4. Colocar o Packet Capture em Trace On. No SFOS 22, os detalhes dos pacotes aparecem numa nova janela do browser.
  5. Reproduzir exatamente um teste e parar depois a captura com Trace Off.
  6. Ler a sequência de baixo para cima e observar In/Out interface, Rule ID, NAT ID, Status, Reason e os pacotes de resposta.

Se a string BPF for alterada durante uma captura, colocar primeiro o Packet Capture em Trace Off e depois novamente em Trace On, para aplicar o novo filtro.

⚠️ Uma captura ampla e contínua dificulta a análise e recolhe dados operacionais desnecessários. Utilizar um filtro preciso, manter o teste curto e desligar depois o Packet Capture.

Definir um Capture Filter preciso

O Capture Filter determina antes da captura que pacotes entram no buffer de 2048 KB. O Display Filter limita apenas a visualização dos dados já capturados. Por isso, a interface não é selecionada no Capture Filter, mas posteriormente no Display Filter.

Para um teste HTTPS, devem ser conhecidos pelo menos a origem, o destino e a porta. Se o destino ainda não for claro devido a DNS, CDN ou NAT, é preferível começar apenas com Source IP e restringir depois o fluxo visível.

Antes de começar, devem estar definidos estes pontos:

  • Source IP e Destination IP atual
  • protocolo e portas de origem e destino, quando relevantes
  • interfaces de entrada e saída esperadas ou as zonas
  • Firewall Rule e NAT Rule esperadas
  • resultado esperado, como permitido, bloqueado, DNAT, SNAT ou VPN
  • hora exata do teste e uma única ação reproduzível

Exemplos BPF

  • Host: host 10.10.10.1
  • Source IP: src host 10.10.10.1
  • Destination IP: dst host 10.10.10.1
  • Rede: net 10.10.10.0
  • Rede de origem: src net 10.10.10.0
  • Rede de destino: dst net 10.10.10.0
  • Porta: port 443
  • Porta de origem: src port 443
  • Porta de destino: dst port 443
  • Protocolo: proto TCP, proto UDP ou proto ICMP

Um teste web preciso pode ter este aspeto:

host 172.16.10.25 and host 93.184.216.34 and port 443

Para um teste de ping, normalmente basta:

host 172.16.10.25 and proto ICMP

A Sophos documenta estas formas BPF básicas. Isso não garante automaticamente que qualquer expressão tcpdump funcione no WebAdmin.

Duas outras formas documentadas permitem variantes específicas:

  • Várias portas com OR: port 80 or port 443 captura pacotes com uma das duas portas, por exemplo para uma comparação breve de HTTP/HTTPS. Sem uma condição de host, o filtro aplica-se a todos os hosts; por isso, a captura deve ser curta.
  • Excluir uma porta para um host: host 172.16.10.25 and port not 22 captura este host, mas omite pacotes com porta de origem ou destino 22. Isto pode ocultar o tráfego de administração SSH, mas continua a capturar todas as outras portas deste host.

Os operadores or, and e port not fazem parte da sintaxe. Os endereços IP e os números de porta são valores de exemplo: substituir o IP do host pelo do próprio host de teste e as portas pelas dos serviços efetivamente investigados. O destino do exemplo web existente, 93.184.216.34, também não é um endpoint de teste confirmado e deve ser substituído pelo IP de destino atual. Após um teste curto, verificar se os pacotes pretendidos estão visíveis e se as portas excluídas não aparecem; o filtro não altera as regras da firewall.

Com NAT, a perspetiva é importante: um filtro no IP interno do cliente pode ocultar a entrada do lado WAN após MASQ. Se faltarem pacotes, filtrar primeiro apenas por origem, destino ou porta e confirmar se ambas as direções continuam visíveis.

Packet Capture da Sophos Firewall com diálogo Configure, string BPF e interruptor Trace
A string BPF é definida em Configure; depois, Trace On inicia a captura.

Buffer e opções de captura

  • Number of bytes to capture (per packet) define quantos bytes são guardados por pacote. Para um primeiro teste, os dados dos cabeçalhos são muitas vezes suficientes.
  • Sem Wrap capture buffer once full, a captura para automaticamente aos 2048 KB. Com Wrap, os dados mais antigos são substituídos.
  • Clear esvazia o buffer antes de um novo teste.
  • Buffer used mostra a ocupação atual de 0 a 2048 KB, não a capacidade total fixa. Permite perceber quanto falta para a captura atingir o limite do buffer.
  • Os detalhes dos pacotes capturados podem ser atualizados. Para obter uma vista atual, atualizar os detalhes e consultar Buffer used; isto não equivale a esvaziar o buffer com Clear.
  • A captura continua ao mudar para outra página do WebAdmin. Por isso, colocá-la conscientemente em Trace Off após o teste.

Ler corretamente os resultados

Um fluxo aparece várias vezes porque a firewall captura a entrada e a saída nas interfaces. Uma ida e volta de ping tem normalmente quatro linhas: o pedido entra pela LAN, sai pela WAN, a resposta entra pela WAN e sai pela LAN. As entradas mais recentes aparecem no topo; para seguir a ordem cronológica, ler a lista de baixo para cima.

Packet Capture da Sophos Firewall com filtro BPF ativo, interfaces, NAT ID, Rule ID e Status
A lista de pacotes mostra o fluxo nas interfaces e os respetivos NAT ID, Rule ID e Status.

Os campos mais importantes

  • In interface / Out interface: Onde o pacote chega e por que interface sai.
  • Source IP / Destination IP / Ports: Que fluxo está a ser analisado.
  • Rule ID: Que regra da firewall processa o tráfego.
  • NAT ID: Que regra NAT está envolvida.
  • Status: O que a firewall faz nesta etapa do pacote.
  • Reason: Por que motivo um pacote é descartado.

Time, Ethernet Type e Packet Type ajudam a colocar cada linha na sequência e a identificar o protocolo. A lista inclui também Connection ID, Connection status, Gateway ID, Username e os IDs das políticas Web, Application, IPS, Remote Access e Bandwidth aplicadas. Para o pacote selecionado, a vista de detalhes mostra ainda cabeçalhos e dados Hex e ASCII.

Para uma correlação mais precisa, distinguir os metadados adicionais:

  • Connection flags: Indicadores de sistema da ligação; não confundir com o campo Status do pacote.
  • User group: Pertença do utilizador a um grupo, não o seu Username.
  • Master connection ID: ID da ligação principal associada à ligação atual; Connection ID identifica a própria ligação atual.
  • Application ID / Application category ID: Identificador da aplicação ou da sua categoria, respetivamente.
  • Application filter ID: Identificador da política de filtragem de aplicações aplicada ao tráfego da ligação, não o da aplicação.
  • Web category ID / Web filter ID: Categoria web ou política de filtragem web aplicada, respetivamente. Os IDs de categoria e de política representam associações distintas.

Interpretar corretamente Status

  • Incoming: O pacote foi recebido numa interface; isto ainda não prova uma decisão posterior.
  • Forwarded: A firewall encaminhou o pacote através de uma interface de saída.
  • Consumed: O pacote destina-se à própria firewall, por exemplo a WebAdmin, VPN Portal, SSH, DNS ou um serviço VPN.
  • Generated: A firewall gerou o pacote, por exemplo como resposta ou através de um serviço do sistema.
  • Violation: A firewall descartou o pacote devido a uma violação de política.

Com Consumed, são muitas vezes determinantes Administration > Device access, uma Local Service ACL ou o serviço da firewall afetado. Proteger o Device Access da Sophos Firewall explica a configuração correspondente.

Verificar em conjunto Rule ID, NAT ID e Reason

Uma Rule ID inesperada não prova que uma regra esteja defeituosa. Primeiro, verificar a ordem das regras, as zonas e o matching no Log Viewer. O procedimento completo está em Testar corretamente uma regra da Sophos Firewall.

Com NAT, o mesmo fluxo pode aparecer com endereços diferentes antes e depois da tradução. São determinantes a NAT ID esperada, In/Out interface e os pacotes de resposta. Compreender NAT na Sophos Firewall explica a lógica de tradução.

Se Reason mostrar, por exemplo, LOCAL_ACL, IPS, APPLICATION_FILTER, USER_IDENTITY ou IP_SPOOF, verificar o módulo correspondente no Log Viewer. Uma classificação detalhada está disponível em Analisar pacotes descartados na Sophos Firewall.

Para comparar com o Log Viewer:

  1. Abrir Log Viewer e Packet Capture em paralelo.
  2. Definir Capture Filter e reproduzir exatamente um teste.
  3. No Packet Capture, verificar interfaces, pacotes de resposta, Rule ID e NAT ID.
  4. No módulo adequado do Log Viewer, confirmar que regra ou Security Policy tomou a decisão.
  5. Só depois investigar especificamente a regra, NAT, o encaminhamento ou o módulo de segurança afetado.

No SFOS 22, o Log Viewer também disponibiliza Open PCAP quando o Packet Capture está ligado, permitindo abrir as informações dos pacotes. A ausência de uma entrada Firewall durante um teste em curso ainda não prova um problema de captura: as sessões Firewall são normalmente registadas quando a firewall recebe o evento Connection Destroy. Por isso, a lista de pacotes continua a ser a referência para analisar imediatamente o percurso.

Utilizar Display Filter

Display Filter ajuda quando a lista já contém pacotes. Permite filtrar, entre outros, por interface, IPv4/IPv6/ARP, Packet type, Source/Destination IP e porta, Reason, Status, Rule ID, User ou Connection ID. Allowed também está disponível como valor de filtro para pacotes permitidos; as linhas dos pacotes mostram as etapas de processamento, como Incoming ou Forwarded.

Em User, seleciona-se um utilizador da lista de utilizadores já existentes. Além dos exemplos explicados acima, a lista pendente Reason oferece outros valores documentados: DOS_ATTACK, INVALID_FRAGMENTED_TRAFFIC, ICMP_REDIRECT, SOURCE_ROUTED_PACKET, FRAGMENTED_TRAFFIC, MAC_FILTER, IPMAC_FILTER, NEIGHBOR_POISONING e ICMP ERROR MESSAGE. Manter a escrita, incluindo os espaços. Selecionar o valor correspondente à entrada observada para limitar a vista; o nome por si só não substitui a verificação da causa no módulo adequado do Log Viewer.

Para problemas de ARP ou NDP, Verificar a cache de vizinhos ARP e NDP mostra como comparar a captura com a cache local de vizinhos e as associações estáticas.

Save aplica o filtro e Clear repõe-no. Para tráfego VPN, por exemplo, definir Capture Filter para um host ou rede. Se o Display Filter disponibilizar a interface XFRM ou de túnel esperada, limitar a visualização a essa interface. Caso contrário, ler In/Out interface diretamente nas linhas dos pacotes.

Análise rápida de erros

Nenhum pacote visível: Verificar Capture Filter e Display Filter. Para FQDN e CDN, confirmar o IP de destino atual; com NAT, filtrar inicialmente apenas por Source IP. Se a lista continuar vazia, verificar o gateway do cliente, VLAN, a porta do switch e os dispositivos anteriores.

O cliente não acede à Internet: Filtrar pelo IP do cliente e, por exemplo, TCP 443. Se nada chegar, a causa encontra-se antes da firewall. Se o pedido chegar mas não for encaminhado, verificar a regra da firewall, NAT e o encaminhamento.

Apenas Incoming está visível: Procurar Forwarded, Consumed ou Violation e garantir que o filtro não oculta as etapas seguintes. No SFOS 22.0.1 MR1 Build 490, o Known Issue NC-178387 pode fazer com que descartes predefinidos com Firewall ID 0 apareçam sem uma linha Violation Firewall. Segundo a entrada de Known Issues, a Sophos prevê uma correção na próxima versão de manutenção; a entrada não indica nenhuma versão ou build específica cuja correção esteja confirmada. A disponibilidade de MR2, por si só, não comprova portanto a correção. Enquanto a correção não estiver confirmada para a build utilizada, confirmar com Policy tester ou criar, para o fluxo afetado, uma regra explícita de descarte com registo no fim da lista de regras. Definir especificamente as zonas de origem e destino; os detalhes estão em Analisar pacotes descartados na Sophos Firewall.

Forwarded, mas sem resposta: Verificar a rota de retorno, NAT, o sistema de destino, a firewall local do destino e a contraparte. Forwarded prova apenas que a Sophos Firewall encaminhou o pacote.

Rule ID ou NAT ID inesperada: Comparar os IDs com o Log Viewer e a posição da regra. Não alterar várias regras ao mesmo tempo; A regra da Sophos Firewall não corresponde ajuda com problemas de matching.

DNAT não funciona: Verificar se o pedido chega à WAN, que NAT ID o processa e se é encaminhado para o servidor interno. Se nada aparecer na WAN, a causa encontra-se muitas vezes antes da firewall. Publicar um servidor por DNAT mostra a configuração completa.

Falta tráfego VPN: Capturar por host, rede ou protocolo. Selecionar a interface de túnel ou XFRM esperada no Display Filter, se estiver disponível. Caso contrário, verificar os valores In/Out interface nas linhas dos pacotes. Para continuar a análise, consultar Resolução de problemas IPsec na Sophos Firewall.

O filtro web bloqueia inesperadamente: Packet Capture mostra o fluxo, mas não a decisão Web, Application Control ou SSL/TLS completa. Confirmá-la no módulo adequado do Log Viewer.

Os testes pequenos funcionam, mas as transferências grandes bloqueiam: No WebAdmin, observar respostas em falta e tamanhos de pacotes. As retransmissões podem ser analisadas de forma fiável com um ficheiro PCAP no Wireshark. Além disso, verificar MTU e MSS.

Packet Capture não inicia: Primeiro, esvaziar o buffer e verificar a nova janela do browser. Se o problema persistir, reiniciar o serviço Packet capture and Live connections em System services > Services. O reinício interrompe também temporariamente a vista Live Connections.

Privacidade e mudança para tcpdump

Os dados de captura podem conter endereços IP internos, nomes de hosts, nomes de utilizadores, relações de comunicação e, em protocolos não encriptados, também dados úteis. Antes de os partilhar, verificar o destinatário, o âmbito e a retenção; muitas vezes bastam algumas linhas relevantes em vez da captura completa.

Para capturas mais longas, uma interface específica, um número fixo de pacotes, Snap Length ou um ficheiro .pcap, utilizar tcpdump na Sophos Firewall. Depois, transferir o ficheiro em segurança e removê-lo da firewall.