Содержание

Что такое DKIM

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

Как работает DKIM

Пример DKIM-заголовка в письме

DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=example.com; s=s1;
 h=from:to:subject:date;
 bh=QW6fV5OSn...;
 b=MT7XN3kpv...;

Формат DKIM-записи в DNS

DKIM-запись добавляется в DNS домена как TXT-запись по следующему имени:

селектор._domainkey.домен

Пример:

s1._domainkey.example.com. IN TXT "v=DKIM1; k=rsa; p=MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAw..."

Параметры DKIM-записи

Параметр Назначение Пример значения
v Версия протокола DKIM v=DKIM1
k Тип криптографического ключа k=rsa
p Открытый ключ в base64 p=MIIBIjAN…

Дополнительно можно использовать (реже):

t Тестовый режим (только отчётность) t=y
n Комментарий для администраторов n=тестовая подпись

Генерация DKIM-ключей

С помощью OpenSSL:

openssl genrsa -out private.key 2048
openssl rsa -in private.key -pubout -out public.key

Преобразование в формат DNS:

openssl rsa -in private.key -pubout -outform PEM | \
sed '1d;$d' | tr -d '\n' > dkim.txt

Проверка DKIM-подписи

* Через консоль:

dig TXT s1._domainkey.example.com

* Онлайн-инструменты:

Рекомендации