Отправляем почту: что такое SPF, DKIM и DMARC

10 комментариев
Что такое SPF, DKIM и DMARC

Ресурсные записи

Ресурсные записи DNS (или DNS-записи домена) – это записи, которые в системе доменных имен указывают соответствие между именем и служебной информацией.

Проще говоря, ресурсные записи связывают имя и служебную информацию о сервере, на который указывает это имя. Например, вы вводите адрес сайта в браузере – и именно DNS-запись позволит вашему провайдеру отправить запрос на сервер с нужным вам сайтом, чтобы затем отобразить его на экране вашего компьютера.

Небольшая справка. DNS (Domain Name System) - это система доменных имен. Она используется для получения информации о доменах, в частности IP-адреса. Более подробно об этом можно прочитать в статье «Введение в терминологию, элементы и понятия DNS».

Ресурсные записи не ограничиваются только соответствием «домен - IP-адрес». Существует несколько десятков типов ресурсных записей. Каждый тип необходим для работы определенной службы.

В этой статье мы остановимся на элементах ресурсных записей, связанных с почтовыми отправлениями: SPF, DKIM, DMARC. И для начала разберемся в том, с какими проблемами могут столкнуться те, кто хочет сделать свою рассылку.

Мое письмо ушло в спам

«Почему мое письмо попало в папку “Спам”?» - этим вопросом задаются многие начинающие пользователи, которые сделали рассылку по своей базе подписчиков.

Сначала определимся, что такое спам. Спам - это массовая рассылка пользователям, которые не давали согласия на ее получения. Весомую долю спама составляют мошеннические письма. Почтовые сервисы отправляют такие письма в папку «Спам», чтобы уберечь своих пользователей от неприятностей: вирусов, фишинга и других видов интернет-мошенничества.

Естественно, процесс анализа «спам-не спам» проходит в автоматическом режиме - у почтовых сервисов есть свои алгоритмы. После их анализа одни письма отправляются во входящие, а другие исчезают в недрах папки «Спам», в которую многие пользователи даже не заглядывают.

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

SPF

SPF (Sender Policy Framework, инфраструктура политики отправителя) - это расширение для протокола отправки электронной почты через SMTP. Используя SPF, владелец домена может указать список серверов, которые смогут отправлять почтовые сообщения с адресом отправителя в этом домене. Иными словами, только указанные серверы смогут отправлять письма от имени этого домена.

Именно настройка SPF-записи защищает домен от несанкционированного использования. Это не позволяет допустить ситуации, когда от имени вашего домена будут рассылаться мошеннические письма.

Поэтому почтовые службы обращают внимание на SPF-запись, а также DKIM и DMARC, о которых будет рассказано далее.

Обязательно проверьте SPF-запись, если письма, отправленные при помощи функции PHP mail(), попадают в спам.

Как настроить SPF

SPF настраивается как TXT-запись для домена.

Небольшая справка. TXT-запись - это тип ресурсной записи, который содержит дополнительную информацию о домене. Чаще всего TXT-запись используется для подтверждения прав собственности на домен и настройки почтовых данных.

В справочном центре Timeweb есть подробная статья об основном синтаксисе и других механизмах настройки SPF - «Настройка SPF-записи».

Более подробно ознакомиться с синтаксисом можно в документации SPF.

Если ваш домен расположен на нашем хостинге (и для него указаны NS-серверы Timeweb), то смело обращайтесь в службу поддержки, наши специалисты помогут вам настроить SPF-запись.

Клиентам с другими NS-серверами необходимо обращаться к держателю NS-серверов.

DKIM

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

Главная задача DKIM - это упростить обнаружение электронных писем с поддельными адресами, когда заявленный адрес не соответствует адресу, с которого было отправлено письмо (один из видов мошеннических писем).

DKIM позволяет значительно облегчить идентификацию законной, правомочной электронной почты.

Технология DomainKeys позволяет передавать через DNS открытые ключи шифрования и затем автоматически проверять подпись на стороне получателя письма. Подпись в виде скрытого кода добавляется в письмо, а затем подтверждает получателю, что письмо отправлено именно с того домена, который указан.

Настройки SPF и DKIM подтверждают, что отправитель письма определен и не является мошенником.

Как настроить DKIM

Информация о DKIM есть в нашем справочном центре в статье «Настройка DNS-записей».

Если вы используете почту Timeweb, то DKIM-подпись создается автоматически: все необходимые настройки автоматически прописываются в тот момент, когда вы создаете первый почтовый ящик на своем домене.

DMARC

