manuais-e-documentacao-itguys/documentacao rede e seguranca/Manual_pfSense_15_Diagnosti...

4.8 KiB

MANUAL TÉCNICO - DIAGNÓSTICO AVANÇADO, SHELL E RECOVERY

Código: ITGENG 0026/26 | Classificação: RESTRITO Responsável: João Pedro Toledo Gonçalves | Data: {{DATA_ATUAL}}

1. HISTÓRICO DE REVISÃO

Data Versão Descrição Autor
{{DATA_ATUAL}} 1.0 Criação Inicial João Pedro Toledo Gonçalves

2. OBJETIVO

Fornecer ferramentas e comandos avançados para diagnóstico de rede, performance e recuperação de desastres no pfSense, focando no uso do Shell (pfctl, tcpdump) quando a WebGUI está inacessível ou insuficiente.

3. PRÉ-REQUISITOS

  • Acesso SSH habilitado (System > Advanced > Admin Access).
  • Usuário admin ou root com senha conhecida.
  • Acesso físico (Console/VGA/Serial) para casos de recuperação crítica.

4. PASSO A PASSO (EXECUÇÃO)

Etapa 1: Comandos Essenciais do Shell (SSH/Console)

Se a interface gráfica travar, use o shell (Opção 8 no menu console).

1. Gerenciamento do Filtro de Pacotes (pf)

  • pfctl -d: Desabilita o Firewall temporariamente (CUIDADO! Libera tudo). Use se trancou para fora.
  • pfctl -e: Habilita o Firewall novamente.
  • pfctl -f /etc/filter.conf: Recarrega as regras de filtro.
  • pfctl -s info: Mostra estatísticas gerais (Estado, Drops).

2. Diagnóstico de Interface e Roteamento

  • ifconfig: Lista interfaces, IPs e MACs.
  • netstat -rn: Mostra a tabela de roteamento.
  • netstat -i: Mostra estatísticas de erros/colisões por interface.

3. Captura de Pacotes (tcpdump) Ferramenta definitiva para ver o que está passando no cabo.

  • tcpdump -i em0: Vê tudo na interface em0.
  • tcpdump -i em0 host 192.168.1.50: Vê tráfego de/para um IP específico.
  • tcpdump -i em0 port 80: Vê apenas tráfego HTTP.
  • tcpdump -n -e -ttt -i pflog0: Vê o log do firewall em tempo real (o que está sendo bloqueado).

Etapa 2: Recuperação de Desastres (Rescue)

Cenário: Perdi a senha de admin ou lockout da WebGUI.

  1. Acesse o Console Físico (Monitor+Teclado ou Serial).
  2. No menu numérico (0-16):
    • Opção 3 (Reset webConfigurator password): Reseta senha para pfsense.
    • Opção 4 (Reset to factory defaults): Zera TUDO. (Use em último caso).
    • Opção 11 (Restart webConfigurator): Reinicia apenas o serviço PHP/Nginx. Use se a GUI estiver dando erro 502/504.
    • Opção 15 (Restore recent configuration): Permite voltar para um backup automático anterior. O pfSense salva backups a cada alteração. Isso salva vidas!

Etapa 3: Diagnóstico via WebGUI (Tools)

Se a GUI funciona, use:

  1. Test Port (Diagnostics > Test Port):
    • Testa se uma porta TCP está aberta num servidor remoto. Melhor que ping para testar serviço.
  2. Packet Capture (Diagnostics > Packet Capture):
    • Interface gráfica para o tcpdump. Permite baixar o arquivo .cap para analisar no Wireshark do seu PC.
  3. States Dump (Diagnostics > States):
    • Veja quem está conectado, quantos bytes consumiu e mate conexões específicas.

Etapa 4: Logs do Sistema

Caminhos importantes no Shell para leitura com tail -f:

  • /var/log/system.log: Log geral do sistema.
  • /var/log/filter.log: Logs do Firewall (Blocos/Pass).
  • /var/log/dhcpd.log: Logs do DHCP.
  • /var/log/openvpn.log: Logs das VPNs.
  • /var/log/nginx.log: Logs do servidor web da GUI.

5. SOLUÇÃO DE PROBLEMAS (TROUBLESHOOTING)

Problema 1: "PHP ERROR: Type: 1, File: /etc/inc/..."

  • Causa: Corrupção de arquivos ou disco cheio.
  • Solução:
    1. Verifique espaço em disco: df -h.
    2. No console, escolha Opção 16 (Restart PHP-FPM).
    3. Se persistir, reforce update via console opção 13.

Problema 2: Alta Latência / Perda de Pacotes

  • Causa: Hardware insuficiente (Mbuf exhaustion) ou loop de rede.
  • Solução:
    1. Verifique uso de CPU (top -aSH).
    2. Verifique interrupções (vmstat -i). Se uma placa de rede gera 20k+ interrupts, pode ser defeito ou driver ruim.
    3. Aumente Mbufs em System > Advanced > Networking se tiver RAM sobrando.

Problema 3: Boot Loop ou Filesystem Error

  • Solução:
    1. Boot no modo Single User (s no boot loader).
    2. Execute fsck -y / para corrigir o sistema de arquivos (apenas UFS). ZFS geralmente se autocorrige ou exige scrub.

6. DADOS TÉCNICOS

Comando Função Exemplo
pfctl -d Desativa Firewall Emergência
viconfig Edita config.xml Uso Avançado
top Monitor de Processos Ver carga

7. VALIDAÇÃO FINAL (Definição de Pronto)

  • Consegue acessar via SSH?
  • O comando tcpdump mostra tráfego?
  • Sabe onde restaurar um backup pelo console (Opção 15)?
  • Logs estão acessíveis e legíveis?