Что такое DMARC | База знаний сервиса email-рассылок UniSender

Что такое DMARC и как он защищает подписчиков от мошенников и спама

DMARC (Domain-based Message Authentication Reporting and Conformance) — это политика защиты пользователей от спама и фишинговых писем.

Если описать DMARC более точным, научным языком, то это аутентификация сообщений, предоставление отчётов и проверка соответствия на базе доменного имени.

Для начала мы дадим немного теории. Если вы хотите быстро настроить DMARC, не вдаваясь в подробности, перейдите к разделу «Как настроить DMARC».

Из истории. Политика DMARC появилась в 2010 году как инструмент защиты от фишинга. Её поддержали почтовые провайдеры AOL, Comcast, GMail, Hotmail, Netease, Yahoo! Mail и отправители рассылок American Greetings, Bank of America, Facebook, Fidelity, JPMorgan Chase & Co., LinkedIn, PayPal.

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

Представьте, что вы отправляете массовую рассылку. Например, через UniSender. В этом случае email-провайдеру, например Mail.ru, важно знать, что именно вы разрешили UniSender отправлять письма от вашего имени. Что письма с вашего домена отправляете именно вы, а не какой-нибудь мошенник.

DMARC регулирует этот процесс. Он указывает серверу, что делать с письмом, если записи DKIM и SPF некорректны. Корректные DKIM и SPF подтверждают, что письмо действительно было отправлено от домена, указанного в поле «От:» в письме. Даже если технически письмо отправлено с серверов UniSender, а не с вашего почтового сервера.

Таким образом, DMARC отвечает за аутентификацию почты. То есть за процедуру проверки подлинности отправителя.

Подробнее об аутентификации

Разберемся, как именно DMARC это делает.

DMARC — это протокол, в котором записано, что сделать с письмом после прочтения DKIM- и SPF-записей. DKIM и SPF — это записи в настройках почтового домена. Они подсказывают email-провайдеру, что делать с пришедшим ему письмом.

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

dmarc1

Пример работы DKIM — аутентификация домена

SPF работает иначе: он показывает, можно ли с конкретного сервера отправлять письмо от этого домена. Сервер определяется по IP-адресу.

Разберем пример: когда вы отправляете рассылку через UniSender или настраиваете корпоративную почту на Mail.ru, вы делегируете серверам UniSender и Mail.ru право отправлять письма с вашего домена. В SPF написано, что сервера с конкретными IP-адресами получили от вас разрешение отправлять почту с вашего домена.

dmarc2

SPF выявляет доверенного отправителя по IP

Что же делает DMARC:

  • указывает почтовому провайдеру, что делать с письмом в зависимости от результатов прочтения DKIM и SPF,
  • говорит серверу отправить отчет на почту администратора домена (то есть вам или вашему системному администратору) с информацией, какие письма были отправлены и как провайдер поступил с письмами.
dmarc3

Пример работы DMARC: прочитал DKIM и говорит, что делать с теми, у кого данные не совпадают

Чтобы лучше разобраться, посмотрим, как эти протоколы работают при отправке обычной рассылки.

Как провайдер проверяет письма с учетом настроек DMARC

Допустим, вы отправили рассылку через UniSender пользователю на Mail.ru.

Как сегодня проходит отправка и получение письма:
1. Письмо отправлено.
2. Отправляющий сервер прописывает DKIM каждому письму.
3. Письмо получено провайдером получателя (Mail.ru).
4. Провайдер проверяет репутацию домена, вхождение email и домена в черные списки, IP-адреса серверов, с которых отправлено письмо. В рамках этой проверки:

  • Провайдер расшифровывает и верифицирует DKIM. Точно ли от этого домена отправлено письмо, или это подделка?
  • Провайдер расшифровывает и верифицирует SPF. Разрешено ли слать письма от этого домена этому IP?
  • Провайдер применяет политику, прописанную в DMARC. В DMARC написано отправить в «Спам» тех, у кого DKIM не совпадает и отправить отчет об этом администратору домена.

5. К письму применяются стандартные спам-фильтры. Как они работают — читайте отдельную статью.
6. Четыре варианта развития событий после:

  • Письмо пропущено и попадает во «Входящие» получателю. Если DKIM и SPF в порядке, а спам-фильтры пройдены.
  • Письмо добавлено в карантин (в «Спам»). Если DKIM не совпадает и/или спам-фильтры не пройдены.
  • Письмо отклонено (не доставлено). Индивидуальные причины: к примеру, у пользователя забит почтовый ящик.

7. После того, как письма распределены, отправителю сформирован и отправлен автоматический отчёт, где написано, что произошло с отправленными письмами.

То же самое в виде схемы:

