Письма, подписанные DKIM-записью, с меньшей вероятностью попадают в спам. В статье расскажем, для чего нужна DKIM-запись, как ее правильно настроить и использовать.
12 июля 2024
Что такое DKIM-запись и как ее настроить
Что такое DKIM-запись и как ее настроить
Чтобы проверить подлинность отправителя, почтовые сервисы используют цифровые записи: SPF, DKIM и DMARC. Это называется email-аутентификацией — почтовик с их помощью записей анализирует письмо и решает, доставить его, отклонить или отправить в спам. Настройка аутентификации улучшает доставляемость писем, повышает репутацию отправителя и дает возможность использовать сервисы статистики рассылок.
В статье расскажем, как настроить DKIM-запись и как правильно ее использовать.
Что такое DKIM-запись и из чего она состоит
DKIM (DomainKeys Identified Mail) — запись в системе доменных имен отправителя (DNS), которая подтверждает, что домен отправителя подлинный и почтовые сообщения приходят именно от него. Это стандарт защиты электронной почты и метод обнаружения подделки электронных писем.
Типичная DKIM-запись выглядит так:
mail.domainkey.company.com.TXT «v=DKIM1; k=rsa; p=<публичный ключ>»
Разберем на этом примере, что означают составляющие ее теги:
mail — селектор. Можно указать несколько записей с разными селекторами, где в каждой записи будет свой ключ. Для нашего примера это mail;
v — версия DKIM, всегда принимает значение v=DKIM1. Это стандартное значение;
k — тип ключа, всегда k=rsa;
p — публичный ключ, который можно сгенерировать в сервисе рассылки.
Для чего настраивать DKIM-запись
DKIM-подпись важна для проверки подлинности отправителя и защиты писем от мошенников, потому что она:
- Подтверждает подлинность домена отправителя — так сервер определяет, что письмо действительно пришло от указанного отправителя, и только после этого доставляет его. Без DKIM рассылки возможны, но их защиту никто не гарантирует. Например, она защищает письма от фишинга — вида интернет-мошенничества с целью захвата персональных данных пользователя.
- Повышает репутацию отправителя — письма, подписанные DKIM, с меньшей вероятностью попадают в спам и с большей — в папку «входящие», поэтому их доставляемость выше. Если подписи нет, то доверие к домену уменьшается — такие письма попадут в спам с вероятностью 100%.
- Дает возможность использовать постмастеры — сервисы статистики рассылок. Например, postmaster Mail.ru без DKIM-подписи доступ к своему функционалу не предоставит.
Как работает DKIM-запись
Условно работа DKIM-записи делится на два этапа: первый происходит на сервере-отправителе, второй — на сервере-получателе. Подлинность отправителя проверяют через публичный и приватный ключи.
Этап 1 — на сервере-отправителе
Письма подписываются DKIM-подписью, которая генерируется с помощью приватного ключа.
![Картинка Картинка](https://image.mindbox.ru/draw/iJxKlFomh62LwWfOEsGBoHJBbRWRhj0RE8PyPabb.jpg/-/size/1600/webp/1)
DKIM-запись находится в графе signed-by. Запись и имя домена-отправителя ― в заголовке письма
Этап 2 — на сервере-получателе
Получающий сервер с помощью DKIM-подписи в письме и публичного ключа в DNS убеждается, что письмо действительно отправлено от указанного отправителя: делает запрос в DNS и проверяет публичный ключ домена отправителя. Если система DNS подтверждает подлинность домена, письмо доставляется получателю, если нет — отправляется в спам.
Как настроить DKIM-запись
Рассмотрим, как настроить запись в Mindbox. Пара ключей генерируется отдельно для каждого сервера-рассыльщика.
- Ключи нужно сгенерировать в «Настройки» → «Рассылки» → «Настройки email». После добавления и сохранения отправителя появится кнопка «Сгенерировать DKIM».
![Картинка Картинка](https://image.mindbox.ru/draw/IBUyvD6GhiEKvYu9q2YFB7JqmdM4WII9qMz10aqx.jpg/-/size/1600/webp/1)
Интерфейс Mindbox в настройках email — кнопка «Сгенерировать DKIM»
Сгенерированная запись отображается у домена. Ее нужно положить в запись DNS клиента — панель управления к нему предоставляет хостинг-провайдер, у которого был куплен домен.
![Картинка Картинка](https://image.mindbox.ru/draw/RcIOPeRRV6Y5GvwBteCZbZegIQIH43ArktQrZzCU.jpg/-/size/1600/webp/1)
Сгенерированную запись DKIM — _domainkey надо указать в поле «Имя»
Рядом кладем вторую запись _domainkey o=~;, которая говорит о том, что для этого домена могут рассылаться и неподписанные DKIM-сообщения.
![Картинка Картинка](https://image.mindbox.ru/draw/5mAW0WCoXrZ7OoPwtMrG5Jy6JPG2qu8oRoUsn28F.png/-/size/1600/webp/1)
В одном из значений записи DKIM надо указать, что сообщения с этого домена могут рассылаться и без подписи
Дальше надо проверить корректность работы записи — убедиться, что она настроена правильно и все ключи совпадают. Это можно сделать с помощью специальных инструментов, например MXtoolbox.
![Картинка Картинка](https://image.mindbox.ru/draw/3JOHr7PNIjkb76ulO5UFi533U9O4uCVjUqRcvXHK.jpg/-/size/1600/webp/1)
Интерфейс MXtoolbox, в котором можно проверить DKIM-запись на корректность работы
Важно, чтобы ключ, который высвечивается в MXtoolbox, полностью совпадал с тем, что показывается в настройках email в Mindbox, иначе запись настроена неверно. Это совпадение нужно проверить вручную в настройках Mindbox, если обнаружилась такая проблема:
![Картинка Картинка](https://image.mindbox.ru/draw/FQ5dB9xE6woWCRgj81QGAGwn4AKnAtL7JglwB14j.png/-/size/1600/webp/1)
В настройках Mindbox надо проверить совпадения вручную
Также важно, чтобы ключ обнаруживался с нужным селектором — для нашего примера это Mindbox:
![Картинка Картинка](https://image.mindbox.ru/draw/yCO4dB4eRjgmmUPnCZii9czmumYLnsaY3YrXYQMK.png/-/size/1600/webp/1)
Ключ и селектор совпадают
Если ключ таким образом не обнаруживается, то либо DKIM вообще не настроен, либо есть ошибка в имени записи mindbox._domainkey.
Также для проверки можно отправить письмо на Gmail и открыть его оригинал.
![Картинка Картинка](https://image.mindbox.ru/draw/IfqDF49XV16IAsApOZ0CoSXukzrYy7Lc51crmFpl.png/-/size/1600/webp/1)
Посмотреть оригинал можно, кликнув на дополнительные функции в отправленном письме
Если в оригинале получилось найти dkim=pass, то все настроено правильно.
![Картинка Картинка](https://image.mindbox.ru/draw/FEEbPorTUOTXwmccUaXqPuca8b883suvipqyCn2s.jpg/-/size/1600/webp/1)
Пример оригинала письма с dkim=pass
Если при попытке отправить письмо на mail.ru выдается ошибка вида dkim=invalidreason=pubkey_syntax, то надо проверить опубликованную запись DKIM на наличие пробелов и удалить их.
DKIM-запись работает в комплексе с проверкой SPF и политикой DMARC. SPF-запись тоже находится в системе DNS и несет информацию о цифровых адресах —
IP-адресах домена отправителя. Если письмо не пройдет проверку SPF и DKIM, политика DMARC укажет, что с ним сделать: пропустить во входящие или отправить в спам. Поэтому важно настраивать все три цифровые записи.
IP-адресах домена отправителя. Если письмо не пройдет проверку SPF и DKIM, политика DMARC укажет, что с ним сделать: пропустить во входящие или отправить в спам. Поэтому важно настраивать все три цифровые записи.