DMARC (Domain-based Message Authentication, Reporting and Conformance, идентификация сообщений, создание отчетов и определение соответствия по доменному имени) - это спецификация, направленная на снижение количества мошеннических электронных писем, в частности фишинговых атак.

SPF и DKIM – это хорошие и надежные методы аутентификации отправителя, но они имеют свои недостатки, поэтому была разработана открытая спецификация использования DMARC.

Изначально технология DMARC применялась в Gmail; в данный момент она работает в сервисах Facebook, LinkedIn, Hotmail, Yahoo!, Mail.ru, Яндекс.Почта и других принимающих узлах, которые используют данную технологию.

DMARC позволяет идентифицировать почтовые домены отправителя, основываясь на признаках и правилах, которые заданы на сервере адресата. Стандарт DMARC для принимающих узлов устанавливается в соответствии с механизмами SPF и DKIM, то есть как бы объединяет эти два механизма. И на всех принимающих узлах, поддерживающих эту технологию, будут выдаваться единые результаты.

DMARC дает возможность проверить, соответствует ли домен в заголовке (адрес отправителя) идентификаторам SPF и DKIM. Для того, чтобы письмо прошло проверку, идентификатор должен соответствовать домену, указанному в поле “From” («от»).

Как настроить DMARC

Почтовый сервис Timeweb использует только SPF/DKIM. Но DMARС-запись может быть указана для домена, если домен должен быть настроен для стороннего почтового сервиса, использующего эту спецификацию.

Для настройки DMARC нужно добавить доменную запись в DNS-настройки.

Пример самой простой записи, позволяющей включить режим мониторинга (выполнить тест DMARC и сохранить его результат):

_dmarc.timeweb.com IN TXT “v=DMARC1; p=none”

Такая запись позволить защитить письма, которые будут отправлены от домена timeweb.com, а также от поддоменов (например, mail.timeweb.com).

В этом случае если проверка на стороне получателя покажет, что домен в заголовке “From” соответствует указанному в доменной записи DMARC, то письмо пройдет проверку и попадет в почтовый ящик адресата.

Полную информацию о синтаксисе DMARC можно найти на официальном сайте.

Общие рекомендации

В этой статье советы по настройке почтовых отправлений касаются только SPF, DKIM и DMARC, однако только этими настройками они не ограничиваются. Мы рекомендуем прочитать в нашем справочном центре статью «Рекомендации для рассылок», где рассказывается об общих правилах рассылок, которые обязательно нужно иметь в виду.

Если у вас есть какие-нибудь вопросы, задавайте в комментариях, будем рады помочь!

Комментарии

Gentleman 0
19 авг в 2018
Блин, "связанных с почтовыми отправлениями" звучит как-то по медицински :))
Можно было бы написать просто, связанных с отправкой почты. Не сердитесь, я любя :))
Gentleman 0
19 авг в 2018
А вообще, статья отличная. Я, лично для себя, узнал много нового и юзабельного. Мерси, Кристина)
Свернуть ответы
Комментарий автора
Кристина Лихова +124
29 авг в 2018
Добрый день!

Спасибо за Ваш комментарий, приятно, что статья оказалась полезной.
Gentleman 0
20 авг в 2018
А есть разница между phpmail() и mail()? Я использую mail() и письмо в спам попадает однозначно)) Поможете разобраться?
Свернуть ответы
Gentleman 0
20 авг в 2018
Я разобрался сам :-) В любом случае, эта статья послужила отправной точкой, чтобы мои письма не попадали в мерзкий спам))
Gentleman 0
20 авг в 2018
А что значит "Подтверждённый домен *****.timeweb.ru не соответствует отправителю"? Жёлтенький перечёркнутый замочек)) а нужен нормальный зелёненький))
Комментарий автора
Кристина Лихова +124
29 авг в 2018
Уточните, пожалуйста, о чем именно идет речь? Что конкретно Вы настраиваете?
Комментарий автора
Кристина Лихова +124
29 авг в 2018
Спасибо за вопрос, уточнили у наших специалистов.

mail() - это базовая функция PHP, которая отправляет почту. Функции phpmail() в PHP не существует - вероятно, это какая-то кастомная функция Вашей CMS, которая в итоге все равно обращается к mail().
Константин 0
05 сен в 2018
Тут видимо в тексте самой статьи опечатка: "Обязательно проверьте SPF-запись, если почтовые службы отправляют письма, отправленные с помощью phpmail(), в спам."

Наверно должно быть "отправленные с помощью PHP mail()"
Комментарий автора
Кристина Лихова +124
10 сен в 2018
Константин, добрый день.

Опечатку исправили, спасибо за Вашу внимательность и комментарий!