dmarc4

График, как происходят все стандартные проверки письм

А теперь перейдем к настройке DMARC. Мы будем разбираться, как делать это с помощью стандартных настроек домена и хостинга. Если вы хотите разобраться в технических вопросах — обратитесь к своему системному администратору.

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

Чтобы настроить DMARC, нужно:

  1. Зайти в панель управления хостингом вашего сайта.
  2. Найти в настройках управление DNS-записями.
  3. Внести новую TXT-запись DMARC. Дальше мы на примере разберем, что именно надо написать.
  4. Самые распространённые записи мы перечислили в примерах. Можете просто скопировать запись оттуда.
  5. Сохранить внесенные изменения.

Вам нужно в своем хостинге найти раздел, где редактируются TXT-записи. Запись TXT — это тип записи DNS в текстовом формате, которая говорит внешним источникам, что делать. К примеру, подтверждает собственность на домен. Или, как DMARC, говорит почтовикам, что делать с письмами от этого домена.

Вот, к примеру, панель хостинга Fornex. Тут TXT-записи редактируются в разделе «Домены». Если не получится найти сразу — обратитесь в службу поддержки хостинга, они вам помогут.

dmarc6

Пример для хостинга Fornex. Куда вставляется TXT-запись

Примеры записей DMARC и что они значат

Вы можете просто скопировать ту запись, которая подходит для вашей задачи. Если что-то не получается — обращайтесь в Службу заботы о клиентах UniSender, вам обязательно помогут.

Пример 1. Что написать в DMARC, если вы не делаете рассылки.

Если у вас небольшой сайт, вы не делаете массовую рассылку и используете только корпоративную почту, вам достаточно базовой записи DMARC. Она выглядит так:

"v=DMARC1; p=none;"

Здесь видно, что запись есть, и политика — ничего не делать.

Пример 2. Что написать в DMARC если вы делаете рассылки

Если вы делаете рассылки, вам нужно прописать DMARC так, чтобы вы получали отчёт об отправках и политику указать none, так как вы пока не знаете, какие еще письма отправляются с вашего домена. Если вы поставите quarantine можете отправить хорошие, но неправильно настроенные письма в «Спам».

"v=DMARC1; p=none; sp=none; rua=mailto:postmaster@domain.tld"

Это один из самых популярных вариантов записи.

Тег «rua» с адресом обозначает, что на эту почту будет приходить отчёт. Упростить чтение отчётов можно с помощью сервиса Uriports.

Пример 3. Отклонять все сообщения, не прошедшие проверку DMARC

Такая запись будет означать, что все письма, у которых не совпадает DKIM будут не доставлены. Ее можно писать, если вы уверены, что письма отправляете только вы и всё у вас настроено корректно. Отчетов вы получать не будете.

"v=DMARC1; p=reject"

Пример 4. Отклонять все сообщения, не прошедшие проверку DMARC и отправлять все отчёты на ящик admin@test.ru.

Пишите такую запись в ситуации, когда вы точно знаете, что вас взломали. И от вашего имени отправляют письма. Но сначала убедитесь, что DKIM настроен. Только впишите ваш email вместо admin@test.ru.

"v=DMARC1; p=reject; rua=mailto:admin@test.ru"

Пример 5. 30% сообщений, которые приходят от вашего домена, но не проходят проверки DMARC, помещать в карантин.
Запись подходит, если вы начали понемногу работать с доставляемостью. Тогда 30% будут проверятся на DKIM и отправляться в «Спам» если он не соответствует. А к остальным карантин применятся не будет.

"v=DMARC1; p=quarantine; pct=30"

Что писать в настройках DMARC

Этот раздел для тех, кто хочет более детально разобраться в значениях тегов и механизме работы DMARC.

Рассмотрим, что означают разные теги и политики DMARC.

"v=DMARC1; p=none;"

v=DMARC1 — версия протокола DMARC, должна быть 1.

Это обязательно нужно написать, чтобы провайдер распознал, что именно эта TXT-запись определяет политику DMARC. Если этот параметр не будет идти первым в записи, DMARC не распознается.

p= — это Requested Mail Receiver Policy, то есть что именно сделать с письмом, если DKIM не соответствует.

У политики может быть три варианта значений:

  • p=none — не предпринимать особых действий или все на усмотрение почтового провайдера;
  • p=quarantine — отправить в «Спам»;
  • p=rejected — не принимать письмо.

Какую политику DMARC выбрать

В самой настройке DMARC самое сложное понять, какая политика подойдет для ваших текущих задач.

