Le service de messagerie SES d'Amazon nécessite une authentification DKIM. Une étape d'authentification consiste à ajouter un enregistrement CNAME au DNS de votre domaine.
Malheureusement, l'enregistrement CNAME a un soulignement. Mon registraire, mon greffier, Solutions de réseau n'autorise pas les traits de soulignement dans les enregistrements CNAME.
Y a-t-il une solution de contournement pour cela? Le transfert à un registraire différent est une option, mais évidemment une option horrible.
DKIM est fait avec TXT
enregistrements. Bien sûr, vous pouvez avoir un enregistrement CNAME
(ou une chaîne) qui pointe vers un enregistrement TXT
, mais il est beaucoup plus commun à créer directement un enregistrement TXT
.
Votre fournisseur de réservoirs autoritaires DNS devrait vous laisser placer des étiquettes avec des traits de soulignement (que DKIM exige) dans le fichier de zone de votre domaine. Sinon, sélectionnez ensuite un fournisseur de noms DNS différent ou utilisez vos propres noms de noms.
Ce que DNS registraire que vous utilisez n'a rien à voir avec cela. Le registraire ne contrôle pas le contenu du domaine ni ne le seraient même au courant.
Il se peut que votre registraire et votre fournisseur de noms DNS soient la même organisation, mais ils sont des rôles distincts et devraient être considérés séparément.
Après plus de deux heures sur le téléphone avec le service clientèle des solutions de réseau, ils entrent manuellement dans les enregistrements d'authentification Amazon SES DKIM pour moi.
Premièrement, le fait qu'ils n'autorisent pas les traits de soulignement dans leur CNAME
est un comportement incorrect.
Selon RFC 1034:
Les noms qui ne sont pas des noms d'hôte peuvent consister en une imprimable ASCII caractère.
DKIM Standard nécessite le soulignement, conformément à la RFC 4871:
Toutes les clés DKIM sont stockées dans un sous-domaine nommé "_Domaininkey". Compte tenu d'un champ de signature DKIM avec une balise "D =" de "Exemple.com" et d'une balise "S =" de "Foo.bar", la requête DNS sera pour "foo.bar._domainkey.example.com" .
RFC 1034 décrit l'enregistrement CNAME et indique que le CNAME RR
n'est pas (nécessairement) un hostname
, donc tout imprimable ASCII caractère doit être autorisé. Les solutions réseau sont erronées à ce sujet.
Alors que DKIM Records peut être stocké sous forme TXT
enregistrements, Amazon SES utilise des enregistrements CNAME afin qu'ils puissent faire pivoter les touches. Ce qui devrait être possible, sinon pour les politiques inepte de la solution réseau.
Pour la plupart des informations à ce sujet, je recommande ce site , qui explique que toutes les entrées DNS qui ne sont pas hostnames
(quels champs dans un CNAME
peuvent être, mais sont pas nécessairement) devrait être autorisé des traits de soulignement.
Afin de les obtenir enfin pour entrer manuellement dans les enregistrements, ils avaient besoin d'escalader le billet. Il fallait faire au téléphone, mon billet de courrier électronique initial a été répondu à la réponse décevante "Vous devez appeler."
Je devais expliquer plusieurs fois que d'autres serveurs de noms permettent des soulignements dans le CNAME et que s'ils ne peuvent pas nous accueillir, nous allons passer immédiatement.
Ils ont dû parler au titulaire du compte principal (ce qui n'était pas moi, et n'était pas une personne technique) afin de "confirmer" que ces enregistrements DNS devraient être mis en place. Même s'il venait d'appeler à "confirmer", ils lui ont donné la course sur le téléphone pendant plus de 70 minutes. Cette confirmation semblait complètement inutile, car mon compte a été autorisé à modifier les enregistrements DNS.
C'était une expérience plutôt frustrante et je prévois de migrer des solutions de réseau dès que possible. Les temps d'arrêt requis nous ont dissuadé dans le passé, mais à ce stade, je crois que c'est justifié.
Bien que vous puissiez les convaincre de saisir manuellement les enregistrements, je vous recommanderais de changer de noms de noms s'il est possible.
DKIM nécessite un sous-domaine nommé _domainkey
( RFC 4871 ) (et les sous-traitants sont complètement valables pour les sous-domaines ).
Et si vous le fournisseur DNS ne leur permet pas?
Par exemple pour SendGrid , il vous demandera de pointer le point CNAME s1._domainkey.example.com
à s1.domainkey.u1234567.00000.sendgrid.net
, alors obtenez le TXT enregistrement via:
$ Host -t txt s1.domainkey.u1234567.00000.sendgrid.net
s1.domainkey.u1234567.00000.sendgrid.net descriptive text "k=rsa\; t=s\; p=SOMETHING+VERY+LOOOOOOOONG"
Maintenant, créez A TXT pour sous-domaines s1._domainkey
avec le contenu (rappelez-vous de l'évasion \
par exemple):
k=rsa; t=s; p=SOMETHING+VERY+LOOOOOOOONG