Битрикс: диагностика доставляемости писем
Если письма из Битрикс попадают в спам или не доходят совсем, дело почти всегда в канале отправки: локальный sendmail через mail(), невключенный SMTP, отсутствие DKIM и DMARC закрывают письмам путь в инбокс до того, как провайдер оценит контент. Ниже рабочее дерево диагностики: заголовки письма, DNS домена, логи и коды SMTP, пороги жалоб Gmail и Mail.ru. По одному проблемному письму причину обычно находят за вечер, дальше остаются настройка и контроль.
1. Как Битрикс отправляет письма и где ломается доставляемость
В коробочном "1С-Битрикс: Управление сайтом" почтой управляет главный модуль. По умолчанию письма форм, уведомлений о заказах и рассылок отправляет функция mail() через локальный sendmail сервера хостинга; очередь лежит в таблице b_event, ее забирает почтовый агент. Если в настройках главного модуля включен SMTP, отправка идет через указанный ящик или релей.
В облачном Битрикс24 письма CRM уходят через серверы сервиса либо через подключенные ящики сотрудников, и диагностика зависит от того, какой домен получатель видит в поле From: домен сайта, корпоративный домен или домен сервиса.
Прежде чем менять настройки, определите сценарий отправки по таблице: от него зависит, где искать причину.
| Сценарий отправки | Что проверить в первую очередь |
|---|---|
| mail() и sendmail на хостинге | PTR IP-адреса сервера, SPF домена From, наличие DKIM, IP в черных списках |
| SMTP в настройках главного модуля | лимиты ящика-отправителя, SPF и DKIM домена, корректный Return-Path |
| Битрикс24 облако или внешний ESP | верификацию домена в сервисе, DKIM-селектор, отдельный поддомен для рассылок |
- ✕Сайт шлет письма сам через sendmail хостинга, а владелец уверен, что работает корпоративный SMTP: смотрите верхнюю строку Received в заголовке письма.
- ✕В From подставлен чужой домен или домен, для которого вы не управляете DNS: такие письма отклоняются или падают в спам в первую очередь.
2. Шаг 1. Читаем заголовки проблемного письма
Возьмите письмо, попавшее в спам: в Gmail это "Показать оригинал", в Mail.ru "Свойства письма", в Яндекс Почте раздел служебных заголовков. Нужны три блока: верхняя строка Received (кто физически передал письмо), Authentication-Results (вердикты SPF, DKIM, DMARC) и пара Return-Path с From.
Пример фрагмента из письма магазина на Битрикс, рассылка которого ушла в спам Gmail:
Authentication-Results: mx.google.com; spf=fail (domain of example-shop.ru does not designate 203.0.113.45 as permitted sender) smtp.mailfrom=example-shop.ru; dkim=none; dmarc=fail (p=none) header.from=example-shop.ru
Читаем: письмо физически ушло с IP 203.0.113.45, это сервер хостинга сайта; SPF этот IP не разрешает, DKIM-подписи нет, DMARC падает автоматически. Сайт отправляет сам, хотя владелец был уверен в обратном. Диагноз поставлен, дальше идут исправления.
- •Прогоните полный заголовок через бесплатный анализатор /tools/email-header-analyzer: он разбирает цепочку Received и вердикты аутентификации прямо в браузере.
- •Для прохождения DMARC домен From должен совпадать (alignment) хотя бы с одним из двух: доменом Return-Path при spf=pass, либо доменом d= из DKIM-подписи при dkim=pass - оба сразу не обязательны.
3. Шаг 2. Проверяем DNS домена отправителя
Проверьте зону домена из From командами ниже (dig в Linux и macOS, nslookup в Windows). Селектор DKIM берите из заголовка DKIM-Signature, поле s=.
| Команда | Что должны увидеть |
|---|---|
| dig TXT example-shop.ru +short | одна запись, начинающаяся с v=spf1 |
| dig TXT mail._domainkey.example-shop.ru +short | публичный ключ DKIM вида v=DKIM1; k=rsa; p=... |
| dig TXT _dmarc.example-shop.ru +short | запись вида v=DMARC1; p=... |
| dig MX example-shop.ru +short | MX-серверы домена |
| dig -x 203.0.113.45 +short | PTR-запись IP-адреса сервера сайта |
Типичные находки: SPF нет или записей две (две записи дают permerror для всего письма), DKIM-ключ не опубликован, потому что настройку не довели до конца, DMARC отсутствует. Разбор частных случаев: /blog/spf-multiple-records, /blog/spf-too-many-dns-lookups, /blog/dkim-selector. Быстрая проверка без консоли: /tools/spf-check, /tools/dkim-check, /tools/dmarc-check.
4. Шаг 3. Настраиваем SPF, DKIM и DMARC
SPF должен разрешать отправку всем системам, которые пишут от имени домена: сервер сайта, корпоративная почта, сервис рассылок. Пример гибрида "сайт на своем IP плюс Google Workspace":
example-shop.ru. IN TXT "v=spf1 ip4:203.0.113.45 include:_spf.google.com -all"
Запись одна. На нее действует лимит 10 DNS-lookup (считаются include, a, mx, ptr, exists и модификатор redirect), при превышении получатель зафиксирует permerror.
DKIM. В коробочном Битрикс нет встроенного переключателя DKIM в настройках главного модуля: подпись добавляют модулем SMTP с Маркетплейса, который отдельно заявляет поддержку DKIM, либо настраивают на уровне почтового сервера хостинга (например, OpenDKIM перед sendmail или Postfix). Если отправка идет через внешний SMTP, ESP или корпоративную почту Битрикс24, DKIM настраивается на стороне этого сервиса при верификации домена, а не в самом Битриксе.
DMARC начинайте с наблюдения, без блокировок:
_dmarc.example-shop.ru. IN TXT "v=DMARC1; p=none; rua=mailto:dmarc-reports@example-shop.ru"
Отчеты rua покажут, кто и с каким результатом шлет от имени домена; когда все легитимные источники начнут проходить проверку, политику ужесточают до quarantine и reject. Пошаговая схема: /blog/nastroit-dmarc-bez-poteri-pisem.
- ✕Не смешивайте транзакционные письма сайта (заказы, регистрации, восстановление пароля) и маркетинговые рассылки в одном домене: выделите рассылкам поддомен, чтобы жалобы не задавили уведомления (/blog/poddomeny-i-potoki-email).
- ✕Не выставляйте сразу p=reject: сначала соберите отчеты и убедитесь, что все рабочие источники подписываются корректно.
5. Шаг 4. Коды SMTP и логи: почему письма не доходят
Если письма не доходят вообще, ищите ошибки отправки: журнал событий административного раздела Битрикс и статусы записей в b_event, при отправке через свой SMTP дублируйте поиск в mail.log сервера. Класс проблемы подскажет код ответа провайдера.
| Код SMTP | Что означает и что делать |
|---|---|
| 550 5.7.26 | Gmail отклонил письмо из-за непройденных проверок SPF и DKIM: чините аутентификацию, разбор кода в /blog/gmail-550-5-7-26 |
| 550 5.7.1 | Постоянный отказ доставки: блокировка IP или репутация отправителя, проверьте IP (/tools/blacklist-check), подробнее /blog/smtp-550-5-7-1 |
| 421 или 451 | Временный отказ и троттлинг: провайдер просит снизить темп, письмо вернется в очередь, детали /blog/smtp-421-451-rate-limit |
Ответ "250 OK" от принимающего сервера означает только прием письма, а не попадание в инбокс: разница разобрана в /blog/delivery-ne-ravno-inbox.
6. Пороги жалоб Gmail и Mail.ru
Аутентификация открывает дорогу, а решает репутация: провайдеры считают жалобы в том числе по вашему DKIM-домену. Статистика Google Postmaster Tools привязана к домену d= в подписи DKIM, смена селектора s= ее не сбрасывает, поэтому сначала добейтесь dkim=pass и только потом оценивайте жалобы.
| Провайдер и объем отправки | Порог жалоб |
|---|---|
| Gmail, рекомендация Google | до 0,1% в день, жесткий предел 0,3% |
| Mail.ru, до 10 000 писем в месяц | 1,1% |
| Mail.ru, до 500 000 писем в месяц | 1% |
| Mail.ru, до 10 000 000 писем в месяц | 0,8% |
| Mail.ru, до 50 000 000 писем в месяц | 0,5% |
| Mail.ru, свыше 50 000 000 писем в месяц | 0,3% |
Для отправителей более 5000 писем в день на Gmail действуют требования Google: корректные SPF и DKIM, DMARC-запись домена, одношаговая отписка. Контролировать обе площадки можно из одного окна: PostmastersTool забирает из Google Postmaster Tools доли SPF, DKIM, DMARC и уровень жалоб, из Mail.ru Postmaster объемы, доставку и показатель "Репутация, %" (средний процент жалоб за 30 дней), и присылает уведомление при пересечении порогов: /google-postmaster-monitoring, /mailru-postmaster-monitoring.
7. Проверка результата и ограничения
После изменений отправьте тестовые письма на Gmail, Mail.ru и Яндекс и убедитесь по заголовкам, что spf=pass, dkim=pass, dmarc=pass, а домены From, Return-Path и DKIM совпадают. Повторите dig-проверки снаружи. Через день-два посмотрите в мониторинге рост долей прошедшей аутентификации и уровень жалоб в пределах порогов.
Ограничения. Если жалобы уже высокие или база собиралась годами, одной аутентификации недостаточно: придется чистить список и работать с согласиями (/blog/kachestvo-bazy-i-dostavlyaemost), пересматривать контент и ссылки (/blog/ssylki-i-kontent-email-spam), при новом домене или канале запускать прогрев (/blog/progrev-domena-bez-nakrutki). Отправка с общего IP хостинга оставляет вас в зависимости от соседей (/blog/shared-vs-dedicated-ip).
- •Authentication-Results проблемного письма: spf=pass, dkim=pass, dmarc=pass.
- •В DNS одна SPF-запись, DKIM-ключ отвечает по селектору из письма, у DMARC заполнен rua.
- •Жалобы Gmail не выше 0,1%, показатель "Репутация, %" Mail.ru не растет день к дню.
- •Доля временных ошибок SMTP в b_event снижается после исправлений.
Что сделать дальше
Проверьте канал по шагам, затем подключите постоянный контроль.
- 1Разберите заголовок проблемного письма
Бесплатный анализатор покажет вердикты SPF, DKIM, DMARC и цепочку серверов.
Открыть анализатор - 2
- 3Обсудить аудит
Если рассылка из Битрикса сидит в спаме давно, аудит покажет, что чинить первым.
Обсудить аудит - 4Включите мониторинг жалоб
Уведомления при пересечении порогов Gmail и Mail.ru в выбранный канал.
Зарегистрироваться