Aprenda o que é e como funciona uma greylisting
A batalha contra o SPAM, é algo que já existe há muito tempo. Tanto tempo quanto o SPAM apresentou-se como uma ameaça e um incômodo. Ao longo de anos, uma série de ferramentas e serviços surgiram com intuito de coibir sua prática e de minimizar seus impactos.
Se você está aqui, provavelmente está em um dos dois lados do trânsito de e-mails, sendo afetado porque não consegue enviar ou receber e quer mais informações de como isso pode lhe ajudar ou como administrar melhor essa ferramenta que tem ganhado adeptos rapidamente nos últimos anos.
O que é greylisting?
Greylisting é um meio termo entre blacklists e whitelists e por consequência recebeu o nome de greylisting.
Há uma pequena sutileza semântica envolvendo a questão. As greylists ou listas cinzas – em tradução literal – são as listas usadas pelas ferramentas de greylisting, que é o gerúndio do termo e que seria a ação correspondente ao uso de uma lista cinza ou uma greylist.
Para entender melhor o conceito, é preciso compreender o que são uma lista branca (whitelist) e uma lista negra (blacklist). Ambas são usadas no âmbito da troca de e-mail entre servidores.
Quando um servidor de e-mail recebe uma conexão SMTP de um outro servidor de e-mail, com a finalidade de receber uma mensagem, ele verifica se o endereço IP do servidor remetente e/ou domínio usado na conta de e-mail do remetente estão listados em alguma blacklist que ele é configurado para checar e caso esteja, a mensagem é recusada e um erro permanente com um código 5XX, é informado ao servidor que tentou entregar o e-mail e por conseguinte, devolvida ao usuário que efetuou o envio.
Em contraposição, se houver uma whitelist configurada no servidor do destinatário, ele também fará a verificação e caso o endereço IP do servidor remetente e/ou domínio usado pelo remetente e até mesmo um endereço de e-mail apenas, constarem da lista branca, a mensagem será recebida normalmente.
Já nos casos em que houver um serviço de greylisting configurado no servidor do destinatário, toda mensagem inédita, ou seja, cujo endereço de IP, endereço de e-mail do remetente e endereço de e-mail do destinatário nunca remeteram mensagens antes, essas informações são armazenadas em uma lista cinza e um erro temporário (código 4XX) é informado ao servidor remetente.
Esse processo, baseia-se no princípio de que todo servidor de e-mails quotidianos, tenta entregar novamente uma mensagem após determinado tempo, quando recebe um erro temporário como resposta a uma tentativa de entrega.
Já os servidores de SPAM, por padrão não o fazem, pois é comum o envio de grandes quantidades que podem chegar a casa dos milhões de mensagens e assim, todas as mensagens que não foram entregues na primeira tentativa, são descartados.
Um servidor de envio de SPAM, dado os volumes que ele manipula e o propósito, objetiva a quantidade de mensagens entregues rapidamente, em detrimento da efetividade das entregas individuais.
Portanto, o greylisting parte do pressuposto de que no caso de mensagens legítimas, o servidor remetente tentará entregá-las novamente e neste caso ele (servidor destinatário) as receberá na segunda tentativa ou posteriores.
Como funciona o greylisting?
Há uma série de sistemas que implementam o conceito de greylisting, com algumas variações de acordo com a empresa de hospedagem e suas necessidades e perfil dos seus usuários, mas em linhas gerais a maior parte dos sistemas têm os principais pontos em comum.
Basicamente o sistema consiste de um banco de dados e um conjunto de regras. O banco de dados, é resumidamente a lista cinza (greylist), ou seja, onde são armazenadas as informações relativas à primeira tentativa inédita de entrega de uma mensagem de e-mail e que costuma ser composta por data e horário da tentativa, o endereço de e-mail do remetente, o endereço IP do servidor, o endereço de e-mail do destinatário e dependendo das características, o tempo de autorização e a validade da permissão.
O tempo de autorização ou de revogação da greylist, refere-se ao tempo que o servidor de destino receberá a mensagem quando houver a segunda tentativa de entrega. Muitos estabelecem um tempo de 30 minutos, contando que geralmente a segunda tentativa de entrega não é feita antes de 60 minutos, mas esse tempo pode ser maior ou menor ou nem mesmo existir. Ele é determinado pelo administrador da ferramenta.
Quanto a validade, refere-se ao tempo em que o servidor receberá outras mensagens com a mesma combinação (e-mail do remetente, IP do remetente e e-mail do destinatário). É bastante comum estabelecer 30 dias e neste caso, durante esse período de tempo, todas as mensagens subsequentes e em iguais condições ao primeiro envio, serão recebidas imediatamente.
Vantagens das greylistings
O conjunto de regras é personalizável, de tal modo que o greylisting possa atuar conjuntamente com whitelists e blacklists e sendo assim, domínios, IPs e endereços de e-mail podem ser automaticamente autorizados em um primeiro envio, se estiveram em uma whitelist, ou podem ser automaticamente recusados se encontrados em uma blacklist.
As regras também podem estipular o tempo de autorização e validade das informações e para isso, é preciso saber data e hora da primeira tentativa. Dessa forma, um remetente que foi previamente autorizado, pode por exemplo, enviar durante um mês mensagens, sem que as mesmas fiquem retidas até uma nova tentativa de entrega.
Normalmente, os administradores de servidores costumam observar os logs das transações de e-mail, uma vez que há serviços de hospedagem que fornecem informações sobre a atuação de greylistings em seus servidores, como tempo de nova tentativa e até mesmo links com detalhes de suas políticas, de forma que se possa adequar tempos de novas entregas, entre outros aspectos do serviço de e-mail.
Por fim, há empresas de hospedagem que disponibilizam o greylisting para ativação individual em servidores de hospedagem compartilhada, o que significa que em um mesmo servidor, pode haver usuários com greylisting ativado e outros destivado.
Desvantagens das greylistings
Para aqueles que até agora não conheciam a ferramenta e seu conceito, pode parecer a solução definitiva para o problema do SPAM. No entanto, há particularidades que envolvem certos ambientes de hospedagem compartilhada e serviços gratuitos de e-mail, que tornam o greylisting um problema sério quanto ao recebimento de mensagens legítimas.
A questão ocorre porque algumas plataformas de hospedagem compartilhada e e-mail Marketing, podem usar diferentes endereços IPs para cada envio feito. Assim, uma mensagem que foi devolvida com um erro temporário, na segunda tentativa de envio poderá usar um IP diferente do usado no primeiro e sendo assim, também será recusada, pois o novo IP não constará da lista cinza.
Mais que isso, é usual que a cada nova tentativa que não é bem sucedida, o intervalo transcorrido para uma nova tentativa aumente, até que após um determinado número de tentativas e/ou o atingimento de um número de horas desde a primeira tentativa, a mensagem seja devolvida à caixa de entrada do remetente, desta vez com um erro permanente.
O mesmo acontece com os serviços de e-mail gratuitos, como Gmail, Outlook e Yahoo!. Mesmo nas opções pagas desses serviços, é comum que a cada nova tentativa, um novo IP seja usado.
A determinação de qual IP será usado a cada envio, é aleatória e baseada na disponibilidade no momento do reenvio. Resumindo, nestes casos, a não ser que ocorra uma coincidência, com atribuição de um IP anteriormente utilizado, a mensagem nunca chegará ao seu destino.
Outro inconveniente do greylisting, é o fato de que uma mensagem urgente, em seu primeiro envio, demorará um certo tempo para ser entregue e que corresponde no mínimo ao tempo configurado no servidor remetente para uma nova tentativa.
Isso geralmente acaba fazendo com que os remetentes deduzam erroneamente, que há algum tipo de erro ou problema com seu serviço de e-mail.
Tanto um lado (remetente), como o outro (destinatário), costuma atribuir responsabilidade de resolver a questão ao outro e enquanto não se encontra uma solução conciliatória, os usuários que enviam e recebem, acabam sendo penalizados ao perder um contingente de mensagens legítimas.
Conclusão
Em meio ao arsenal de serviços e ferramentas criados para controle de SPAM, o greylisting aparece como uma solução criativa baseada no comportamento padrão de servidores SMTP para envios quotidianos e envios em massa, com um grau de efetividade elevado, mas que também tem restrições em determinadas condições.