Les enregistrements SPF et DKIM TXT nécessitent-ils des devis?

16

Je cherche depuis quelques heures maintenant, mais plusieurs sources disent des choses différentes.

https://support.wordfly.com/hc/en-us/articles/204767474-How-do-we-publish-DKIM-and-SPF-in-our-DNS- Les États ne doivent pas inclure de guillemets, alors que https: //stackoverflow.com/a/9784925/1293725 lit que les citations doivent être incluses dans ces enregistrements TXT.

Ce ne sont que quelques exemples de sources, mais il y en a beaucoup d'autres.

Ces enregistrements doivent-ils donc inclure des citations ou non?

Neograph734
la source
2
Cela dépend vraiment de votre système / configuration. Par exemple. Je suppose qu'avec wordfly vous entrez vos valeurs dans un formulaire Web. L'utilisation de guillemets dans un formulaire peut vraiment gâcher les choses. Il est donc probable que le processus suppose des guillemets et saisisse les valeurs en utilisant des guillemets dans le DNS comme il se doit en votre nom.
closetnoc
2
@closetnoc est correct. Que vous utilisiez des devis ou non, cela a plus à voir avec le site / l'outil que vous utilisez pour les saisir.
Vol Sherwin
Merci, je vais essayer avec des guillemets inclus d'abord et voir si le système génère une erreur. J'ai trouvé cela déroutant car les sources indiquent que les espaces dans les enregistrements TXT font que chaque mot doit être traité comme une chaîne individuelle et je n'ai pas pu déterminer si c'était le comportement prévu pour SPF et DKIM. Mais je comprends maintenant qu'il devrait être traité comme une seule chaîne.
Neograph734
1
J'ai eu des devis, déplacé mon DNS vers un nouveau fournisseur (Azure DNS) et SPF a cessé de fonctionner. Supprimé les citations et tout a fonctionné à nouveau. Cela dépend donc du fournisseur. Assurez-vous de vérifier l'enregistrement. L'entité pour laquelle vous créez l'enregistrement SPF dispose généralement d'un outil / bouton pour ce faire.
nmit026

Réponses:

13

Dans le fichier de zone DNS (brut) , la valeur d'un TXTenregistrement doit être placée entre guillemets s'il contient des espaces (comme c'est souvent le cas avec les enregistrements SPF et DKIM). Les espaces sont sinon des délimiteurs dans le fichier de zone DNS.

La RFC 1305 définit comment les valeurs doivent être citées dans l'amende de zone. En ce qui concerne TXTles enregistrements de ressources:

3.3.14. Format TXT RDATA

+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+
/                   TXT-DATA                    /
+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+

où:

TXT-DATA Un ou plusieurs <character-string>s.

[Page 20]

<character-string>s'exprime d'une ou de deux manières: comme un ensemble contigu de caractères sans espaces intérieurs, ou comme une chaîne commençant par un "et se terminant par un". À l'intérieur d'une "chaîne délimitée, n'importe quel caractère peut apparaître, à l'exception d'un" lui-même, qui doit être cité à l'aide de \ (barre oblique inverse).

[Page 35]


Cependant, comme mentionné dans les commentaires, vous utilisez souvent un autre outil pour modifier les enregistrements DNS (vous ne modifiez généralement pas directement le fichier de zone DNS, bien que WHM vous donne cette option). Cet autre outil gérera probablement les guillemets et tout échappement supplémentaire requis pour rendre l'enregistrement valide. Si vous entourez manuellement la valeur entre guillemets lors de la soumission de la valeur à l'aide de votre éditeur / outil, ces citations supplémentaires peuvent être échappées et faire partie de la TXTvaleur d'enregistrement.

Par ailleurs, lorsque vous effectuez une recherche DNS, vous voyez la valeur de chaîne analysée / non citée.

Référence supplémentaire:
https://en.wikipedia.org/wiki/TXT_Record
https://tools.ietf.org/html/rfc1464

MrWhite
la source
Oui, après avoir lu les commentaires, j'ai également trouvé un manuel sur le site de mon registraire, indiquant que les enregistrements doivent être saisis sans guillemets (même si je les avais avec des guillemets plus tôt et les validateurs en ligne les ont marqués comme valides, donc peut-être que les deux méthodes fonctionnaient dans mon cas ). Je suis passé au format recommandé de mon bureau d'enregistrement. Merci à tous pour l'aide!
Neograph734
Oui, Cloudflare a également une note spécifique sur les citations support.cloudflare.com/hc/en-us/articles/…
lkraav
Où se trouve cette règle, "si une TXTvaleur contient un espace, elle doit être mise entre guillemets"? Cela ressemble à une bonne règle, mais de quelle règle s'agit-il? Je ne trouve rien à ce sujet dans la RFC 1464 ou dans l'article Wikipedia que vous avez mentionné. (RFC 1464 mentionne échapper à des guillemets internes, mais c'est différent.)
Garret Wilson
1
Ah, du mieux que je puisse dire, ce type d'échappement est défini dans la RFC 1035 dans la section 3.3 pour la <character-string>production, et plus tard dans la section 3.3.14, il spécifie que les TXTenregistrements ont <character-string>comme données et doivent donc être cités. (Il mentionne également cela pour les HINFOenregistrements, quels qu'ils soient.)
Garret Wilson
Oui, la RFC 1305 semble être l'endroit où cela est défini. Si vous modifiez la zone DNS brute dans WHM, vous êtes en fait invité que "vous devez suivre les conventions de citation et d'échappement décrites dans la RFC 1035". Je mettrai à jour ma réponse, merci.
MrWhite