Если ваши письма с доменной почты не доходят до получателя или попадают в спам, стоит настроить в зоне DNS домена три TXT‑записи: SPF, DKIM и DMARC.
Что это за записи и зачем они нужны
Почтовые сервисы проверяют отправителя письма для того, чтобы защитить репутацию домена: почтовый адрес отправителя часто могут подделывать и использовать для спама и фишинга.
Пример: У вас интернет‑магазин, клиентам могут прийти поддельные письма с предложением купить товары по акции. Ссылки внутри будут фальшивыми → при переходе откроется мошеннический сайт → нехорошо.
Сервисам достаточно проверить SPF и DKIM доменов‑отправителей, чтобы защитить пользователей от поддельных писем. В записи DMARC указано, как действовать серверу, когда письмо не проходит такую проверку.
SPF
Это TXT-запись для проверки сервера отправителя. В запись SPF (Sender Policy Framework) включен список серверов, с которых разрешено или запрещено отправлять письма от имени домена.
Как настроить
SPF‑запись может быть только одна. Ее нужно добавлять для того домена или поддомена, на котором будет почта:
domain.com. TXT "v=spf1 ..."
Чтобы настроить запись на нашем хостинге, используйте пример:
v=spf1 a mx ip4:141.8.194.175 ip6:2001:db8:1234::/48 ~all
где 141.8.194.175 и 2001:db8:1234::/48 — IP‑адреса сервера, на котором находится аккаунт. Скопировать их можно на странице IP‑адреса.
Примеры записей для других почтовых сервисов:
- Google:
v=spf1 include:_spf.google.com ~all
- Яндекс:
v=spf1 redirect=_spf.yandex.net
- VK Workmail:
v=spf1 redirect=_spf.mail.ru
SPF‑запись для почты, которая будет отправляться с нашего сервера и с сервера Яндекса:
v=spf1 a mx ip4:141.8.194.175 ip6:2001:db8:1234::/48 include:_spf.yandex.net ~all
Что значат символы в записи
SPF состоит из трех частей, разберем на примере:
v=spf1 a mx ip4:141.8.194.175 ip6:2001:db8:1234::/48 include:_spf.yandex.net ~all
- v=spf1 — версия записи
- a mx ip4:141.8.194.175 ip6:2001:db8:1234::/48 include:_spf.yandex.net — параметры и их значения
- ~ — один из возможных префиксов, в примере он указывает, что делать с письмами с любых других серверов, которые не указаны в параметрах.
Основные параметры:
- all — любой сервер
- ip4 — указанный IP‑адрес или подсеть адресов
- a — подстановка IP‑адреса, который указан в A‑записи домена
- mx — подстановка IP‑адреса, указанного в MX‑записях домена
- include — письмо от имени этого домена можно отправить от имени указанных почтовых сервисов (например, Яндекса или Google).
Также есть модификатор redirect — параметр, который поможет сервису получить SPF‑запись в другом месте. SPF с ним выглядит вот так:
v=spf1 redirect=_spf.yandex.net
Если указан redirect, остальные значения будут игнорироваться.
К любому параметру можно добавить префикс, чтобы было понятно, что делать с письмами:
- + — принимать (по умолчанию)
- ‑ — отклонять
- ~ — отправить в папку «Спам»
- ? — нужна дополнительная проверка.
Проверить запись на корректность можно с помощью специального сервиса, например, MXToolBox. Перед проверкой дождитесь обновления кеша DNS, обычно это занимает 2–8 часов.
DKIM
TXT-запись DKIM (DomainKeys Identified Mail) — проверка домена отправителя.
Она состоит из двух частей: подписи и ключа для расшифровки подписи. Подпись добавляется на сервере в заголовки исходящих писем, а ключ расшифровки добавляется в DNS‑записи домена. Сервер‑получатель сверяет подпись и ключ — если они не совпадают, письмо помечается как спам.
И подпись, и ключ имеют уникальные значения, они должны быть сформированы и получены в одном месте. Это как замок и ключ: если купить замок в одном месте, а ключ — в другом, то открыть ничего не получится.
Поддомен в имени TXT‑записи зависит от вашего почтового сервиса.
Пример нашей записи с незаполненными значениями параметров:
dkim_selector._domainkey.domain.com. TXT "v=DKIM1; k=rsa; p=..."
где:
- dkim_selector._domainkey.domain.com. — имя записи DKIM
- k, t, p — параметры ключа.
Как настроить
- Если почта на домене работает от нас — просто включите подпись в разделе Сайты → Мои сайты → выберите сайт → нажмите на Подпись DKIM.
- Если почта создавалась и обслуживается в другом сервисе:
- Скопируйте значение DKIM в настройках этого сервиса
- Перейдите в раздел Сайты → Мои сайты → выберите сайт → нажмите на DNS‑записи
- Добавьте TXT‑запись, указав те имя и значение, которые вы получили.
DMARC
DMARC определяет, что делать с письмами после проверки SPF и DKIM: принять письмо, поместить в папку «Спам» или отклонить.
Как настроить
Запись нужно добавлять для поддомена _dmarc:
_dmarc.domain.com. TXT «v=; p=; ...»
Вот готовые примеры с параметрами, которые вы можете использовать в DMARC:
v=DMARC1; p=quarantine; sp=quarantine; aspf=s;
письма с ящиков основного домена или поддомена: помещает в папку «Спам» те, которые не прошли проверки,
строгая проверка SPF.v=DMARC1; p=reject; sp=quarantine; pct=100;
письма с ящиков основного домена: отклоняет те, которые не прошли проверку,
письма с поддоменов отправляет в папку «Спам»,
проверяет 100% писем.v=DMARC1; p=none;
ничего не делает с письмами, почтовый сервис сам решает, что с ними делать.
v=DMARC1; p=quarantine; fo=1; ruf=mailto:reports@domain.ru;
письма с ящиков основного домена помещает в папку «Спам»,
отправляет отчет о письмах, где не пройдена хотя бы одна проверка, на почту reports@domain.ru.
Расшифровка параметров
Тег | Описание | Значение |
---|---|---|
v | Версия протокола | DMARC1 |
p | Правила для домена | none — бездействовать quarantine — поместить в папку «Спам» reject — отклонить |
aspf | Режим проверки соответствия SPF‑записей | r (relaxed) — разрешить частичные совпадения s (strict) — разрешить только полные совпадения |
pct | Сообщения, подлежащие фильтрации (в %) | Можно указать процент сообщений. По умолчанию 100% |
sp | Правила для поддоменов | none — бездействовать quarantine — поместить в папку «Спам» reject — отклонить |
rua | Почта для отчетов о проверке | mailto:ваша_почта |
ruf | Почта для отчетов о неуспешных проверках | mailto:ваша_почта |