Коротко
- SPF перечисляет серверы, которым разрешено отправлять почту от имени домена.
- DKIM добавляет к письму цифровую подпись. Открытый ключ к ней лежит в DNS.
- DMARC говорит серверу получателя, что делать с письмом, которое не прошло проверку, и куда присылать отчеты.
- Gmail с 1 февраля 2024 года требует SPF, DKIM и DMARC от тех, кто отправляет более 5000 писем в день.
- Записи подтверждают отправителя и согласия получателя не заменяют. Gmail и Mail.ru требуют писать только тем, кто согласился.
SPF, DKIM и DMARC: что это и что они проверяют
Настройка SPF, DKIM и DMARC состоит из трех TXT-записей в DNS домена. Каждая отвечает на свой вопрос сервера, который принимает письмо:
- SPF. Запись со списком серверов, которые отвечают за отправку почты с домена. Сервер получателя сверяет с этим списком сервер, от которого пришло письмо.
- DKIM. Цифровая подпись в каждом письме. Открытый ключ публикуется в DNS, и сервер получателя проверяет по нему, что письмо отправлено от имени домена.
- DMARC. Правило для сервера получателя: что делать с письмом, которое не прошло проверку SPF и DKIM, и куда присылать отчеты.
Записи создаются в панели управления DNS у регистратора домена или хостинг-провайдера. Порядок такой: сначала SPF и DKIM, затем DMARC. DMARC опирается на результаты двух первых проверок, объясняет справка Mail.ru.
Шаг 1. Настройка SPF: запись со списком серверов
SPF создается как TXT-запись для самого домена. Значения для почты на Яндекс 360 приведены в справке сервиса:
Тип: TXT
Имя: @
Значение: v=spf1 redirect=_spf.yandex.net
TTL: 21600
В некоторых панелях вместо @ указывают имя домена с точкой на конце. Если домен делегирован на серверы Яндекса, запись появится автоматически.
Если почту отправляют и другие серверы, например сервис рассылок или CRM, их адреса добавляют в ту же запись:
v=spf1 ip4:IP-1 ip4:IP-2 ip4:IP-3 include:_spf.yandex.net ~all
Вместо IP-1, IP-2, IP-3 подставляются IP-адреса дополнительных серверов. У другого почтового сервиса значение записи свое: его берут из справки этого сервиса.
Шаг 2. Настройка DKIM: подпись и открытый ключ
Подпись DKIM состоит из двух частей. Закрытый ключ хранит почтовый сервис и подписывает им письма. Открытый ключ владелец домена публикует в DNS. В Яндекс 360 порядок описан в справке о DKIM-подписи:
- В кабинете организации откройте страницу «Домены» и нажмите «Настроить DKIM» рядом с нужным доменом.
- Скопируйте значение публичного ключа.
- В панели DNS создайте TXT-запись с именем
mail._domainkeyи вставьте ключ в поле значения. - Подождите обновления DNS: по справке Яндекса, на это уходит до 72 часов.
Тип: TXT
Имя: mail._domainkey
Значение: v=DKIM1; k=rsa; t=s; p=MIGfMA0GCSEBtaCOteH4EBqJlKpe...
В некоторых панелях имя пишется вместе с доменом: mail._domainkey.yourdomain.tld. Для писем на адреса Gmail Google требует ключ длиной не менее 1024 бит и рекомендует 2048 бит.
Шаг 3. Настройка DMARC: запись с политикой и отчетами
DMARC настраивают после SPF и DKIM. По справке Mail.ru, письмо проходит DMARC, если оно прошло хотя бы одну из двух проверок. Google добавляет условие: домен в заголовке From должен совпадать с доменом, по которому письмо прошло SPF или DKIM.
Запись создается как TXT с именем _dmarc и доменом после него, например _dmarc.example.com:
Тип: TXT
Имя: _dmarc
Значение: v=DMARC1; p=none; rua=mailto:rua@example.com
| Тег | Что задает | Значения |
|---|---|---|
p |
правило для писем, не прошедших проверку | none: никаких действий; quarantine: отправлять в спам; reject: не принимать |
rua |
адрес для сводных отчетов | rua=mailto:rua@example.com |
pct |
доля писем, к которым применяется правило, в процентах | pct=30 |
sp |
правило для поддоменов | те же значения, что у p |
Политику ужесточают по шагам:
- Начните с
p=noneи адреса для отчетов. Mail.ru предупреждает, что такая политика от подделки адреса не защищает и годится только как промежуточный этап. - По отчетам найдите свои сервисы, чьи письма не проходят проверку, и добавьте их в SPF или подключите им DKIM.
- Перейдите на
quarantine, при необходимости на часть писем:v=DMARC1; p=quarantine; pct=30. - Когда свои письма проходят проверку, включите
p=reject.
Если отчеты должны приходить на адрес в другом домене, этому домену нужна своя разрешающая TXT-запись. Порядок описан в справке Mail.ru.
Что требуют Gmail и Mail.ru от отправителей рассылок
Gmail. С 1 февраля 2024 года правила Google делят отправителей на две группы:
| Требование | Все отправители | Более 5000 писем в день |
|---|---|---|
| Аутентификация | SPF или DKIM | SPF и DKIM |
| DMARC | требования нет | обязателен, допустима политика none |
Домен в заголовке From |
требования нет | совпадает с доменом в SPF или DKIM |
| Отписка в один клик | требования нет | обязательна для рекламных писем и рассылок |
| Показатель «Доля попаданий в спам» в Postmaster Tools | не выше 0,3% | не выше 0,3% |
| PTR-записи и подключение TLS | обязательны | обязательны |
Mail.ru. Требования сервиса к массовым рассылкам: настроенные SPF, DKIM и DMARC, заголовок Precedence: bulk в письмах рассылки, осмысленные PTR-записи у отправляющих серверов. Соединения с динамических IP-адресов сервис не принимает.
Адрес отправителя на бесплатной почте. Рассылать через свой сервер письма с обратным адресом на mail.ru, list.ru, inbox.ru или bk.ru не получится: с 2016 года на этих доменах действует строгая политика DMARC, сообщала компания. Google предупреждает о том же: к письмам, где в поле From подставлен чужой адрес, Gmail применяет политику DMARC quarantine. Для рассылок нужен адрес на собственном домене.
Согласие получателя. Записи подтверждают, что письмо отправлено от имени домена. Согласия получателя они не заменяют: Mail.ru требует вести рассылку только по явному согласию получателя, Google просит отправлять письма тем, кто согласился их получать.
Как проверить настройку SPF, DKIM и DMARC
Проверка состоит из трех действий:
- Отправьте письмо с домена на свои ящики в Gmail и Mail.ru.
- Откройте исходный текст полученного письма и найдите заголовок
Authentication-Results. В нем сервер получателя записывает итог проверок:spf=pass,dkim=pass,dmarc=pass. - Дождитесь сводных отчетов DMARC на адрес из тега
rua. В них видны серверы, которые отправляют почту от имени домена.
Для постоянного контроля у обоих сервисов есть кабинеты отправителя: Postmaster Tools у Google и postmaster.mail.ru у Mail.ru.
| Запись | Имя в DNS | Пример значения | Что проверяет |
|---|---|---|---|
| SPF | @ |
v=spf1 redirect=_spf.yandex.net |
сервер отправителя есть в списке разрешенных |
| DKIM | mail._domainkey |
v=DKIM1; k=rsa; t=s; p=... |
подпись письма соответствует ключу домена |
| DMARC | _dmarc |
v=DMARC1; p=none; rua=mailto:rua@example.com |
что делать с письмом, которое не прошло проверки |
После настройки SPF, DKIM и DMARC держите политику none, пока в отчетах остаются свои письма с ошибками. Затем переходите к quarantine и reject. Как строить цепочку касаний после настройки почты, описано в статье «Привлечение лидов без LinkedIn: как выстроить цепочку касаний на российском рынке».