In Route 53 können keine DKIM-Schlüssel hinzugefügt werden, da die Länge zu groß ist

41

So gebe ich den Wert für den DKIM-Schlüssel ein:

"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"

In diesem Wert sind keine neuen Zeilen enthalten (ich habe den Wert speziell kopiert und in einem Texteditor getestet). Aber aus irgendeinem Grund bekomme ich immer TXT ist zu lange Fehler:

TXTRDATATooLong angetroffen bei „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 "

Ich weiß wirklich nicht, was ich tun soll, um dieses Problem zu beheben.

Gasim
quelle
Entfernen Sie nach jedem Eintrag das Leerzeichen.
Drifter104
Ich habe auch dieses Problem mit AWS Route 53 DKIM festgestellt. Haben Sie das Problem behoben? Ich finde , dass Amazon AWS schlecht gepflegt wird ... nur versuchen , ihr Q verwenden / A - Forum ... was für einen Witz des alten veralteten 15jährige Web UI
Scott Stensland
@ScottStensland Wie die akzeptierte Antwort feststellt, ist dies nicht die Schuld von AWS, und es gibt eine einfache Lösung.
Ceejayoz

Antworten:

56

Ein ähnliches Problem finden Sie im Route 53-Forum :

Leider ist das Limit von 255 Zeichen pro Zeichenkette in TXT-Einträgen kein Route53-Limit, sondern ein Limit, das vom DNS-Protokoll selbst vorgegeben wird. Jeder TXT-Datensatz kann jedoch mehrere Zeichenfolgen mit jeweils 255 Zeichen enthalten. Sie müssen Ihr DKIM für Ihren TXT-Datensatz in mehrere Zeichenfolgen aufteilen. Sie können dies über die Konsole tun, indem Sie jede in Anführungszeichen eingeschlossene Zeichenfolge in einer Zeichenfolge pro Zeile eingeben.

Wichtiger Hinweis : Verwenden Sie nicht "eine Zeichenkette pro Zeile", wie in der Anleitung angegeben - trennen Sie Zeichenketten mit einem Leerzeichen, z. "foo" "bar"nicht "foo"\n"bar". Verwenden Sie DKIMValidator , um zu überprüfen , ob die Signatur korrekt gelesen wird.

Evgeny Goldin
quelle
12
Stellen Sie außerdem sicher, dass zwischen jedem End- / Start-Zitat ein Leerzeichen steht - kein Zeilenumbruch / cr, wie AWS beim Hinzufügen von TXT-Datensätzen anzeigt. Dies sind keine separaten Datensätze. Beispiel: "p=sdfgkjhsdfg...." "sdklfjsdf....." <Leerzeichen zwischen.
bshea
5
Newline V / S Space war das Problem für mich. Thanks @bshea
Nehal J Wani
40

Sie können es in Stücke von zitiertem Text mit einer maximalen Länge von 255 pro Stück zerlegen. Sie müssen nicht jeden Block genau machen.

Zum Beispiel, wenn Ihr Wert ungefähr so ​​aussieht:

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

Sie können es an beliebigen Stellen zerhacken:

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

Beachten Sie, dass dies einzelne Leerzeichen und keine Zeilenumbrüche zwischen den einzelnen Abschnitten sind!

Es ist nicht überraschend, dass die Setup-Anweisungen von Google schrecklich sind. Ich habe gerade eine komplette Anleitung dazu auf Route53 geschrieben.

Andy Ray
quelle
2
"Beachten Sie, dass dies einzelne Leerzeichen und keine Zeilenumbrüche zwischen den einzelnen Abschnitten sind!" Das war wichtig für mich, weil es nicht funktionierte. Arbeitete sofort nach dem Wechsel, danke!
Alex Yurkowski
1
Dies sollte die akzeptierte Antwort sein.
Nikolay Tsenkov
Seltsamerweise funktionierten Leerzeichen für DKIM. Als ich jedoch meinen SPF-Wert zu einem vorhandenen TXT-Datensatz hinzufügte, musste ich die angegebenen Zeichenfolgen durch Zeilenumbrüche und nicht durch Leerzeichen trennen, bevor dies in AWS Route 53
funktionieren konnte
5

DKIM auf AWS Route53

Sie müssen den DMARC-Datensatz in 255 Zeichen teilen. Wenn Sie Ihr DNS zufällig mit AWS Route53 hosten, fügen Sie jeden mit zitierten Teil "..."in den Datensatz ein.

Verwenden Sie keine Zeilenumbrüche, um die Teile zu teilen, da dies separate TXT-Einträge wären.

v=DKIM1; k=rsa; p=ABC123longkeypart1ABC123longkeypart2

wird

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

Terraform und Route53 verwenden

Wenn Sie Ihre Route53-Datensätze mit Terraform bereitstellen, müssen Sie den DKIM-Schlüssel ebenfalls in maximal 255 Zeichen aufteilen.

Da Terraform sich darum kümmert, den TXT-Eintrag in Anführungszeichen zu setzen, müssen Sie nur Anführungszeichen zwischen den einzelnen Teilen eingeben \"\".

v=DKIM1; k=rsa; p=ABC123longkeypart1ABC123longkeypart2

wird

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"
  ]
}

Siehe auch: https://www.terraform.io/docs/providers/aws/r/route53_record.html#records

Overbryd
quelle
3

Sie können einfach 1024 anstelle von 2048 auswählen und zum Zeitpunkt der Erstellung der TXT in Google Apps zu Route 53 hinzufügen

Basil Abbas
quelle
4
Es gibt keinen Grund, dies zu tun - wenn Sie 2048 möchten, folgen Sie der ausgewählten Antwort. Verbinden Sie den DKIM-Datensatz mit Anführungszeichen und einem Leerzeichen dazwischen. Es wird klappen.
bshea