Spam Prevention · 3 min read · Oct 24, 2025
Greylisting - combater Spam com Postgrey e Postfix no Debian e Ubuntu
Já ouviu falar de greylisting?
Existem inúmeras maneiras de evitar que spam chegue à sua caixa de entrada, a mais popular provavelmente é o SpamAssassin. O greylisting não substituirá softwares de filtragem de spam como o SA, mas servirá como um poderoso primeiro obstáculo para o spam, reduzindo assim a quantidade de spam que entra no sistema. Deve ser visto como um complemento a todos os outros recursos anti-spam do Postfix.
Além do óbvio benefício de reduzir a quantidade de spam na sua caixa de entrada, ele dará ao seu scanner de vírus e ao SpamAssassin menos trabalho a fazer. Tanto a filtragem de spam quanto a verificação de vírus são atividades intensivas em CPU e impedir o spam na porta pode potencialmente economizar dinheiro devido à redução dos requisitos de hardware.
Greylisting, em resumo, significa que quando alguém quer entregar um e-mail ao seu servidor de e-mail, ele simplesmente responderá -Por favor, volte mais tarde-. Isso é algo que todos os servidores de e-mail compatíveis com RFC fazem e, quando eles voltam, o e-mail é aceito. A maioria dos spammers e softwares de spam não são compatíveis e não têm paciência suficiente para tentar novamente. Você ficará surpreso ao ver quão eficaz isso é. De qualquer forma, siga os links abaixo para realmente aprender sobre isso. Como sempre, há prós e contras, então faça sua lição de casa antes de colocá-lo em um servidor de produção.
Greylisting.org
Greylisting na Wikipedia
Existem várias implementações de greylisting e pode ser feito com a maioria dos servidores. Vou mostrar como fazer isso em um Debian com Postfix rodando como MTA com Postgrey. Os passos deste guia funcionarão para todas as versões do Debian, do Debian 3.1 (sarge) ao 8 (jessie).
Instalar Postgrey
Eu assumo que você tem uma instalação do Postfix funcionando.
Se você usar apt-get para instalar o Postgrey, os requisitos serão tratados automaticamente. No entanto, se você instalar a partir do código-fonte, terá que verificar manualmente.
Os requisitos para o Postgrey são:
- Perl >= 5.6.0
- Net::Server (Módulo Perl)
- IO::Multiplex (Módulo Perl)
- BerkeleyDB (Módulo Perl)
- Berkeley DB >= 4.1 (Biblioteca)
Eu recomendo instalar o pacote Postgrey com apt.
Primeiro, instalamos o pacote Postgrey com:
apt-get -y install postgreyIsso instalará o servidor Postgrey na sua máquina. Você pode querer mudar algumas configurações. A coisa mais irritante com o greylisting é que ele impõe um atraso na entrega dos e-mails. Se você achar que o atraso de 5 minutos, que é o padrão, é um pouco longo demais, pode configurá-lo para 1 minuto. Você pode mudar isso editando /etc/default/postgrey. Altere o padrão:
POSTGREY_OPTS="--inet=127.0.0.1:10023"para:
POSTGREY_OPTS="--inet=127.0.0.1:10023 --delay=60"No entanto, eu sugeriria mudar os padrões apenas depois de verificar que tudo funciona como esperado. Também vale a pena notar que um atraso mais curto reduzirá a eficiência do greylisting. Aumentar o atraso para uma hora será mais difícil para o spam, mas também mais difícil para a paciência dos seus usuários. :)
Agora inicie o servidor de políticas do Postgrey com:
service postgrey startO serviço de políticas do Postgrey deve agora estar em funcionamento na porta 10023.
Agora vamos configurar o Postfix para usar o Postgrey.
Configurar Postfix
Os arquivos de configuração do Postfix estão localizados em /etc/postfix. Edite /etc/postfix/main.cf e adicione check_policy_service inet:127.0.0.1:10023 às smtpd_recipient_restrictions. Deve ficar algo assim:
smtpd_recipient_restrictions = permit_sasl_authenticated,
permit_mynetworks,
reject_unauth_destination,
check_policy_service inet:127.0.0.1:10023Agora tudo o que temos que fazer é recarregar a configuração do Postfix com:
postfix reloadSimples e bom. Sente-se e aproveite a ausência de spam :)
//Erk
Receba novas postagens na sua caixa de entrada
Sem spam. Cancele a assinatura a qualquer momento.