O que é SPF (Sender Policy Framework) e por que devo configurar corretamente?

O SPF (Sender Policy Framework) é um mecanismo para combater a falsificação de endereço de e-mails, o mecanismo permite:

1 – o administrador de um domínio: definir e publicar uma política SPF, onde são designados os endereços das máquinas autorizadas a enviar mensagens em nome deste domínio;

2 – o administrador de um serviço de e-mail: estabelecer critérios de aceitação de mensagens em função da checagem das políticas SPF publicadas para cada domínio.

Ao publicar uma política de SPF, o administrador de um domínio está autorizando determinados MTAs a enviar e-mails em nome deste domínio. O objetivo é evitar que terceiros enviem mensagem indevidamente em nome de seu domínio, e que mensagens de erro (bounces) causadas por spam com envelope falso sejam enviadas para o seu servidor.

O administrador de um MTA que consulte a política SPF do domínio do remetente de um e-mail, como definido no envelope, poderá rejeitar ou marcar como suspeita uma mensagem que não satisfaça à política SPF daquele domínio.

A especificação completa de como expressar uma política SPF pode ser encontrada no site de referência do SPF (https://www.openspf.org/) e na RFC 4408: “Sender Policy Framework (SPF) for Authorizing Use of Domains in E-Mail, Version 1” (http://tools.ietf.org/html/rfc4408).

Exemplo:

example.com.   IN            TXT        “v=spf1 a mx ip4:192.0.2.32/27 -all”

Neste caso a política estabelece que pode enviar mensagens em nome do domínio example.com uma máquina que satisfaça um dos seguintes critérios:

seu endereço IP deve ser um RR tipo A do domínio example.com (a);
seja designada como MX do domínio example.com (mx); ou
pertença ao bloco de endereços IP 192.0.2.32/27 (ip4).
A cláusula “-all” diz que devem ser recusados (“-“, prefixo Fail) e-mails partindo de qualquer outro endereço IP (all).

Todas as opções de prefixos são:

“+” Pass
“-” Fail
“~” SoftFail
“?” Neutral

O prefixo é opcional, e se omitido o valor utilizado é o “+” (Pass).

A cláusula “all” deve ser sempre a cláusula mais à direita. Ela define qual resposta será retornada em uma consulta SPF, caso nenhuma das outras cláusulas se aplique.

A configuração para e-mails do Google é importante para que suas mensagens são sejam identificadas como SPAM e sejam entregues ao destinatários corretamente, segue as configuração para o Google Apps:

Para criar um registro SPF para um domínio:

Faça login no console administrativo do seu domínio.

Localize a página a partir da qual você de deseja atualizar os registros DNS.

Talvez seja necessário ativar configurações avançadas.

Crie um registro TXT contendo este texto: v=spf1 include:_spf.google.com ~all

Você pode introduzir o IP diretamente: v=spf1 ip4:83.206.106.17 ~all

Publicar um registro SPF usando -all em vez de ~all pode gerar problemas de entrega. Consulte Intervalos de endereço IP do Google para detalhes sobre os endereços de servidores de e-mail do Google Apps.Para autorizar mais um servidor de e-mail, adicione o endereço IP do servidor antes do argumento ~all usando o formato ip4:endereço ou ip6:endereço.

Se seu registro também exigir uma configuração de host, como @, consulte os registros TXT para uma lista de instruções precisas de provedores de domínios específicos.

Salve suas alterações.

As alterações em registros DNS podem levar até 48 horas para serem propagadas pela Internet.

Referencias:

Registro.br: https://www.antispam.br/admin/spf/

Open SPF (Sender Policy Framework): https://www.openspf.org/

 

Configurar registros SPF para funcionar com o Google Apps

Para criar um registro SPF (Sender Policy Framework) para um domínio:

  1. Faça login no console administrativo do seu domínio.
  2. Localize a página a partir da qual você de deseja atualizar os registros DNS.
    Talvez seja necessário ativar configurações avançadas.
  3. Crie um registro TXT contendo este texto: v=spf1 include:_spf.google.com ~allPublicar um registro SPF usando -all em vez de ~all pode gerar problemas de entrega. Consulte Intervalos de endereço IP do Google para detalhes sobre os endereços de servidores de e-mail do Google Apps.Para autorizar mais um servidor de e-mail, adicione o endereço IP do servidor antes do argumento ~all usando o formato ip4:endereço ou ip6:endereço. Consulte Sender Policy Framework para mais detalhes sobre o formato SPF.
  4. Se seu registro também exigir uma configuração de host, como @, consulte os registros TXT para uma lista de instruções precisas de provedores de domínios específicos.
  5. Salve suas alterações.
    As alterações em registros DNS podem levar até 48 horas para serem propagadas pela Internet.
Observação: vários registros SPF não são recomendados e podem causar problemas de entrega e de classificação de spam. Consulte Vários registros SPF para mais informações.

Se você tiver dificuldade para criar um registro SPF, entre em contato com seu provedor de domínio para receber ajuda.

Vários registros SPF

Vários registros SPF não são recomendados e podem causar problemas de entrega e de classificação de spam. De acordo com as especificações do RFC, um nome de domínio não pode ter vários registros, pois isso pode fazer com que a verificação de autorização selecione mais de um registro.

Se precisar autorizar mais de um servidor de e-mail para seu domínio, recomendamos que você atualize o registro SPF existente em vez de criar vários registros.

Exemplo

v=spf1 ip4:83.206.106.17 ~all
v=spf1 include:_spf.google.com ~all

Esse texto fará a verificação de SPF falhar porque há vários registros. Em vez disso, adicione o endereço IP do servidor de e-mail antes do argumento ~all usando o formato ip4:address ou ip6:address para adicionar o servidor ao registro SPF existente:

v=spf1 ip4:83.206.106.17 include:_spf.google.com ~all

Para mais detalhes sobre de como configurar registros SPF para funcionar com o Google Apps, consulte Sender Policy Framework.