Если письмо уходит во «Входящие» у одних получателей и в «Спам» — у других, чаще всего дело не в тексте письма, а в том, как ваш домен аутентифицирован. Три записи в DNS — SPF, DKIM и DMARC — это то, на что в первую очередь смотрят Gmail, Mail.ru, Яндекс и другие почтовые провайдеры, прежде чем решить, доверять ли отправителю.
SPF: кто имеет право отправлять почту от вашего имени
SPF (Sender Policy Framework) — это TXT-запись в DNS вашего домена, которая перечисляет серверы, которым разрешено отправлять почту от его имени. Получатель проверяет: пришло ли письмо с IP-адреса, указанного в SPF-записи домена отправителя.
Пример простой записи:
v=spf1 mx -all
Это означает: «письма от этого домена может отправлять только сервер, указанный в MX-записи домена; всё остальное — отклонить». Без SPF-записи любой может отправить письмо, представившись вашим доменом — SPF существует, чтобы это предотвратить.
DKIM: цифровая подпись, которую нельзя подделать
DKIM (DomainKeys Identified Mail) добавляет к каждому письму криптографическую подпись, созданную закрытым ключом, а открытый ключ публикуется в DNS в виде TXT-записи по адресу вида селектор._domainkey.ваш-домен.ru. Получатель берёт подпись из заголовка письма, находит открытый ключ в DNS и проверяет: письмо действительно подписано этим доменом и не было изменено после отправки.
В отличие от SPF, который проверяет только IP-адрес отправителя, DKIM переживает пересылку через сторонние серверы — подпись остаётся действительной, даже если письмо прошло через несколько промежуточных серверов.
DMARC: что делать, если SPF или DKIM не прошли
DMARC (Domain-based Message Authentication, Reporting & Conformance) — это политика, которая говорит получателю, что делать, если письмо не прошло SPF или DKIM, и требует, чтобы прошедший проверку домен совпадал с видимым доменом в поле «От кого». Запись публикуется в _dmarc.ваш-домен.ru, например:
v=DMARC1; p=quarantine; rua=mailto:dmarc@ваш-домен.ru
Параметр p= определяет политику:
p=none— только мониторинг, письма доставляются как обычно;p=quarantine— не прошедшие проверку письма помещаются в спам;p=reject— не прошедшие проверку письма отклоняются полностью.
Важный нюанс: DMARC засчитывается пройденным, если хотя бы один из механизмов (SPF или DKIM) прошёл проверку и домен в нём совпадает (выровнен) с доменом в заголовке From. Поэтому DMARC стоит настраивать только после того, как SPF и DKIM уже работают надёжно.
С чего начать
Начните с p=none в DMARC, чтобы собирать отчёты и убедиться, что легитимная почта не блокируется, а затем постепенно ужесточайте политику до quarantine и reject. Самый быстрый способ проверить, что все три записи настроены и реально проходят проверку именно с вашего сервера — отправить тестовое письмо и посмотреть детальный отчёт.
Подробнее о том, что ещё влияет на попадание в спам, — в статье «Почему письма попадают в спам и как это исправить».