DKIM+Sendmail

From wiki.habital.lv
Jump to navigation Jump to search
The printable version is no longer supported and may have rendering errors. Please update your browser bookmarks and please use the default browser print function instead.

В основе DKIM лежат две технологии - технология DomainKey от Yahoo и система Internet Identified Mail от Cisco. Эта технология (DKIM) предназначена для идентификации отправителя почтового сообщения с помощью цифровой подписи, связанной с именем соответствующего домена. DKIM была создана для более качественной классификации и идентификации легитимной электронной почты и широко используется крупнейшими компаниями, такими как, например, AOL, Cisco, EarthLink, Google, IBM, VeriSign, Yahoo.

Создание ключей

Для работы DKIM требуется пара ключей - публичный и приватный. Генерация приватного ключа:

openssl genrsa -out rsa.private 1024

Генерация публичного ключа:

openssl rsa -in rsa.private -out rsa.public -pubout -outform PEM

Переместить приватный ключ в директорию "/var/db/dkim/":

mv rsa.private /var/db/dkim/mail.private.pem

где mail - это имя селектора и назначить права на файл 0600 root:root.

Добавление опции в sendmail.mc

В файл "sendmail.mc" необходимо добавить:

INPUT_MAIL_FILTER(`dkim-filter', `S=inet:8891@localhost')

где 8891 - порт.

Модификация DNS

Создать TXT-запись для домена. Например:

mail._domainkey.example.com. IN TXT
"k=rsa;t=y;p=MEwwPQRJKoZIhvcNADAQCQADOwAwOAIxANPpYHdE2
tevfEpvL1Tk2dDYv0pF28/f5MxU83x/0bsn4R4p7waPaz1IbOGs/6bm5QIDAQAB"

Строка после p= - base64-кодировка публичного ключа, взятая между строчек "----- BEGIN PUBLIC KEY----- и -----END PUBLIC KEY-----", mail - вышеупомянутое селекторное имя, t=y - указывает на то, что ключ используется в тестовом режиме.

Кроме того, можно у домена прописать ADSP запись (RFC5617), что позволит принимающему серверу понять, должно ли ваше письмо быть подписано или нет. Запись выгладит так:

_adsp._domainkey.example.com. TXT "dkim=all"

Значений dkim= может быть три:

all — Все письма должны быть подписаны
discardable — Не подписанные письма не должны приниматься
unknown — Аналогично отсутствию записи


Проверка

mailto: autorespond+dkim@dk.elandsys.com

Более подробно о настройке dkim можно найти на сайте www.sendmail.org.