O que é um registo SPF e quais são os seus elementos?
SPF (Sender Policy Framework) é um registo DNS do tipo TXT que especifica quais servidores de correio estão autorizados a enviar e-mails em nome do seu domínio. Protege contra o spoofing — a falsificação do seu domínio por remetentes não autorizados.
Como funciona o SPF?
Quando o servidor do destinatário recebe uma mensagem, verifica o registo SPF do domínio do remetente. Compara o endereço IP do servidor que enviou o e-mail com a lista de endereços permitidos no registo. Se o IP não constar na lista — a mensagem pode ser rejeitada ou marcada como spam.
Exemplo de registo SPF
v=spf1 ip4:203.0.113.0/24 include:_spf.google.com ~all
Elementos do registo SPF
Versão
Cada registo SPF deve começar com
v=spf1.
Esta é a única versão do protocolo suportada.
Mecanismos
Os mecanismos determinam quais servidores estão autorizados a enviar correio. São verificados por ordem da esquerda para a direita.
| Mecanismo | Exemplo | Descrição |
|---|---|---|
| ip4 | ip4:203.0.113.0/24 | Permite um endereço IPv4 específico ou um intervalo CIDR. |
| ip6 | ip6:2001:db8::/32 | Permite um endereço IPv6 específico ou um intervalo CIDR. |
| include | include:_spf.google.com | Inclui o registo SPF de outro domínio. Utilizado quando se usam fornecedores de correio externos (Google, SendGrid, etc.). |
| a | a:mail.example.com | Permite os endereços IP indicados pelo registo A do domínio. Sem argumento, verifica o domínio do cabeçalho. |
| mx | mx | Permite os servidores indicados pelos registos MX do domínio. Útil quando o servidor de receção é também o de envio. |
| exists | exists:%{i}.example.com | Verifica se existe um determinado registo DNS. Raramente utilizado, empregado em configurações avançadas. |
| all | ~all | Corresponde a todos os endereços IP. Sempre utilizado no final do registo como regra predefinida. |
Qualificadores
Cada mecanismo pode ser precedido de um qualificador que determina o que fazer quando o mecanismo corresponde.
| Símbolo | Nome | Ação |
|---|---|---|
| + | Pass | O servidor está autorizado. Qualificador predefinido. |
| - | Fail | O servidor não está autorizado. A mensagem deve ser rejeitada. A política mais restritiva. |
| ~ | SoftFail | O servidor provavelmente não está autorizado. Mensagem aceite mas marcada. Recomendado durante a implementação do SPF. |
| ? | Neutral | Sem política definida. Tratado de forma semelhante à ausência de registo SPF. |
Modificadores
Os modificadores são diretivas opcionais que alteram o comportamento de todo o registo SPF.
| Modificador | Descrição |
|---|---|
| redirect | Redireciona a verificação SPF para outro domínio. Substitui todo o registo — não pode ser utilizado em conjunto com all. |
| exp | Indica o domínio com uma mensagem que explica a rejeição. Raramente utilizado. |
Limite de 10 consultas DNS
Mecanismos
include,
a,
mx
e
exists
efetuam consultas DNS. O padrão SPF permite um máximo de 10 consultas — exceder o limite resulta num erro
permerror.