Pular para o conteúdo
Segurança de redes

pfBlockerNG no pfSense: bloqueio de IP, GeoIP e filtragem de ameaças

Por equipe técnica da OpenSourceBrasil12 min de leituraAtualizado em

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.

Guias relacionados

Continue aprofundando os temas de firewall, pfSense, VPN e segurança de redes.

Segurança de redes

DNS seguro para empresas

O DNS é uma camada estratégica de segurança, muitas vezes esquecida. Veja filtragem, logs, resiliência e boas práticas.

Ler guia
Segurança de redes

Hardening de firewall

O firewall protege a rede, mas também precisa proteger a si mesmo. Veja as configurações essenciais de hardening.

Ler guia
Monitoramento

IDS e IPS com pfSense

IDS e IPS adicionam uma camada de detecção e prevenção, mas exigem ajuste fino. Veja quando usar, limites e cuidados.

Ler guia
Monitoramento

Logs de firewall e monitoramento

Sem logs, incidentes passam despercebidos. Veja o que registrar, como reter e como transformar eventos em visibilidade.

Ler guia

Dúvidas comuns

Perguntas frequentes

O que é o pfBlockerNG e para que serve?

É um pacote do pfSense que faz filtragem baseada em listas. Ele bloqueia tráfego por endereços IP com má reputação, por país (GeoIP) e por domínios maliciosos (DNSBL), usando feeds atualizados de forma automática. Serve para reduzir ruído e superfície de ataque na rede.

Qual a diferença entre bloqueio por IP e DNSBL no pfBlockerNG?

O bloqueio por IP age na camada de firewall e barra o tráfego de e para endereços conhecidamente ruins. O DNSBL age no resolvedor de DNS e impede que domínios maliciosos sejam resolvidos, cortando a conexão antes de qualquer pacote sair. Os dois se complementam.

O GeoIP do pfBlockerNG precisa de licença?

A base de geolocalização vem da MaxMind, que hoje exige uma chave de licença gratuita para manter os dados atualizados. A chave é sem custo, mas precisa ser configurada. Sem ela, os dados de GeoIP envelhecem e perdem precisão.

O pfBlockerNG pode bloquear acesso legítimo?

Pode, e esse é o risco principal. Listas agressivas ou GeoIP sem mapear dependências de nuvem, e-mail e CDN acabam barrando serviços que a empresa usa. O sintoma costuma vir disfarçado. Por isso vale ativar em modo de alerta primeiro, observar os relatórios e manter uma lista de permissões.

O pfBlockerNG substitui o IDS e o IPS?

Não. O pfBlockerNG é uma camada de reputação que barra fontes conhecidamente ruins, mas não inspeciona o conteúdo do tráfego nem detecta ataque direcionado. Essa análise mais profunda fica com IDS e IPS, como o Suricata. As camadas se somam, não se substituem.

O pfBlockerNG deixa o pfSense mais lento?

Pode pesar, sim. Cada feed de IP ocupa memória e listas grandes de DNSBL pesam no resolvedor. Em hardware modesto, empilhar feeds sem critério degrada o desempenho. O ideal é usar o conjunto de listas que o hardware sustenta com folga e crescer observando o consumo.

O DNSBL do pfBlockerNG funciona com Unbound e com Resolver ou Forwarder?

O DNSBL se integra ao Unbound, o DNS Resolver do pfSense, tanto em modo resolvedor quanto encaminhador. Ele injeta as listas via Python mode ou Unbound mode e responde as consultas bloqueadas com um endereço nulo. Se o resolvedor estiver desligado, ou se os clientes usarem um DNS externo direto sem passar pelo pfSense, o DNSBL não tem como agir.

Próximo passo

Precisa de apoio especializado no seu ambiente?

Cada rede é diferente. Fale com um especialista em pfSense por e-mail e receba uma avaliação do seu cenário, sem compromisso.