---
title: "Combater o spam de backscatter ao nível do servidor"
date: 2019-09-10
language: pt
topics: ["cloud", "cyber-security", "howto", "linux", "networking", "server"]
source_url: https://willem.com/pt/2019-09-10_combater-o-spam-de-backscatter-ao-nivel-do-servidor/
---
# Combater o spam de backscatter ao nível do servidor

*Configurar o Postfix para bloquear spam antes de entrar no servidor*

> Este mês tive de lidar com spam de backscatter, que afetava um dos servidores de correio que giro. Como engenheiro de servidores, garanto que os servidores não enviam spam e que o e-mail recebido é filtrado. Apesar de todos os esforços, este servidor continuava a ser posto em listas negras por enviar spam para o iCloud, o Office 365 e o Google Gmail for Business (G Suite). Acompanha-me para descobrires o que causou isto e como resolver.

## O problema

O servidor é um servidor de correio Postfix em Debian GNU/Linux, com todas as últimas atualizações e correções de segurança. É usado por clientes legítimos, que só o podem usar com autenticação adequada.

### Evitar ser um relay aberto

A autenticação individual dos utilizadores num servidor de correio é uma medida importante contra o abuso do servidor. Se for enviado spam, podes ver que utilizador está a causar o problema nos registos do servidor de correio. Em termos técnicos, isto significa que evitas que o servidor se torne «um relay aberto». O Postfix oferece muitas definições para limitar_o_relay_SMTP_com_controlo_de_acesso (http://www.postfix.org/SMTPD_ACCESS_README.html).

### Limitar o ritmo das contas de correio (comprometidas)

O abuso do servidor por utilizadores individuais acontece quando o computador deles apanha um vírus ou quando a palavra-passe é intercetada. Isso pode acontecer quando acedes ao correio por uma rede WiFi insegura, sem encriptação (TLS/SSL). Para situações destas, é boa ideia limitar o número de e-mails que cada utilizador pode enviar. Podes usar os Parâmetros_de_configuração_do_Postfix (http://www.postfix.org/postconf.5.html) (como *smtpd_client_message_rate_limit, smtpd_client_connection_rate_limit* e *smtpd_client_recipient_rate_limit*) ou uma firewall para Postfix como o Postwfd (https://postfwd.org).

### O servidor entra na lista negra «backscatterer.org»

Apesar de todas as medidas contra o abuso de spam, o servidor continuou a ser listado em http://backscatter.org por enviar spam. Quando um servidor entra numa lista negra, os outros servidores deixam de confiar nele e consideram todas as mensagens suspeitas. Isto pode fazer com que as tuas mensagens (legítimas) sejam vistas pelos outros servidores como spam (falsos positivos). Para perceberes porque é que isto aconteceu, primeiro tens de perceber o que é o spam de backscatter.

## O que é o spam de backscatter?

O spam de backscatter são mensagens de devolução automáticas e incorretas enviadas pelo servidor de correio, normalmente como efeito secundário de spam recebido.

O backscatter acontece quando os spammers falsificam o endereço do remetente. Enviam uma mensagem que esperam que seja devolvida, usando como remetente o endereço de outra pessoa. Quando a mensagem é devolvida, o servidor de correio devolve-a ao remetente falsificado... o que faz com que o servidor entregue, na prática, spam a esse endereço.

![Cenário simples de backscatter: o servidor de correio devolve a mensagem a um endereço de remetente falsificado](https://willem.com/global/images/ce079c524f46.webp)

O cenário simples de backscatter é aquele em que uma mensagem é devolvida ao remetente errado. É um cenário fácil de resolver: configuras o servidor para não enviar mensagens de devolução e para responder com um código de erro SMTP.

![Evitar mensagens de devolução de backscatter ao responder antes com códigos de erro SMTP](https://willem.com/global/images/ecab1d4c0125.webp)

Infelizmente, há outro cenário (mais difícil) que leva o teu servidor de correio a enviar spam de backscatter. Acontece quando alguém no teu servidor configura a sua conta de correio para reencaminhar o e-mail para outro endereço. O segundo servidor pode ter um filtro de spam mais rigoroso, que faz com que as mensagens sejam bloqueadas ao serem reencaminhadas. O teu servidor de correio informa então o remetente original de que o reencaminhamento falhou, e isso causa spam de backscatter.

![Causar spam de backscatter quando o primeiro servidor de correio reencaminha e-mail para outro servidor que bloqueia a mensagem](https://willem.com/global/images/b76507d467ad.webp)

O cenário do reencaminhamento é muito mais difícil de resolver, porque possivelmente não controlas o outro servidor de correio nem as definições do filtro de spam dele. E o pior é que muitas vezes há algum atraso entre aceitar a mensagem e reencaminhá-la, o que torna impossível esperar pela resposta do outro servidor de correio.

### Evitar o spam de backscatter

A única forma de evitar totalmente o spam de backscatter é ser muito rigoroso no primeiro servidor de correio, na fase inicial da ligação SMTP. Isto resolve o desafiante «cenário do reencaminhamento», ao ser muito seletivo sobre as mensagens que são reencaminhadas.

![Evitar o spam de backscatter ao verificar todas as mensagens antes de as reencaminhar para outro servidor](https://willem.com/global/images/75d348304794.webp)

### Como bloquear spam antes de entrar no servidor

A melhor maneira de evitar o spam de backscatter é bloqueá-lo antes de entrar na (cadeia de) servidor(es).

Tradicionalmente, os servidores usam filtros de spam avançados, como o SpamAssassin, para analisar as mensagens uma a uma. Isto cria uma carga adicional no servidor de correio.

É muito mais fácil olhar para o remetente (por exemplo, se usa um chapéu vermelho) para a filtragem inicial. O remetente está numa lista negra? Usa uma app de correio «normal», ou as mensagens estão a ser enviadas por um vírus ou malware? Podes perceber muita coisa pela «linguagem» que o remetente fala.

![Implementar restrições SMTP rigorosas no Postfix: captura de ecrã anotada do main.cf](https://willem.com/global/images/39ef96cae1a9.webp)

No Postfix podes especificar restrições SMTP no ficheiro de configuração *main.cf*. Existem verificações que servem para bloquear mensagens. É boa ideia seguir a lógica do filtro do «fácil para o difícil», começando pelo que se pode verificar sem consultar servidores externos. Isto reduz o tráfego de rede e a carga. Só se uma mensagem passar todas as verificações é que é autorizada para entrega (ou reencaminhamento).

Na entrega podes aplicar filtros de spam adicionais, complexos (e específicos do utilizador), com ferramentas como o SpamAssassin (https://spamassassin.apache.org) ou a Filtragem_bayesiana (https://en.wikipedia.org/wiki/Recursive_Bayesian_estimation). Ao reduzir o fluxo de mensagens de spam óbvias, estes filtros que consomem muitos recursos fazem o seu trabalho com muito mais eficiência.

## Conclusão

Combater o spam ao nível do servidor é um jogo desafiante, porque os spammers são cada vez mais criativos a abusar dos mecanismos dos servidores de correio. Se o teu servidor entrar numa lista negra por spam de backscatter, tens de ter cuidado com os cenários de reencaminhamento. Fica de olho nas listas negras para veres se o teu servidor está a causar problemas.

Bloqueia as mensagens com códigos de erro, em vez de as devolver ao remetente (bounce). Configura o servidor com uma política de entrega rigorosa. A melhor maneira de evitar o spam de backscatter é bloquear as mensagens antes de entrarem no servidor de correio, agora já sabes como.
