Назад | Перейти на главную страницу

Как мне добавить в белый список другого отправителя (например, Sendgrid) для DMARC?

Мы размещаем нашу собственную электронную почту, но используем Sendgrid для отправки почты от имени нескольких внутренних служб PHP, которые не могут легко обрабатывать нашу конфигурацию почты (например, они по умолчанию запрещают самозаверяющие сертификаты, поэтому заставляют их подключаться к нашему серверу для отправлять такие вещи, как электронные письма с активацией учетной записи, - это PITA, например, до такой степени, что приходится взламывать функции CMS для передачи массива переопределений конфигурации - для горстки электронных писем это было бы, я подумал, черт возьми с этим и просто использовал бесплатный уровень Sendgrid).

Я смог настроить наш SPF, чтобы явно разрешить Sendgrid отправлять электронные письма от нашего имени:

ourdomain.com. IN TXT "v=spf1 mx a ip4:OUR.IP.GOES.HERE/32 include:sendgrid.net -all"

Таким образом, существуют параллельные пути как для почты, отправленной нами, так и для почты, отправленной Sendgrid, чтобы пройти как SPF, так и DKIM. (Я не делал для себя ничего особенного, настраивая DKIM, но это был небольшой процесс - FWIW, вот урок, которому я следовал.)

Но теперь я хочу завершить все с помощью DMARC, а электронные письма Sendgrid не работают, даже если они проходят SPF и DKIM:

Authentication-Results: mx.google.com; dkim=pass header.i=@sendgrid.net header.s=smtpapi header.b=eI2rawkZ; spf=pass (google.com: domain of bounces+15288543-43bf-mygmailaccount=gmail.com@sendgrid.net designates SENDGRID.IP.GOES.HERE as permitted sender) smtp.mailfrom="bounces+15288543-43bf-mygmailaccount=gmail.com@sendgrid.net"; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=ourdomain.com DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=sendgrid.net; h=from:subject:content-type:content-transfer-encoding:mime-version: x-feedback-id:to; s=smtpapi; bh=AZ+8LE7VkXTKxox/rLn7opOhEWv+baJWKr9E5fUOSKs=; b=eI2rawkZeMvtcJXThu7pufwbVPjRHa5xx46txJj0j9gNNDxNs68y8bcPlj1T9r7rxDK4 oi6e19GMvtdyttXR5WKjg2T+w0p5Ep3Ni6YRQhxq4ZsGcO0mZiRXyNf4BdZ3cOgLKXwECh dMSOaHyK0lR91Xp6eTnOYE7bT9hcRVrWA=

Отправленное нами электронное письмо проходит:

Authentication-Results: mx.google.com; dkim=pass header.i=@ourdomain.com header.s=default header.b=fySBSueO; spf=pass (google.com: domain of ourlocaluser@ourdomain.com designates OUR.IP.GOES.HERE as permitted sender) smtp.mailfrom=ourlocaluser@ourdomain.com; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=ourdomain.com

Наша запись DMARC настроена следующим образом:

_dmarc.ourdomain.com. 299 IN TXT "v=DMARC1\; p=none\; pct=100\; rua=mailto:postmaster@ourdomain.com"

Есть ли способ настроить наш DNS (или что-то еще?), Чтобы сообщения электронной почты Sendgrid проходили проверку DMARC? Тогда мы могли бы безопасно увеличить рекомендуемое действие «p» до «карантина» или «отклонения». Хотя, если бы это не сильно подорвало нашу репутацию, я был бы счастлив оставить его на отметке «ничего». Было бы просто хорошо все аккуратно связать, следуя трудности, которые у меня были прежде, чем я отправился в путешествие по SPF / DKIM / DMARC.

DKIM подписывает d=sendgrid.net и отправитель конверта т.е. Return-Path является mygmailaccount=gmail.com@sendgrid.net. Поскольку проверки DKIM и SPF используют sendgrid.com, его не соответствует вашему домену: это требование для Выравнивание DMARC.

К счастью, Sendgrid поддерживает пользовательские аутентификация домена для обоих обычай Селектор DKIM и обычай Обратный путь.

Хотя, если бы это не сильно сказалось на нашей репутации, я был бы счастлив оставить ее на отметке «ничего».

DMARC не о получение лучшая репутация. Речь идет о предотвращении использования вашего домена другими лицами в From заголовок, который мог привести к плохая репутация или хуже.

Так что это определенно специально для Sendgrid. Процессы будут различаться в зависимости от конкретного стороннего отправителя электронной почты, который вы пытаетесь использовать. И даже Sendgrid, вероятно, изменит свой пользовательский интерфейс.

  1. Будьте на app.sendgrid.com
  2. Перейдите в Настройки> Аутентификация отправителя.
  3. Нажмите кнопку «Аутентифицировать свой домен».
  4. Подключите свой DNS-хост. В моем случае его определенно нет в списке, поэтому я выбираю "Другой хост" и просто набираю его. Я также не попадаю в ссылки для брендинга - мне все равно, есть ли ссылки в электронных письмах администратора моей автоматической учетной записи "sendgrid" в URL-адресах.
  5. Введите домен, из которого вы отправляете, затем отметьте «Автоматическая безопасность» и «Использовать пользовательский селектор DKIM». [Должен признать, что я не пробовал этот процесс не с помощью настраиваемого селектора. Мы отправляем большую часть нашей электронной почты с нашего собственного сервера, и я беспокоился о том, чтобы испортить мою существующую настройку.] Для селектора DIKM просто придумайте что-то, что вы не используете, например, «sg» для Sendgrid.
  6. Вам будет предоставлена ​​группа записей CNAME для добавления в ваш DNS, например:

  1. После того, как они добавлены (вы можете использовать «Отправить коллеге», если вам нужно предоставить доступ третьей стороне к предлагаемым записям), вы нажимаете «Подтвердить». Вы также можете проверить статус проверки на странице проверки подлинности отправителя. В моем случае вначале это сработало лишь частично - на успешную проверку всех трех записей ушло больше суток. Я подозреваю, что вам также придется вручную попытаться проверить. По крайней мере, для меня через день или около того это была ручная попытка, которая наконец сработала.

  2. Убедитесь, что SPF, DKIM и DMARC работают для обоих писем, отправленных вашим сервером. и от Sendgrid! Если возможно, выпейте шампанское. Если нет, переходите к следующему кризису.