hostprofi.ru
Подобрать хостинг
Термин·буква D

DKIM

краткое определение

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

DKIM (DomainKeys Identified Mail) — стандарт аутентификации электронной почты, описанный в RFC 6376 (2011). Отправляющий сервер подписывает выбранные заголовки письма и тело криптографической подписью (RSA 2048-bit или Ed25519). Получающий сервер находит публичный ключ в TXT-записи DNS домена и проверяет подпись. Если подпись верна — письмо действительно отправлено с авторизованного сервера домена и не было изменено в пути.

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

Процесс подписания письма на сервере отправителя:

  1. MTA (например, Postfix с OpenDKIM) вычисляет хеш указанных заголовков (From, Subject, Date, To) и тела письма алгоритмом SHA-256
  2. Подписывает хеш приватным ключом домена (хранится на сервере, недоступен снаружи)
  3. Добавляет заголовок DKIM-Signature: к письму с подписью, именем домена (d=), именем ключа (selector, s=), алгоритмом и списком подписанных заголовков

Проверка на принимающей стороне:

  1. Сервер читает заголовок DKIM-Signature, извлекает домен и selector
  2. Запрашивает публичный ключ из DNS: selector._domainkey.domain.com TXT
  3. Расшифровывает подпись публичным ключом, получая хеш
  4. Независимо вычисляет хеш полученного письма и сравнивает
  5. Совпадение → DKIM PASS; несовпадение или ключ не найден → DKIM FAIL

Пример DNS-записи DKIM:

mail._domainkey.example.com IN TXT "v=DKIM1; k=rsa; p=MIGfMA0GCSqGSIb3DQEB..."

История

DKIM появился в 2004 году как объединение двух технологий: DomainKeys (Yahoo!, 2003) и Identified Internet Mail (Cisco, 2004). Стандартизирован в RFC 4871 в 2007 году. RFC 6376 (2011) — актуальная редакция. В 2022 году Google и Yahoo! объявили о требовании DKIM для отправителей массовых рассылок (более 5 000 писем/сутки) — с февраля 2024 года без DKIM такие письма автоматически отклоняются или попадают в спам. Ed25519 как альтернатива RSA добавлен в RFC 8463 (2018): ключ всего 44 символа вместо 256+ для RSA-2048, устойчивее к взлому при меньшем размере DNS-записи.

DKIM, SPF и DMARC

Три технологии аутентификации почты работают в связке и дополняют друг друга:

  • SPFTXT-запись DNS перечисляет IP-адреса, которым разрешено отправлять почту от имени домена. Проверяет envelope-from (технический адрес отправителя), не видимый пользователю
  • DKIM — криптографическая подпись тела и заголовков письма, привязанная к домену. Сохраняется при пересылке через форвардинг, в отличие от SPF
  • DMARC — политика, определяющая что делать с письмами, не прошедшими SPF/DKIM (none, quarantine, reject), и настраивающая отчёты об аутентификации для мониторинга

SPF ломается при пересылке писем (email forwarding): пересылающий сервер отправляет с чужого IP, что нарушает SPF-проверку. DKIM сохраняется при пересылке — это его ключевое преимущество. DMARC требует прохождения хотя бы одной из проверок (SPF alignment или DKIM alignment) для успешной доставки.

На что обращать внимание

Для VPS с собственным почтовым сервером настройка DKIM — обязательное условие доставки писем в Gmail, Mail.ru и Яндекс.Почту. Selector позволяет иметь несколько ключей одновременно: например, google._domainkey для Google Workspace и mail._domainkey для собственного сервера Postfix. Ротация ключей раз в год — рекомендуемая практика безопасности. Проверить статус DKIM/SPF/DMARC: mail-tester.com, dmarcian.com или Google Postmaster Tools. Распространённая ошибка — DNS-кэш не обновился: после добавления DKIM-записи нужно подождать TTL (обычно 300–3600 секунд). Диагностика: dig TXT mail._domainkey.example.com.

Другие термины