Ключевые слова: DKIM, SPF, DNS, DMARC, почтовое сообщение.
Обмен email-сообщениями является актуальным способом коммуникации, при этом не обеспечивается гарантированная доставка и сообщение может быть отклонено по различным причинам.
В настоящее время почтовые сервера начали отклонять прием писем из-за антиспамовых мер, которые применяются теперь и к единичным отправлениям (не к рассылкам). Отправитель не может быть уверен в получении адресатом направленного ему сообщения.
Например, при отправке почтовых сообщений на адреса gmail.com в ответ получен отказ сервера:
Рис.1. Сообщение Gmail об отклонении личных писем без аутентификации записями DKIM и SPF
Записи SPF, DKIM и DMARC (вносятся в DNS сервера домена отправителя) являются основными настройками, подтверждающими подлинность отправителя.
SPF запись используется для защиты от спама и фишинговых сообщений от имени домена, помогает предотвратить попадание писем, отправляемых из организации, в папку «Спам» получателей. Она должна присутствовать, чтобы указать список серверов, которые имеют право на отправку писем от имени email-адресов этого домена. Если SPF не используется, система с большей вероятностью будет помечать письма из организации или домена как спам.
DKIM — это стандарт защиты электронных писем, с помощью которого серверы получателей могут определить, действительно ли письмо было отправлено владельцем домена. Основан на проверке подлинности цифровой подписи.
DMARC — позволяет принимающим почтовым серверам, определить делать с письмами, которые не прошли проверку SPF и DKIM. При обнаружении почтовым сервером не соответствий адресов отправителей, электронных подписей и информации в записях SPF и DKIM, сервер произведет действия согласно данным записи DMARC (отклонит, отправит в спам или не сделает ничего).
Рис. 2. Схема прохождения электронного письма с анализом записей
Подробнее рассмотрим движение электронного письма (см. Рис.2).
Предварительно, с помощью почтового сервера отправителя, формируется пара открытый/закрытый ключ. Открытый ключ размещается в DNS-сервере в записи DKIM (типа TXT). Сообщение формируется почтовым клиентом и отправляется на почтовый сервер, который подписывает сообщение закрытым ключом.
Сообщение перемещается в сервер приема почты (получатель), сервер видит подпись и, взяв открытый ключ (DNS запись DKIM), и проверяет подпись.
Одновременно проверяется, что сервер домена отправителя имеет разрешение на отправку сообщений электронной почты (в DNS запись SPF).
При успешности обоих проверок сообщение будет доставлено.
При непрохождении проверки SPF и DKIM, сервер действует согласно рекомендациям в записи DMARC, где может быть указано перемещать такое письмо в папку «спам», отклонять его, отправлять отчет о недоставке на определенный адрес домена отправителя.
Приведем пример практической настройки записей для домена iDom.pro. Почтовый сервер размещен на ресурсе Яндекса и в первый момент Яндекс информируют, что для домена iDom.pro не настроены записи
Настроим DKIM. Для нас был сгенерирован публичный ключ. В настройках домена добавляем TXT-запись с данными параметрами:
Рис. 3. Начальное состояние
При выборе «Настроить DKIM» формируется пара закрытый/открытый ключ и открытый ключ доступен для копирования (см. Рис.4).
Рис. 4. Формирование данных для записи DKIM
Сформированный публичный ключ необходимо внести в TXT-запись DNS сервера домена (на ресурсе регистратора, в нашем случае nic.ru)
Рис. 5. Запись DKIM размещена на DNS сервере
После добавления записи в DNS сервер проверим ее функциональность средствами Яндекс.
Рис. 6. Формирование данных для записи DKIM
Аналогично формируется запись SPF. Запись DMARC формируется вручную в соответствие с потребностью в обработке писем отправителя.
Все записи размещаются в DNS. Финальный результат представлен на Рис. 7.
Рис. 7. Финальное состояние записей в DNS
Настройка безопасной и доверенной отправки почты для домена завершена (см. Рис. 8).
Рис. 8. Финальное состояние записей в DNS
Заключение: в нынешних условиях работы почтовых серверов настройка записей SPF, DKIM, DMARC со стороны отправителя является обязательной для обеспечения доставки почты корреспонденту.
Литература:
1. Требования к аутентификации писем при отправке на аккаунты Gmail. — Текст: электронный // Google: [сайт]. — URL: 1. https://support.google.com/mail/answer/81126#authentication (дата обращения: 29.06.2023).
2. Report on non-delivery to another (non-Yandex) address.. — Текст: электронный // Яндекс: [сайт]. — URL: https://yandex.com/support/mail/bounces/other.html (дата обращения: 29.06.2023).
3. Использование записи инфраструктуры политики отправителей для проверки электронной почты, отправленной из домена. — Текст: электронный // Микрософт: [сайт]. — URL: https://learn.microsoft.com/ru-ru/previous-versions/exchange-server/exchangeserver-149/cc188656(v=exchsrvcs.149)?redirectedfrom=MSDN (дата обращения: 29.06.2023).
4. Hansen, T. DomainKeys Identified Mail (DKIM) Service Overview / T. Hansen. — Текст: электронный // Datatracker: [сайт]. — URL: https://datatracker.ietf.org/doc/html/rfc5585 (дата обращения: 29.06.2023).