Como escrito em um rascunho sobre a requisição de comentário da estrutura de política de remetentes. (Em outras palavras… Como escrito nesse Draft sobre a RFC do SPF). Foi definido que os servidores devem verificar a validade dos cabeçalhos Received-SPF, garantindo que o mesmo tenha um tamanho aceitável e não possua caracteres inválidos e ou dados maliciosos. (SPF clients MUST make sure that the Received-SPF header does not contain invalid characters, is not excessively long, and does not contain malicious data that has been provided by the sender.)
A dúvida porém é o que seria considerado excessivamente longo? O padrão POSIX 1003.1-2001 define que os domínios deverão ter no máximo 64 caracteres (com excessão do ponto de terminação) enquanto a RFC 2181 define um máximo de até 255 caracteres (incluindo o ponto de terminação). Pensando a respeito, acredito que o domínio deva ter limite de 64 caracteres enquanto o domínio com seus subdomínios (inclui ponto de terminação) deva ser 255 caracteres. 😉
Seguindo essa idéia, criei algumas regras com RegEx que verificam e permitem o envio de mensagens com cabeçalhos Received-SPF válidos e nega o que não se encaixa no padrão.
As regras podem ser visualizadas nesse link.
Pingback: Implementando verificações SPF no Postfix. | Blog do Eduardo Nunes