Route 53 ne permet pas l'ajout de clés DKIM car la longueur est trop longue

41

Voici comment j'entre la valeur pour la clé DKIM:

"v=DKIM1; k=rsa; p=MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAwztXzIUqic95qSESmnqX U5v4W4ENbciFWyBkymsmmSNOhLlEtzp/mnyhf50ApwCTGLK9U7goo/ijX/wr5roy XhReVrvcqtIo3+63a1Et58C1J2o4xCvp0K2/lM6hla4B9jSph7QzjYdtWlOJqLRs o0nzcut7DSq/xYcVqvrFDNbutCfG//0wcRVUtGEyLX/a/7mAAkW6H8UEYMPglQ9c eEDfTT6pzIlqaK9cHGOsSCg4r0N8YxnHFMRzKaZwmudaXTorSbCs7e681g125/vJ e82VV7DE0uvKW/jquZYtgMn7+0rm+2FDYcDx/7lzoByl91rx37MAJaUx/2JHi1EA nwIDAQAB"

Il n'y a pas de nouvelles lignes dans cette valeur (je l'ai spécifiquement copié et testé dans un éditeur de texte). Mais pour une raison quelconque, je continue à avoir du TXT, erreur trop longue:

TXTRDATATooLong rencontré à « v = DKIM1; k = rsa; p = MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAwztXzIUqic95qSESmnqX U5v4W4ENbciFWyBkymsmmSNOhLlEtzp / mnyhf50ApwCTGLK9U7goo / ijX / wr5roy XhReVrvcqtIo3 + 63a1Et58C1J2o4xCvp0K2 / lM6hla4B9jSph7QzjYdtWlOJqLRs o0nzcut7DSq / xYcVqvrFDNbutCfG // 0wcRVUtGEyLX / a / 7mAAkW6H8UEYMPglQ9c eEDfTT6pzIlqaK9cHGOsSCg4r0N8YxnHFMRzKaZwmudaXTorSbCs7e681g125 / vJ e82VV7DE0uvKW / jquZYtgMn7 + 0rm + 2FDYcDx / 7lzoByl91rx37MAJaUx / 2JHi1EA nwIDAQAB "

Je ne sais vraiment pas ce que je devrais faire pour résoudre ce problème.

Gasim
la source
Essayez de supprimer l'espace après chaque;
Drifter104
J'ai également rencontré ce problème avec AWS route 53 DKIM ... l'avez-vous résolu? Je trouve qu'Amazon AWS est mal entretenu ... essayez simplement d'utiliser leur forum Q / A ... quelle blague d'ancienne interface utilisateur Web obsolète âgée de 15 ans
Scott Stensland
@ScottStensland Comme l'indique la réponse acceptée, ce n'est pas la faute d'AWS, il existe une solution simple.
ceejayoz

Réponses:

56

Voir un problème similaire dans le forum Route 53 :

Malheureusement, la limite de 255 caractères par chaîne sur les enregistrements TXT n'est pas une limite de Route53, mais une limite imposée par le protocole DNS lui-même. Cependant, chaque enregistrement TXT peut avoir plusieurs chaînes de 255 caractères chacune. Vous devrez diviser votre DKIM en plusieurs chaînes pour votre enregistrement TXT. Vous pouvez le faire via la console en entrant chaque chaîne encapsulée entre guillemets, une chaîne par ligne.

Remarque importante : N'utilisez pas "une chaîne par ligne" comme l'indiquent les instructions - séparez les chaînes avec un seul espace, par exemple. "foo" "bar"non "foo"\n"bar". Utilisez DKIMValidator pour valider que la signature est lue correctement.

Evgeny Goldin
la source
12
Assurez-vous également qu'il y a 1 espace entre chaque citation de fin / début - pas une nouvelle ligne / cr comme AWS l'indique lorsque vous ajoutez des enregistrements TXT - ce ne sont pas des enregistrements séparés. Exemple: "p=sdfgkjhsdfg...." "sdklfjsdf....." <espace entre.
bshea
5
Newline v / s space était le problème pour moi. Merci @bshea
Nehal J Wani
40

Vous pouvez le découper en morceaux de texte cité d'une longueur maximale de 255 par morceau. Vous n'avez pas à rendre chaque morceau exact.

Par exemple, si votre valeur ressemble à quelque chose comme:

"v=DKIM1; k=rsa; p=abcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyza bcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabc"

Vous pouvez le découper à des endroits arbitraires:

"v=DKIM1; k=rsa; p=abcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyz" "abcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzab" "cdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabc"

Notez que ce sont des espaces simples, pas de nouvelles lignes, entre chaque morceau!

Sans surprise, les instructions d'installation de Google sont terribles. Je viens de rédiger un guide complet expliquant comment faire cela sur Route53.

Andy Ray
la source
3
"Notez que ce sont des espaces simples, pas de nouvelles lignes, entre chaque morceau!" C'était important pour moi, car cela ne fonctionnait pas. A travaillé immédiatement après le changement, merci!
Alex Yurkowski
1
Cela devrait être la réponse acceptée.
Nikolay Tsenkov
Curieusement, les espaces fonctionnaient pour DKIM. Toutefois, pour ajouter ma valeur SPF à un enregistrement TXT existant, je devais séparer les chaînes entre guillemets avec des sauts de ligne et non des espaces avant que cela ne fonctionne dans AWS Route 53.
adam0101
5

DKIM sur AWS Route53

Vous devez fractionner l'enregistrement DMARC en 255 parties de caractères. S'il vous arrive d'héberger votre DNS avec AWS Route53, insérez chaque partie citée "..."dans l'enregistrement.

N'utilisez pas de saut de ligne pour fractionner les pièces, car il s'agirait d'entrées TXT distinctes.

v=DKIM1; k=rsa; p=ABC123longkeypart1ABC123longkeypart2

devient

"v=DKIM1; k=rsa; p=ABC123longkeypart1" "ABC123longkeypart2"

Utilisation de Terraform et de Route53

Lorsque vous utilisez Terraform pour provisionner vos enregistrements Route53, vous devez également scinder la clé DKIM en 255 parties de caractères maximum.

Etant donné que Terraform se charge de citer l’entrée TXT, vous devez uniquement fournir des guillemets entre chaque partie, comme cela \"\".

v=DKIM1; k=rsa; p=ABC123longkeypart1ABC123longkeypart2

devient

resource "aws_route53_record" "some_domain_dkim" {
  zone_id = "${aws_route53_zone.some_domain.zone_id}"
  name    = "google._domainkey.some_domain.com."
  type    = "TXT"
  ttl     = "3600"

  records = [
    "v=DKIM1; k=rsa; p=ABC123longkeypart1\"\"ABC123longkeypart2"
  ]
}

Voir aussi: https://www.terraform.io/docs/providers/aws/r/route53_record.html#records

Overbryd
la source
3

Vous pouvez simplement sélectionner 1024 au lieu de 2048 et l'ajouter à la route 53 au moment de générer le fichier TXT dans Google Apps.

Basile Abbas
la source
4
Il n'y a aucune raison de le faire - si vous voulez 2048 suivre la réponse sélectionnée. Connectez l’enregistrement dkim avec des guillemets + un seul espace entre. Ça va marcher.
bshea