DKMI

DKIM, или DomainKeys Identified Mail — это стандартный протокол аутентификации электронной почты, который использует криптографию для проверки подлинности ваших сообщений.

С помощью dkim вся исходящая почта сервера подписывается электронной цифровой подписью, связанной с именем домена. Открытый ключ шифрования с помощью DNS публикуется в txt записи. Таким образом, удаленный сервер, при получении письма от вас, сравнивает цифровую подпись с опубликованным в DNS открытым ключом вашего домена. Если всё в порядке, то считает, что ваше письмо в самом деле пришло от вас, а не от мошенников. То есть с помощью этой технологии можно однозначно идентифицировать отправителя.

Найти на сервере каталог dkim

find / -name dkim

Внутри будет файл с приватным и публичным ключом. Нам нужен публичны ключ. Примерное содержимое файла:

mail._domainkey IN TXT ( "v=DKIM1; k=rsa; p=MIIBIjANBgkqhkiG9w0BAQEFAA...................M3gn6P7BAU0fBePlivzRLPv6pmksWcGXqoOTAGQDftPO47CMYXOBhaTaLZluQIDAQAB

Создаем TXT запись mail._domainkey и в качестве значения вставляем

В записи mail._domainkey - mail - это селектор

v=DKIM1; k=rsa; p=MIIBIjANBgkqhkiG9w0BAQEFAA……

На файл с приватным ключом есть ссылка из конфига почтового сервера exmim, postfix и др.

То есть в DNS азмещаем публичный ключ, а из конфига почтового серывера ссылаемся на приватный

Ключи можно и самомтсоятельно сгенерировать:

apt install opendkim opendkim-tools

Создаем директорию для хранения ключей:

mkdir -p /etc/postfix/dkim && cd /etc/postfix/dkim

Генерируем ключи для домена:

opendkim-genkey -D /etc/postfix/dkim/ -d dtz.in.ua -s mail

где

dtz.in.ua имя почтового домена

mail селектор, я обычно указываю как имя самого сервера

На выходе получаете пару файлов — закрытый (приватный) и открытый ключ. Закрытый останется на сервере, открытый будет опубликован в DNS.

Протестировать DKMI можно здесь: dkimcore.org