FortiGate: Como usar o Flow Debug para diagnosticar tráfego bloqueado
O Flow Debug é a ferramenta mais poderosa do FortiGate para troubleshooting. Aprenda a usá-lo via CLI para identificar exatamente por que um tráfego está sendo bloqueado ou permitido.
Quando um usuário reclama que “não consegue acessar” algo, o FortiGate tem uma ferramenta que mostra exatamente o que está acontecendo com cada pacote: o Flow Debug. Em segundos você sabe se é uma política, NAT, roteamento ou inspeção SSL que está bloqueando.
O que o Flow Debug mostra
O diagnose debug flow captura o caminho de cada pacote pelo FortiGate e mostra:
- Por qual interface o pacote entrou
- Qual rota foi usada
- Qual política de firewall foi aplicada (e o número da política)
- Se passou pelo NAT e como foi traduzido
- Se algum UTM (IPS, AV, Web Filter) bloqueou
Comandos básicos
Toda sessão de debug segue a mesma estrutura. Conecte ao FortiGate via SSH ou console e execute:
# 1. Limpar sessões anteriores
diagnose debug reset
# 2. Habilitar saída no terminal
diagnose debug enable
# 3. Definir o filtro (o que capturar)
diagnose debug flow filter addr 192.168.1.100
# 4. Habilitar o flow com nível de detalhe
diagnose debug flow show console enable
diagnose debug flow trace start 100
# Reproduza o problema aqui (o usuário tenta acessar o que não funciona)
# 5. Parar o debug
diagnose debug flow trace stop
diagnose debug disable
diagnose debug reset
Tipos de filtros disponíveis
Você pode filtrar por diferentes critérios:
# Por IP de origem
diagnose debug flow filter addr 192.168.1.100
# Por IP de destino
diagnose debug flow filter daddr 8.8.8.8
# Por porta de destino
diagnose debug flow filter dport 443
# Por protocolo (6=TCP, 17=UDP, 1=ICMP)
diagnose debug flow filter proto 6
# Combinando filtros
diagnose debug flow filter addr 192.168.1.100
diagnose debug flow filter daddr 10.0.0.5
diagnose debug flow filter dport 3389
Interpretando a saída
A saída pode ser verbosa. Veja como interpretar as linhas mais importantes:
Pacote chegando na interface
id=20085 trace_id=1 func=print_pkt_detail line=5542 msg="vd-root:0 received a packet(proto=6, 192.168.1.100:54321->8.8.8.8:443)"
O pacote chegou. Origem 192.168.1.100:54321, destino 8.8.8.8:443 (HTTPS).
Rota encontrada
id=20085 trace_id=1 func=__ip_find_route line=204 msg="find a route: flag=00000000 gw-1.2.3.1 via wan1"
O FortiGate encontrou rota pelo gateway 1.2.3.1 pela interface wan1. Se aparecer “no route” aqui, o problema é de roteamento.
Política aplicada
id=20085 trace_id=1 func=vf_ip_route_input_common line=2596 msg="Match policy id=5, action=accept"
A política número 5 aceitou o tráfego. Se aparecer action=deny, a política está bloqueando.
Bloqueio por UTM
id=20085 trace_id=1 func=__iprope_tree_check line=527 msg="gnum-100022, check-3, vf-0 matched"
id=20085 trace_id=1 msg="Denied by forward policy check (policy 0)"
Bloqueado por inspeção UTM. Verifique qual perfil de segurança está na política 0.
NAT sendo aplicado
id=20085 trace_id=1 func=ippool_get_ip line=606 msg="SNAT 192.168.1.100->1.2.3.5:12345"
O IP foi traduzido de 192.168.1.100 para 1.2.3.5 (IP WAN).
Casos práticos
Caso 1: Usuário não acessa site específico
diagnose debug flow filter addr 192.168.1.50
diagnose debug flow filter dport 443
diagnose debug enable
diagnose debug flow show console enable
diagnose debug flow trace start 50
Se aparecer action=deny com número de política, anote o número e verifique qual política é essa em Policy & Objects → Firewall Policy.
Caso 2: VPN não sobe
diagnose debug flow filter proto 17
diagnose debug flow filter dport 500
diagnose debug enable
diagnose debug flow trace start 20
Veja se os pacotes IKE (UDP 500) chegam e por qual política passam. Se não aparecer nada, o tráfego está sendo bloqueado antes de chegar ao FortiGate.
Caso 3: Problema de NAT
diagnose debug flow filter addr 10.0.0.5
diagnose debug enable
diagnose debug flow trace start 30
Observe a linha de SNAT/DNAT para confirmar se a tradução está ocorrendo corretamente.
Dica importante: limite o trace
Sempre use um número no trace start (ex: trace start 100). Sem o limite, o debug roda indefinidamente e pode afetar a performance do equipamento em produção.
Em equipamentos com muito tráfego, seja específico nos filtros antes de iniciar. Filtros amplos demais podem gerar saída impossível de analisar.
Outros comandos úteis de diagnóstico
# Ver tabela de roteamento
get router info routing-table all
# Ver sessões ativas
diagnose sys session filter dst 8.8.8.8
diagnose sys session list
# Ver status das interfaces
get system interface physical
# Teste de conectividade a partir do FortiGate
execute ping 8.8.8.8
execute traceroute 8.8.8.8
Seu FortiGate está bloqueando algo que não deveria? A equipe da Callister resolve via acesso remoto com SLA de 2 horas. Entre em contato.
Artigos relacionados
Precisa de ajuda com segurança de redes?
Fale com um especialista certificado SonicWall e Fortinet.
Falar com Especialista