O pfBlockerNG é um dos pacotes mais úteis do pfSense e também um dos que mais geram problema quando configurado no impulso. Ele bloqueia tráfego por listas de IP, por país e por domínio, o que reduz ruído e superfície de ataque. Mal ajustado, ele bloqueia o cliente, o fornecedor e o serviço em nuvem que a empresa usa, e ninguém entende por quê.
Este guia explica o que o pfBlockerNG faz, como funcionam o bloqueio por IP, o GeoIP e o DNSBL, e como usar cada recurso sem quebrar acesso legítimo. A meta é ganhar proteção real sem transformar o firewall em fonte de chamados.
O que é o pfBlockerNG
O pfBlockerNG é um pacote adicional do pfSense, instalado pelo System > Package Manager e configurado em Firewall > pfBlockerNG. Ele consome feeds de endereços IP e de domínios com má reputação, mantém essas listas atualizadas de forma automática por uma tarefa agendada (cron) e aplica o bloqueio no firewall e no resolvedor de DNS. Em vez de você catalogar ameaças à mão, ele usa listas mantidas pela comunidade e por projetos de inteligência de ameaças.
Ele atua em duas frentes que vale separar na cabeça. A parte de IP e GeoIP trabalha na camada de firewall, decidindo quais endereços podem trocar pacotes com a sua rede. A parte de DNSBL trabalha na resolução de nomes, impedindo que domínios maliciosos sequer sejam resolvidos.
Bloqueio por lista de IP
O bloqueio por IP usa feeds de endereços associados a atividade maliciosa: redes de ataque conhecidas, fontes de spam, servidores de comando e controle e afins. O pfBlockerNG baixa essas listas, junta em tabelas e cria regras que barram o tráfego de e para esses endereços. Isso corta uma fatia grande do ruído automatizado que bate na WAN o tempo todo.
A força do recurso depende da qualidade das listas escolhidas. Listas boas e bem mantidas agregam proteção com pouco falso positivo. Empilhar dezenas de feeds duvidosos infla o consumo de memória e aumenta a chance de bloquear algo legítimo. Comece com poucas listas confiáveis e cresça com critério.
GeoIP: bloquear ou permitir por país
O GeoIP permite decidir tráfego com base no país de origem ou destino do endereço. Se a sua empresa não faz negócio com determinadas regiões e não espera acesso vindo delas, bloquear esses países reduz a superfície exposta de serviços publicados. É um filtro grosso, mas eficaz contra varredura em massa.
Dois cuidados são importantes. O primeiro é que o GeoIP usa a base de geolocalização da MaxMind, que hoje exige uma chave de licença gratuita (MaxMind license key) informada na aba IP do pfBlockerNG para manter os dados atualizados. Sem essa chave, os dados envelhecem e o download da base falha. O segundo é lembrar que serviços em nuvem, CDNs e provedores de e-mail podem originar tráfego de países que você não esperava. Bloquear por país sem mapear essas dependências gera falha difícil de diagnosticar, do tipo em que um webhook para de chegar sem erro aparente.
DNSBL: barrar domínios maliciosos na resolução
O DNSBL trabalha junto com o resolvedor de DNS do pfSense. Ele usa listas de domínios ligados a malware, phishing, rastreamento e publicidade agressiva, e responde a essas consultas com um endereço nulo. Na prática, quando um dispositivo da rede tenta acessar um domínio malicioso, o nome simplesmente não resolve, e a conexão morre antes de começar.
Esse mecanismo é eficiente porque age cedo, na resolução do nome, antes de qualquer pacote sair para o destino. Ele complementa o bloqueio por IP: um cobre o endereço, o outro cobre o nome. Para ambientes que já usam DNS filtrado, o DNSBL soma bem com o que o guia sobre DNS seguro para empresas descreve.
O risco real: falso positivo
O maior problema do pfBlockerNG não é técnico, é operacional. Uma configuração agressiva demais bloqueia um serviço legítimo, e o sintoma chega disfarçado: um sistema que parou de sincronizar, um e-mail que não sai, um fornecedor que "está fora do ar". Como o bloqueio é silencioso, ninguém liga o problema ao firewall de imediato.
A defesa contra isso é método. Configure a ação da lista como Alert em vez de Deny antes de bloquear de fato, acompanhe os relatórios em Firewall > pfBlockerNG > Reports e na aba Alerts para ver o que seria barrado, mantenha uma lista de permissões (custom whitelist) para destinos críticos conhecidos e documente cada feed ativado. Segurança que derruba a operação não é segurança, é indisponibilidade com outro nome.
Como implantar sem quebrar a rede
- Comece com poucas listas de IP confiáveis, não com dezenas de feeds de uma vez.
- Ative primeiro em modo de alerta e observe os relatórios antes de bloquear.
- Mapeie dependências de nuvem, e-mail e CDN antes de aplicar GeoIP.
- Mantenha a base MaxMind atualizada com a chave de licença gratuita.
- Crie uma lista de permissões para destinos críticos e conhecidos.
- Revise periodicamente o consumo de memória e o volume de bloqueios.
Onde o pfBlockerNG se encaixa na defesa
O pfBlockerNG é uma camada de reputação, não uma solução completa. Ele corta ruído e barra fontes conhecidamente ruins, o que libera atenção e recursos para o que realmente importa. Ele não inspeciona o conteúdo do tráfego nem detecta ataque direcionado, tarefa que fica com IDS e IPS como o Suricata.
A combinação é o que dá resultado. O pfBlockerNG reduz o volume de tentativas, o hardening fecha o que não precisa estar aberto e o IDS e o IPS olham o que sobra com mais profundidade. Cada camada faz uma parte, e nenhuma substitui a outra.
Custo em desempenho e memória
Filtragem por listas custa recurso. Cada feed de IP ocupa memória nas tabelas do firewall, e listas muito grandes de DNSBL pesam no resolvedor. Em hardware modesto, empilhar feeds sem critério degrada o desempenho e, no limite, chega a instabilizar o equipamento. Dimensionar a memória contando com o pfBlockerNG evita essa surpresa.
A recomendação prática é proporcional ao ambiente: use o conjunto de listas que o hardware sustenta com folga e cresça observando o consumo. Mais feeds não é sinônimo de mais proteção, principalmente quando a máquina não aguenta manter tudo carregado com estabilidade.
Onde a OpenSourceBrasil entra
Configurar o pfBlockerNG para proteger sem atrapalhar exige conhecer as dependências da empresa e ajustar as listas ao risco real do ambiente. A OpenSourceBrasil implanta e ajusta o pfBlockerNG dentro do trabalho de segurança de redes, com listas escolhidas a dedo, período de observação antes do bloqueio e revisão contínua para evitar falso positivo.