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

Как заставить DKIM пройти аутентификацию?

У меня есть sednamil, dkim-milter, оба работают на RHEL4.

Файлы DNS и конфигурации выглядят так:

Запись TXT: mail._domainkey.MYDOMAIN.com IN TXT "v = DKIM1; g = *; k = rsa; t = y; p = .... snip ... TRM3w7CuYnQIDAQAB"

Запись TXT:

_adsp._domainkey.MYDOMAIN.com. IN TXT "dkim=unknown"

/etc/dkim.conf

Canonicalization simple
Domain MYDOMAIN.com,MY2ndDOMAIN.com
KeyFile /var/db/dkim/mail.key.pem
MTA MSA
Selector mail
Socket inet:8891@localhost
SignatureAlgorithm rsa-sha256
Syslog Yes
Userid dkim
X-Header Yes
Mode sv
InternalHosts /etc/dkim-internal-hosts

/ и т.д. / dkim-внутренние-хосты

MYDOMAIN.com
MY2ndDOMAIN.com
127.0.0.1

Теперь, когда я отправляю электронное письмо в качестве теста, я не вижу в заголовках ничего об аутентификации DKIM, хотя ключ действительно появляется:

X-DKIM: Sendmail DKIM Filter v2.8.3 MYDOMAIN.com o7FLH1Wa032083
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d=MYDOMAIN.com; s=mail;
t=/XKdLCPjaYaY=;
h=Message-ID:Date:Subject:From:To:MIME-Version:Content-Type:
 Content-Transfer-Encoding;
b=qetPkilXBdjnuqiKIyvAwsvTvJfAnq5urdgp/i7p/uLJ8DB+svy9A8C6CPmcfELsJ
 hDid5k2AN5JD+wM2INmUIgjeAa/IwpGTbuMloj0Wioh4njqIfbATJqOhuqxTjic

Если я наберу:

# host -t txt mail._domainkey.MYDOMAIN.com

Я получил:

Host mail._domainkey.MYDOMAIN.com not found: 3(NXDOMAIN)

Что я мог упустить?

Похоже, ваш DNS настроен неправильно. Вам необходимо ввести свой открытый ключ, который вы сгенерировали при первоначальной настройке DKIM. Пример записи DKIM выглядит следующим образом:

$ dig +short TXT dkim._domainkey.twitter.com
"v=DKIM1\;" "g=*\;" "k=rsa\;" "p=MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQCrZ6zwKHLkoNpHNyPGwGd8wZoNZOk5buOf8wJwfkSZsNllZs4jTNFQLy" "6v4Ok9qd46NdeRZWnTAY+lmAAV1nfH6ulBjiRHsdymijqKy/VMZ9Njjdy/+FPnJSm3+tG9Id7zgLxacA1Yis/18V3TCfvJrHAR/a77Dxd65c96UvqP3QIDAQAB"

Все, что находится после p =, является открытым ключом. Просто вставьте все это в одну строку. Значение, стоящее перед _domainkey, называется вашим селектор. В приведенном выше примере twitter их селектор дким. От твоего /etc/dkim.conf файл, похоже, ваш селектор называется просто mail. Итак, ваша запись DNS должна быть:

mail._domainkey.MYDOMAIN.com. IN TXT "v=DKIM1; k=rsa; t=s; p=<yourpublickey>"

После настройки и распространения записи вы должны получить полную запись, выполнив следующее:

$ dig +short TXT mail._domainkey.MYDOMAIN.com

Надеюсь это поможет.