Назад | Перейти на главную страницу

Открытый ключ DKIM не может быть получен

У меня уже довольно давно настроен почтовый сервер. Он работает нормально, все основные поставщики электронной почты без проблем принимают электронную почту с моего сервера. Однако в то время, когда я настраивал сервер, я также настраивал DKIM, и я думал, что он работает все это время. Недавно я зашел на mail-tester.com и там сообщил, что не может получить мой открытый ключ. Он действительно видит, что заголовок DKIM правильно добавлен к электронному письму, и это хорошо, но без открытого ключа он, конечно, бесполезен для проверки. dig mail._domainkey.website.ca TXT возвращается

; <<>> DiG 9.10.3-P4-Ubuntu <<>> mail._domainkey.website.ca TXT
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 32970
;; flags: qr rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 0, ADDITIONAL: 1

;; OPT PSEUDOSECTION:
; EDNS: version: 0, flags:; udp: 4096
;; QUESTION SECTION:
;mail._domainkey.website.ca. IN TXT

;; ANSWER SECTION:
mail._domainkey.website.ca. 60 IN TXT "v=DKIM1; h=sha256; k=rsa; s=email;" "p=MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQDr0rbblJ2j7QrjLC2JGbRHqsU4kr3eNZ7cLL0o1VrR3O966++99SuIqUwwiaTg5lsgYvGuBlN2A5ekJK7Q9pjw5J9+yYY14jx0vxVjfS+kjfqn/tNp5+pHWWnnviZ2b9SIvqg36l/v0bMcPJVM8HuhQLFooz1M2wYi9QoQt5eslwIDAQAB"

;; Query time: 53 msec
;; SERVER: 172.31.0.2#53(172.31.0.2)
;; WHEN: Fri Apr 07 07:38:44 UTC 2017
;; MSG SIZE  rcvd: 331

Так в чем дело? Запись отформатирована неправильно? Я вижу различные примеры в Интернете, некоторые с кавычками, некоторые без. Я попробовал оба способа сейчас. Я также добавил ту же запись, что и default._domainkey но, возможно, это еще не было распространено через DNS. Тот же сервер также пожаловался, что моя запись SPF присутствует, но не дублируется как запись TXT. Это нормальная практика? Зачем вам это нужно и как SPF, и как TXT?

Заранее спасибо всем экспертам DKIM;)

РЕДАКТИРОВАТЬ: Я только что подтвердил, что селектор (поле s = в разделе DKIM заголовков электронной почты) действительно настроен на почту. Следовательно, mail._domainkey должен быть правильной записью.

EDIT2: Мой DNS-провайдер - CloudFlare.

EDIT3: я думаю, что, возможно, сузил проблему, но я до сих пор не знаю, как ее исправить. mail-tester.com говорит

We were not able to retrieve your public key.
Please ensure that you inserted your DKIM TXT DNS record on your domain mail.website.ca using the selector mail.

Я думаю, что, поскольку поле d = в заголовке предназначено для mail.website.ca, оно на самом деле пытается найти запись mail._domainkey.mail.website.ca, которой, конечно, не существует. Но как это исправить? Должен ли я сгенерировать новый ключ и отбросить почтовую часть домена? Или мне просто добавить еще одну запись DNS? Мне любопытно, какова лучшая практика.

РЕДАКТИРОВАТЬ 4: Хорошо, похоже, mail-tester.com теперь может видеть запись TXT с именем mail._domainkey.mail, однако он все еще жалуется, что открытый ключ недействителен. Я решил проверить свой DKIM, отправив электронное письмо на другой контролируемый мной сервер. Посмотрев логи, почтовый сервер там был может получить открытый ключ. И SpamAssassin, и OpenDKIM заявили, что смогли проверить, что является хорошей новостью (поскольку раньше этого не происходило). Так что я решил хотя бы важную часть проблемы. Мне все еще очень любопытно выяснить, почему mail-tester.com все еще отклоняет запись TXT (это почти наверняка из-за форматирования), и я беспокоюсь, что другие реализации DKIM могут иметь такую ​​же проблему. Я оставлю этот вопрос в надежде, что кто-нибудь сможет пролить свет.

Селектор почта но запись содержит s = электронная почта. Вам не нужны поля «s» и «h» в записи. Также не нужны разрывающие кавычки, и вам может потребоваться добавить точку с запятой после ключа:

v=DKIM1; k=rsa; p=MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQDr0rbblJ2j7QrjLC2JGbRHqsU4kr3eNZ7cLL0o1VrR3O966++99SuIqUwwiaTg5lsgYvGuBlN2A5ekJK7Q9pjw5J9+yYY14jx0vxVjfS+kjfqn/tNp5+pHWWnnviZ2b9SIvqg36l/v0bMcPJVM8HuhQLFooz1M2wYi9QoQt5eslwIDAQAB;