Письма с вашего домена уходят в спам или не доходят вовсе — и почти всегда разговор упирается в три записи DNS: SPF, DKIM и DMARC. Это не «настройки для гиков», а способ доказать почтовым серверам, что письмо с адреса на вашем домене действительно отправили вы. Без них крупные провайдеры относятся к рассылке с подозрением, а Gmail и Yahoo прямо требуют аутентификацию от всех, кто шлёт заметные объёмы.
Правильный порядок работ такой: сначала аутентификация, затем чистка базы — проверка адресов перед отправкой — и только потом сама рассылка. Настраивать DNS имеет смысл до того, как вы начнёте разбираться с возвратами: иначе непонятно, что именно вы чините.
SPF: кто имеет право отправлять от вашего имени
SPF — это TXT-запись в корне домена, перечень серверов, которым разрешено отправлять почту от вашего имени. Выглядит она примерно так: v=spf1 include:_spf.provider.com include:mail.crm.com ~all
Читается слева направо: версия, потом список разрешённых источников (обычно через include: вашего провайдера, реже — конкретными механизмами ip4: и ip6:), и в конце — что делать со всем остальным. ~all означает мягкий отказ: письмо примут, но пометят как подозрительное. -all — жёсткий: не с моих серверов, отклоняйте. Начинайте с ~all и переходите на -all, когда убедитесь, что перечислили всех отправителей: почту сотрудников, CRM, биллинг, форму обратной связи на сайте.
Важно понимать, что SPF проверяет технический адрес возврата (Return-Path), а не то, что получатель видит в поле «От кого». Именно поэтому одного SPF недостаточно.
DKIM: подпись, которую нельзя подделать
DKIM добавляет к каждому исходящему письму криптографическую подпись. Закрытый ключ хранится на отправляющем сервере, а открытый вы публикуете в DNS отдельной записью с селектором: selector1._domainkey.vashdomen.ru со значением v=DKIM1; k=rsa; p=MIGfMA0GCSqGSIb3...
Получатель берёт из заголовка письма имя селектора и домен, запрашивает открытый ключ и проверяет подпись. Совпало — значит, письмо не изменилось в пути и отправлено тем, у кого есть закрытый ключ. Ключ длиной 1024 бита сегодня считается слабым: где есть выбор, ставьте 2048. Селекторов может быть несколько, по одному на каждый сервис рассылки, — это нормально и даже удобно при смене подрядчика.
DMARC: политика и отчёты
DMARC связывает две предыдущие записи и сообщает получателю, что делать при провале проверки. Живёт по адресу _dmarc.vashdomen.ru и в минимальном виде выглядит так: v=DMARC1; p=none; rua=mailto:dmarc@vashdomen.ru
- p=none — ничего не предпринимать, только присылать отчёты. Режим наблюдения.
- p=quarantine — отправлять непрошедшие письма в спам.
- p=reject — отклонять их на входе. Это конечная цель.
- rua= — почтовый ящик для сводных XML-отчётов, которые провайдеры присылают раз в сутки. Читать их удобнее через любой парсер, чем глазами.
Ключевое понятие DMARC — выравнивание (alignment). Проверка засчитывается, только если домен из видимого поля From совпадает с доменом, который прошёл SPF, или с доменом подписи DKIM. Поэтому письмо может формально пройти SPF сервиса рассылки и всё равно провалить DMARC: домены не совпали. Лечится это тем, что сервису выделяют поддомен под Return-Path и настраивают DKIM на вашем домене, а не на домене подрядчика.
Пять ошибок, которые встречаются чаще всего
- Две записи SPF на одном домене. Классика: одну добавил хостер, вторую — вы. Результат — permerror и провал проверки целиком. Запись должна быть ровно одна, все механизмы include: сводятся в неё.
- Больше десяти DNS-запросов. Спецификация ограничивает раскрытие include, a и mx десятью обращениями; превышение — снова permerror. Уберите механизмы сервисов, которыми вы уже не пользуетесь.
- p=none навсегда. Режим наблюдения ни от чего не защищает. Через три-четыре недели чтения отчётов переходите на quarantine, затем на reject.
- Забытое выравнивание. SPF и DKIM зелёные, DMARC красный — почти всегда именно этот случай.
- -all «на всякий случай». Жёсткий отказ, выставленный до инвентаризации отправителей, надёжно убивает письма из вашей же CRM и системы уведомлений.
Как проверить, что всё работает
Самая честная проверка — посмотреть на живое письмо. Отправьте его себе, откройте исходный текст («Показать оригинал») и найдите заголовок Authentication-Results: там должны стоять spf=pass, dkim=pass и dmarc=pass. Чтобы проверить форму подписки на сайте, не засоряя рабочий ящик, удобно завести временный почтовый адрес: подписались, поймали письмо, посмотрели заголовки.
Сами записи смотрят командами dig TXT vashdomen.ru и dig TXT _dmarc.vashdomen.ru (в Windows — nslookup -type=TXT). После правок дождитесь истечения TTL: изменения в DNS расходятся не мгновенно.
Аутентификация — только первый шаг
Безупречно настроенные SPF, DKIM и DMARC не спасут, если вы шлёте по грязному списку. Провайдеры смотрят и на репутацию: долю отказов, жалобы, попадания в ловушки. Поэтому сразу после DNS займитесь базой — прогоните её через валидатор email-адресов и уберите опечатки, несуществующие ящики и явный мусор.
Дальше полезно понимать, что именно вам возвращают почтовые серверы: разница между постоянной и временной ошибкой разобрана в материале про жёсткий и мягкий отказ доставки, а адреса, которые быстрее всего рушат репутацию домена, описаны в статье о том, что такое спам-ловушка. Порядок неизменный: сначала аутентификация, потом чистая база, и только потом объёмы.
Частые вопросы
Нужны ли все три записи или хватит одной?
Нужны все три. SPF без DKIM ломается при пересылке писем, DKIM без DMARC не говорит получателю, что делать при провале, а DMARC без первых двух просто не на чем работать.
Сколько ждать после изменения DNS?
От нескольких минут до нескольких часов — зависит от TTL записи и кэшей провайдеров. Перед правкой имеет смысл заранее снизить TTL, чтобы при ошибке откат был быстрым.
Что делать с доменом, с которого почта не отправляется?
Закрыть его: SPF со значением v=spf1 -all и DMARC с p=reject. Неиспользуемые домены — любимая мишень для подделки отправителя.
Гарантируют ли эти записи попадание во «Входящие»?
Нет. Они убирают самую частую техническую причину фильтрации, но дальше работают содержание письма, регулярность отправок, реакция получателей и качество списка.