Перейти к содержимому
Справочник

Что такое DKIM

DKIM добавляет к письму криптографическую подпись, которая подтверждает отправителя и переживает пересылку. Как устроены селекторы, ключи и ротация.

2 минуты чтения

Коротко

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

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

  1. Вы генерируете пару ключей — приватный и публичный.
  2. Приватный остаётся у почтового сервиса, публичный вы публикуете в DNS.
  3. При отправке сервис подписывает приватным ключом заголовки письма и тело.
  4. Получатель находит в DNS публичный ключ, проверяет подпись и видит результат: pass или fail.

Подпись добавляется к письму заголовком DKIM-Signature, в котором среди прочего есть два важных поля:

  • s= — селектор, то есть какой ключ использовать;
  • d= — домен, от имени которого подписано письмо.

Поле d= заслуживает отдельного внимания: именно оно сравнивается с доменом в From:, когда DMARC проверяет согласование.

Селекторы

Селектор — это метка, которая позволяет держать несколько ключей одновременно. Запись в DNS строится так:

<селектор>._domainkey.<ваш-домен>

Например, для селектора google домена example.com запись живёт по адресу google._domainkey.example.com.

Несколько селекторов нужны в двух случаях: когда почту отправляют разные сервисы, каждый со своим ключом, и когда вы меняете ключ — новый публикуется рядом со старым, а старый удаляется только после того, как все подписанные им письма доставлены.

Длина ключа и ротация

Берите 2048 бит, если провайдер поддерживает. Ключи на 1024 бита ещё работают, но считаются устаревшими. Если панель DNS отказывается принимать длинное значение, разбейте его на несколько строк в кавычках — большинство провайдеров такой формат понимает.

Ключи стоит периодически менять. Порядок безопасной ротации простой: опубликовать новый селектор, переключить сервис на него, подождать несколько дней и только потом удалить старую запись.

Почему DKIM важнее SPF

Оба механизма нужны, но ведут они себя по-разному в одной распространённой ситуации — при пересылке.

Когда получатель пересылает письмо дальше, отправляет его уже сервер-посредник. Для SPF это чужой адрес, поэтому проверка проваливается. А подпись DKIM привязана к самому письму, а не к серверу, — и остаётся действительной.

Именно поэтому, когда политика DMARC доходит до quarantine или reject, опираются прежде всего на согласование по DKIM: оно выживает там, где SPF ломается.

Типичные ошибки

  • Запись опубликована, но подписывание не включено. Самый частый случай: в Google Workspace нужно ещё нажать «Начать аутентификацию», в Microsoft 365 — перевести переключатель в Defender. До этого момента безупречная запись DKIM просто не используется.
  • Подпись ставит сторонний домен. Если сервис рассылок подписывает письма собственным доменом, DKIM пройдёт, а согласование — нет. Нужен собственный ключ на вашем домене.
  • Значение ключа обрезано. Длинная запись при копировании часто теряет конец. Проверьте, что опубликованное значение совпадает с выданным полностью.

Посмотреть, какие селекторы и ключи DKIM сейчас опубликованы в вашем домене, можно бесплатной проверкой DKIM.

ShareX / TwitterLinkedIn
Бесплатный старт · 14 дней пробного периода · отмена в любой момент

От подделки — к блокировке.

p=none
5 минут
p=quarantine
2-я неделя
p=reject
4–6-я неделя

Оплата — после завершения 14-дневного пробного периода · отмените раньше, и списания не будет