Ошибка Opendkim «Не удалось получить ключ» при использовании длинных ключей dkim - PullRequest
0 голосов
/ 09 февраля 2019

Я использую postfix с opendkim и вижу много следующих ошибок:

opendkim[63]: 84D4C390048: key retrieval failed (s=selector1, d=hotmail.com):
'selector1._domainkey.hotmail.com' reply truncated

Ошибка возникает для множества разных доменов, но всегда, если длинный ключ dkim (> 1024 бит)используется.Я бы предположил, что это довольно распространенная проблема, но пока не нашел ничего полезного.

Это проблема с моим конфигом opendkim или он просто не работает в этом отношении?

Ответы [ 2 ]

0 голосов
/ 24 июля 2019

Вызов res_query (), выполняемый libopendkim, похоже, не обрабатывает усечение путем повторной передачи запроса.Это происходит на моем devserver, так что это, кажется, вариант локальной конфигурации.У res_query (), по-видимому, нет способа форсировать режим TCP, но на странице руководства для него предлагается локально включить режим TCP в /etc/resolv.conf.

В противном случае вы можетечтобы обойти это, связавшись с другим распознавателем, таким как unbound, который поддерживает OpenDKIM.

0 голосов
/ 26 февраля 2019

Эта проблема, по-видимому, связана с тем, что opendkim не устанавливает запись псевдоресурса OPT UDPSize, указывая на то, что он может обрабатывать ответы длиннее 512 байт, как определено в EDNS (wiki) , RFC 2671 .

Opendkim (без EDNS)

Как видно из этого tcpdump запроса opendkim:

28112+ TXT? selector1._domainkey.outlook.com. (50)

и ответ от unbound:

28112| q: TXT? selector1._domainkey.outlook.com. 1/0/0 selector1._domainkey.outlook.com.
CNAME selector1._domainkey.outbound.protection.outlook.com. (105)

Dig (EDNS)

Тот же запрос от dig правильно указывает, что большевсе ответы в порядке (OPT UDPsize = 4096):

33350+ [1au] TXT? selector1._domainkey.outlook.com. ar: . OPT UDPsize=4096 (73)

И несвязанный должным образом отвечает с полной записью TXT:

33350 q: TXT? selector1._domainkey.outlook.com. 2/0/1 
selector1._domainkey.outlook.com. CNAME 
selector1._domainkey.outbound.protection.outlook.com., 
selector1._domainkey.outbound.protection.outlook.com.
TXT "v=DKIM1;k=rsa;p=MIIBI[...]1913" ar: . OPT UDPsize=4096 (567)

Ключ DKIM в записи TXT был сокращен для краткости.

К сожалению, проект opendkim кажется мертвым, поэтому маловероятно, что это будет исправлено.

...