# Documentação: PFSense by SNMP **Template:** PFSense by SNMP **Descrição:** Template para monitoramento do pfSense via SNMP Configuração: 1. Habilite o daemon SNMP em Services na interface web do pfSense: https://docs.netgate.com/pfsense/en/latest/services/snmp.html 2. Configure a regra de firewall para permitir acesso do Zabbix Proxy/Server via SNMP: https://docs.netgate.com/pfsense/en/latest/firewall/index.html#managing-firewall-rules 3. Associe o template ao host. MIBs usadas: BEGEMOT-PF-MIB HOST-RESOURCES-MIB Gerado originalmente pela ferramenta oficial "Templator", Otimizado para Padrão Gold (Arthur) ## Itens Monitorados ### Itens Globais - **Coleta Raw (SNMP): Interfaces de Rede PF** (`net.if.pf.walk`) - **Coleta Raw (SNMP): Interfaces de Rede (IF-MIB)** (`net.if.walk`) - **Status do servidor DHCP** (`pfsense.dhcpd.status`) - **Status do servidor DNS** (`pfsense.dns.status`) - **Estado do processo Nginx (Web)** (`pfsense.nginx.status`) - **Pacotes com offset incorreto (Bad Offset)** (`pfsense.packets.bad.offset`) - **Pacotes Fragmentados** (`pfsense.packets.fragment`) - **Pacotes correspondentes a uma regra de filtro** (`pfsense.packets.match`) - **Pacotes descartados por limite de memória** (`pfsense.packets.mem.drop`) - **Pacotes Normalizados** (`pfsense.packets.normalize`) - **Pacotes Curtos (Short Packets)** (`pfsense.packets.short`) - **Status de execução do Packet Filter** (`pfsense.pf.status`) - **Coleta Raw (SNMP): Contadores PF (pfCounter)** (`pfsense.pf_counters.walk`) - **Contagem de regras de Firewall** (`pfsense.rules.count`) - **Tabela de Rastreamento: Origens Atuais (Source Tracking)** (`pfsense.source.tracking.table.count`) - **Tabela de Rastreamento: Limite (Limit)** (`pfsense.source.tracking.table.limit`) - **Tabela de Rastreamento: Utilização (%)** (`pfsense.source.tracking.table.pused`) - **Tabela de Estados: Atual (State Table)** (`pfsense.state.table.count`) - **Tabela de Estados: Limite (Limit)** (`pfsense.state.table.limit`) - **Tabela de Estados: Utilização (%)** (`pfsense.state.table.pused`) - **Coleta Raw (SNMP): Software Instalado (hrSWRun)** (`pfsense.sw.walk`) - **Disponibilidade do Agente SNMP** (`zabbix[host,snmp,available]`) ### Regras de Descoberta (LLD) #### Descoberta de interfaces de rede (`pfsense.net.if.discovery`) - **Protótipos de Itens:** - Interface [{#IFNAME}({#IFALIAS})]: Tráfego IPv4 de entrada bloqueado (`net.if.in.block.v4.bps[{#SNMPINDEX}]`) - Interface [{#IFNAME}({#IFALIAS})]: Pacotes IPv4 de entrada bloqueados (`net.if.in.block.v4.pps[{#SNMPINDEX}]`) - Interface [{#IFNAME}({#IFALIAS})]: Tráfego IPv6 de entrada bloqueado (`net.if.in.block.v6.bps[{#SNMPINDEX}]`) - Interface [{#IFNAME}({#IFALIAS})]: Pacotes IPv6 de entrada bloqueados (`net.if.in.block.v6.pps[{#SNMPINDEX}]`) - Interface [{#IFNAME}({#IFALIAS})]: Pacotes de entrada descartados (`net.if.in.discards[{#SNMPINDEX}]`) - Interface [{#IFNAME}({#IFALIAS})]: Pacotes de entrada com erros (`net.if.in.errors[{#SNMPINDEX}]`) - Interface [{#IFNAME}({#IFALIAS})]: Tráfego IPv4 de entrada permitido (`net.if.in.pass.v4.bps[{#SNMPINDEX}]`) - Interface [{#IFNAME}({#IFALIAS})]: Pacotes IPv4 de entrada permitidos (`net.if.in.pass.v4.pps[{#SNMPINDEX}]`) - Interface [{#IFNAME}({#IFALIAS})]: Tráfego IPv6 de entrada permitido (`net.if.in.pass.v6.bps[{#SNMPINDEX}]`) - Interface [{#IFNAME}({#IFALIAS})]: Pacotes IPv6 de entrada permitidos (`net.if.in.pass.v6.pps[{#SNMPINDEX}]`) - Interface [{#IFNAME}({#IFALIAS})]: Bits recebidos (`net.if.in[{#SNMPINDEX}]`) - Interface [{#IFNAME}({#IFALIAS})]: Tráfego IPv4 de saída bloqueado (`net.if.out.block.v4.bps[{#SNMPINDEX}]`) - Interface [{#IFNAME}({#IFALIAS})]: Pacotes IPv4 de saída bloqueados (`net.if.out.block.v4.pps[{#SNMPINDEX}]`) - Interface [{#IFNAME}({#IFALIAS})]: Tráfego IPv6 de saída bloqueado (`net.if.out.block.v6.bps[{#SNMPINDEX}]`) - Interface [{#IFNAME}({#IFALIAS})]: Pacotes de saída descartados (`net.if.out.discards[{#SNMPINDEX}]`) - Interface [{#IFNAME}({#IFALIAS})]: Pacotes de saída com erros (`net.if.out.errors[{#SNMPINDEX}]`) - Interface [{#IFNAME}({#IFALIAS})]: Tráfego IPv4 de saída permitido (`net.if.out.pass.v4.bps[{#SNMPINDEX}]`) - Interface [{#IFNAME}({#IFALIAS})]: Pacotes IPv4 de saída permitidos (`net.if.out.pass.v4.pps[{#SNMPINDEX}]`) - Interface [{#IFNAME}({#IFALIAS})]: Tráfego IPv6 de saída permitido (`net.if.out.pass.v6.bps[{#SNMPINDEX}]`) - Interface [{#IFNAME}({#IFALIAS})]: Pacotes IPv6 de saída permitidos (`net.if.out.pass.v6.pps[{#SNMPINDEX}]`) - Interface [{#IFNAME}({#IFALIAS})]: Bits enviados (`net.if.out[{#SNMPINDEX}]`) - Interface [{#IFNAME}({#IFALIAS})]: Contagem de referências de regras (`net.if.rules.refs[{#SNMPINDEX}]`) - Interface [{#IFNAME}({#IFALIAS})]: Velocidade (`net.if.speed[{#SNMPINDEX}]`) - Interface [{#IFNAME}({#IFALIAS})]: Status operacional (`net.if.status[{#SNMPINDEX}]`) - Interface [{#IFNAME}({#IFALIAS})]: Tipo de interface (`net.if.type[{#SNMPINDEX}]`) ## Alertas (Triggers) ### Triggers Globais - [AVERAGE] **🚨 DHCP Parado: Servidor DHCP não está em execução** - [AVERAGE] **🚨 DNS Parado: Servidor DNS (Unbound) não está em execução** - [AVERAGE] **🚨 WebServer Parado: Nginx não está rodando** - [WARNING] **🧩 Fragmentação Excessiva IPv4** - [WARNING] **🛡️ Possível Ataque/Scan: Pico de Bloqueios** - [HIGH] **🚨 Firewall Desligado: Packet Filter inativo** - [WARNING] **⚠️ Tabela de Rastreamento Cheia: Uso elevado ({ITEM.LASTVALUE1}%)** - [HIGH] **⏳ Source Tracking cheia em < 1h (Previsão)** - [WARNING] **🔥 Tabela de Estados Crítica: Risco de bloqueio ({ITEM.LASTVALUE1}%)** - [HIGH] **⏳ Tabela de Estados cheia em < 1h (Previsão)** - [WARNING] **🚨 Falha SNMP: Sem coleta de dados no pfSense** ### Protótipos de Triggers (LLD) **Regra: Descoberta de interfaces de rede** - [WARNING] **🐢 Congestionamento: Descartes na interface {#IFNAME}** - [WARNING] **⚠️ PFSense: Interface [{#IFNAME}({#IFALIAS})]: Alta taxa de erros de entrada** - [WARNING] **⚠️ PFSense: Interface [{#IFNAME}({#IFALIAS})]: Alta taxa de erros de saída** - [AVERAGE] **🔌 PFSense: Interface [{#IFNAME}({#IFALIAS})]: Link indisponível**