None — это просто доставлять все письма. Такая политика подходит, когда вы только начали настраивать DMARC и хотите видеть, от кого вообще отправляется почта с вашего домена. Вы же не в курсе всех в вашей компании, кто отправляет письма, в том числе автоматические. Это могут быть разработчики, бухгалтерия (которая подключила 1С), маркетологи из других отделов.

Quarantine — это политика карантина. С этой пометкой письма, в зависимости от почтового провайдера будут:

  • отправлены в спам;
  • отмечены к более строгой проверке;
  • помечены как подозрительные у пользователя во «Входящих».
dmarc 6

Пример пометки письма как подозрительного в Gmaill

Reject — самая строгая политика и самый высокий уровень защиты. Все письма, которые не прошли проверку SPF и/или DKIM будут заблокированы. Казалось бы, выбираем reject и все защищены 🙂 Но с этим есть нюансы.

DKIM/SPF корректно не работают в случае, если:

  • пользователи настроили пересылку писем с одного своего ящика на другой, такие письма от вашего имени не будут доставляться;
  • сервис, через который вы отправляете письма, например платежка, не позволяет прописать DMARC, DKIM и SPF;
  • вы забыли внести сервис рассылок или CRM в белый список отправителей, или белый список работает некорректно, тогда все массовые рассылки по вашему же выбору не будут доставляться пользователям;
  • другие виды ошибок и поломок в DMARC- записи.

Если вы настроите политику reject, во всех этих случаях письма не будут доставляться отправителям.

Эксперты советуют сначала прописать в политику DMARC политику p=none и корректные отчёты с помощью тегов rua и fo. В отчётах будет видно, с каких адресов уходят письма и что с ними происходит. Не исключено, что вы найдете и мошеннические отправки.

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

На эту тему читайте советы:

Теги DMARC бывают обязательные и не обязательные. Обязательные — это v=DMARC1 и p= со значением политики. Мы выше рассказали, как ее выбирать.

Необязательные теги DMARC

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

  • aspf и adkim позволяют проверять SPF и DKIM и могут принимать значения r (relaxed) — мягкая проверка и s (strict) — строгая, для начала выбирайте мягкую проверку, чтобы не заблокировать некорректно настроенные, но нужные письма от вашего домена, например автоматическую отправку счетов из 1С;
  • pct отвечает за % писем, подлежащих фильтрации по этому протоколу. Если не заполнено — то все. Если pct=20 — будет фильтровать 20% писем.
  • sp — политика субдомена (или субдоменов), которая работает так же, как и политика домена. Когда вы делаете массовую рассылку, почта отправляется с разных поддоменов на вашем домене. Вы можете регулировать каждый из них.
  • rua — email, на который раз в сутки будет приходить агрегированный отчёт в XML. Этот отчёт и поможет вам узнать, кто отправляет письма от вашего имени и какие письма вообще отправляются от вашего домена.
  • rf — отчёт, если письмо не прошло проверку;
  • fo — failure reporting options, если механизм отчёта не сработал:
    • fo=0 (используется по умолчанию) — отправить отчёт, если не пройден ни один этап аутентификации;
    • fo=1 — если не пройден хотя бы один этап аутентификации;
    • fo=d — если не пройдена DKIM;
    • fo=s — если не пройдена SPF.

Полный перечень тегов

Так как DMARC был придуман для защиты от фишинга, разберёмся, что это такое и почему важно от него защищаться.

Как работает фишинг и почему защита от него важна

В 2018 году фишингу подверглось 83% пользователей, но только 65% смогли объяснить что это такое.

Фишинговое письмо не всегда выглядит, как подделка. Иногда дизайн в точности повторяет письмо от бренда, а заметить, что ссылки и email отправителя не совпадают, очень сложно. А можно просто не знать, с какого адреса бренд отправляет важные информационные сообщения.

Пример особо опасного фишинга — маскировка под Gmail

Интернет-мошенники, которые занимаются фишингом, подделывают письмо и сайт авторитетного отправителя. Затем отправляют пользователю письмо с эмоциональной темой, например, «Кто-то украл ваш пароль». Посмотрите на адрес отправителя, это точно не Gmail. Но в спешке можно этого не заметить.

dmarc7

Пример фишингового письма, подделанного под Gmail

Затем пользователь переходит на страницу, которая выглядит точь в точь как страница авторизации в Gmail. Можно и не заметить, что со ссылкой что-то не так.

dmarc 8

Пример фишинговой страницы под Gmail

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

По ссылке — много примеров искусного фишинга.

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

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

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

Полезные ссылки

Полный путеводитель по DMARC
DMARC: защитите вашу рассылку от подделок
FAQ по настройке аутентификации на сайте DMARC
Сервис проверки домена на DMARC онлайн
Как настроить аутентификацию рассылок

Вы нашли ответ?

12
1