É possível ter vários registros TXT para um único domínio contendo diferentes entradas SPF?

17

Um domínio de destinatário remoto está rejeitando emails com base no SPF e acho que é porque o remetente tem o SPF configurado incorretamente.

Quando executo dig, vejo:

[fooadm@box ~]# dig @8.8.8.8 -t TXT foosender.com

; <<>> DiG 9.3.6-P1-RedHat-9.3.6-20.P1.el5_8.6 <<>> @8.8.8.8 -t TXT foosender.com
; (1 server found)
;; global options:  printcmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 30608
;; flags: qr rd ra; QUERY: 1, ANSWER: 2, AUTHORITY: 0, ADDITIONAL: 0

;; QUESTION SECTION:
;foosender.com.              IN      TXT

;; ANSWER SECTION:
foosender.com.       14039   IN      TXT     "v=spf1 include:spf.foo1.com -all"
foosender.com.       14039   IN      TXT     "v=spf1 include:_spf.bob.foo2.com -all"

;; Query time: 26 msec
;; SERVER: 8.8.8.8#53(8.8.8.8)
;; WHEN: Tue Jan  7 09:45:38 2014
;; MSG SIZE  rcvd: 146

Essa configuração é válida? Parece-me estranho que haja dois registros separados (cada um com falhas graves). Tudo não deveria estar em um único registro?

Eu esperaria que o registro TXT adequado fosse:

v=spf1 include:spf.foo1.com include:_spf.bob.foo2.com -all

Mike B
fonte

Respostas:

20

Não. Você está certo. Veja RFC 4408, seção 4.5 .

  1. Os registros que não começam com uma seção de versão exatamente "v = spf1" são descartados. Observe que a seção da versão é finalizada por um caractere SP ou no final do registro. Um registro com uma seção de versão "v = spf10" não corresponde e deve ser descartado.

  2. Se houver registros do tipo SPF no conjunto, todos os registros do tipo TXT serão descartados.

    Após as etapas acima, deve haver exatamente um registro restante e a avaliação pode prosseguir. Se houver dois ou mais registros restantes, check_host () sai imediatamente com o resultado de "PermError".

    Se nenhum registro correspondente for retornado, um cliente SPF DEVE assumir que o domínio não faz nenhuma declaração SPF. O processamento SPF DEVE parar e
    retornar "Nenhum".

dmourati
fonte
2
Em abril de 2014, existe a RFC 7208 que obsoleta a RFC 4408. Os registros do tipo SPF foram descontinuados em favor dos do tipo TXT SPF records MUST be published as a DNS TXT (type 16) Resource Record (RR) [RFC1035] only.(consulte a RFC 7208, seção 3.1 ). Vou tentar uma nova resposta com base nisso.
JHoffmann # 6/16
4

Essa configuração do SPF não é válida. Caso haja vários registros encontrados, a seleção de registros deve gerar um erro como resultado. Consulte a RFC 7208, seção 4.5, sobre a seleção de registros:

Se o conjunto de registros resultante incluir mais de um registro, check_host () produzirá o resultado "permerror".

JHoffmann
fonte