Amazon SES IP не проходит проверку SPF в DMARC

#wordpress #amazon-web-services #amazon-ses #spf #dmarc

#wordpress #amazon-веб-сервисы #amazon-ses #spf #dmarc

Вопрос:

Я использую Amazon SES для транзакционных электронных писем и использую плагин WP SES для интеграции с моим WordPress.

Сбой SPF для некоторых моих электронных писем, IP-адрес которых начинается с 54.240.27 . Похоже, это Amazon SES IP.

В мой DNS добавлен следующий текстовый файл SPF: v=spf1 include:_spf.google.com include:ofpad.com include:amazonses.com ~all

Любая помощь приветствуется.

Обновление: я добавил почту ИЗ домена в AWS в соответствии с инструкциями architjn, но проблема сохраняется.

введите описание изображения здесь

Ниже приведен DMARC, отправленный Gmail после внедрения Mail From Domain в AWS. Вот удобочитаемая версия отчета: https://us.dmarcian.com/dmarc-xml/details/VANOJ4S6b8QGCinq /

 <?xml version="1.0" encoding="UTF-8" ?>
<feedback>
  <report_metadata>
    <org_name>google.com</org_name>
    <email>noreply-dmarc-support@google.com</email>
    <extra_contact_info>https://support.google.com/a/answer/2466580</extra_contact_info>
    <report_id>4375352491574064416</report_id>
    <date_range>
      <begin>1601078400</begin>
      <end>1601164799</end>
    </date_range>
  </report_metadata>
  <policy_published>
    <domain>ofpad.com</domain>
    <adkim>r</adkim>
    <aspf>r</aspf>
    <p>none</p>
    <sp>none</sp>
    <pct>100</pct>
  </policy_published>
  <record>
    <row>
      <source_ip>54.240.27.115</source_ip>
      <count>9</count>
      <policy_evaluated>
        <disposition>none</disposition>
        <dkim>pass</dkim>
        <spf>fail</spf>
      </policy_evaluated>
    </row>
    <identifiers>
      <header_from>ofpad.com</header_from>
    </identifiers>
    <auth_results>
      <dkim>
        <domain>ofpad.com</domain>
        <result>pass</result>
        <selector>ukez6fkocbm5wtdd7aqfx754ngfzaqs3</selector>
      </dkim>
      <dkim>
        <domain>amazonses.com</domain>
        <result>pass</result>
        <selector>hsbnp7p3ensaochzwyq5wwmceodymuwv</selector>
      </dkim>
      <spf>
        <domain>us-west-2.amazonses.com</domain>
        <result>pass</result>
      </spf>
    </auth_results>
  </record>
  <record>
    <row>
      <source_ip>54.240.27.35</source_ip>
      <count>8</count>
      <policy_evaluated>
        <disposition>none</disposition>
        <dkim>pass</dkim>
        <spf>fail</spf>
      </policy_evaluated>
    </row>
    <identifiers>
      <header_from>ofpad.com</header_from>
    </identifiers>
    <auth_results>
      <dkim>
        <domain>ofpad.com</domain>
        <result>pass</result>
        <selector>ukez6fkocbm5wtdd7aqfx754ngfzaqs3</selector>
      </dkim>
      <dkim>
        <domain>amazonses.com</domain>
        <result>pass</result>
        <selector>hsbnp7p3ensaochzwyq5wwmceodymuwv</selector>
      </dkim>
      <spf>
        <domain>us-west-2.amazonses.com</domain>
        <result>pass</result>
      </spf>
    </auth_results>
  </record>
  <record>
    <row>
      <source_ip>209.85.220.41</source_ip>
      <count>39</count>
      <policy_evaluated>
        <disposition>none</disposition>
        <dkim>pass</dkim>
        <spf>pass</spf>
      </policy_evaluated>
    </row>
    <identifiers>
      <header_from>ofpad.com</header_from>
    </identifiers>
    <auth_results>
      <dkim>
        <domain>ofpad.com</domain>
        <result>pass</result>
        <selector>ukez6fkocbm5wtdd7aqfx754ngfzaqs3</selector>
      </dkim>
      <dkim>
        <domain>amazonses.com</domain>
        <result>pass</result>
        <selector>hsbnp7p3ensaochzwyq5wwmceodymuwv</selector>
      </dkim>
      <spf>
        <domain>ofpad.com</domain>
        <result>pass</result>
      </spf>
    </auth_results>
  </record>
  <record>
    <row>
      <source_ip>54.240.27.34</source_ip>
      <count>10</count>
      <policy_evaluated>
        <disposition>none</disposition>
        <dkim>pass</dkim>
        <spf>fail</spf>
      </policy_evaluated>
    </row>
    <identifiers>
      <header_from>ofpad.com</header_from>
    </identifiers>
    <auth_results>
      <dkim>
        <domain>ofpad.com</domain>
        <result>pass</result>
        <selector>ukez6fkocbm5wtdd7aqfx754ngfzaqs3</selector>
      </dkim>
      <dkim>
        <domain>amazonses.com</domain>
        <result>pass</result>
        <selector>hsbnp7p3ensaochzwyq5wwmceodymuwv</selector>
      </dkim>
      <spf>
        <domain>us-west-2.amazonses.com</domain>
        <result>pass</result>
      </spf>
    </auth_results>
  </record>
  <record>
    <row>
      <source_ip>209.85.220.41</source_ip>
      <count>87</count>
      <policy_evaluated>
        <disposition>none</disposition>
        <dkim>pass</dkim>
        <spf>fail</spf>
      </policy_evaluated>
    </row>
    <identifiers>
      <header_from>ofpad.com</header_from>
    </identifiers>
    <auth_results>
      <dkim>
        <domain>ofpad.com</domain>
        <result>pass</result>
        <selector>ukez6fkocbm5wtdd7aqfx754ngfzaqs3</selector>
      </dkim>
      <dkim>
        <domain>amazonses.com</domain>
        <result>pass</result>
        <selector>hsbnp7p3ensaochzwyq5wwmceodymuwv</selector>
      </dkim>
      <spf>
        <domain>gmail.com</domain>
        <result>pass</result>
      </spf>
    </auth_results>
  </record>
  <record>
    <row>
      <source_ip>54.240.27.38</source_ip>
      <count>3</count>
      <policy_evaluated>
        <disposition>none</disposition>
        <dkim>pass</dkim>
        <spf>fail</spf>
      </policy_evaluated>
    </row>
    <identifiers>
      <header_from>ofpad.com</header_from>
    </identifiers>
    <auth_results>
      <dkim>
        <domain>ofpad.com</domain>
        <result>pass</result>
        <selector>ukez6fkocbm5wtdd7aqfx754ngfzaqs3</selector>
      </dkim>
      <dkim>
        <domain>amazonses.com</domain>
        <result>pass</result>
        <selector>hsbnp7p3ensaochzwyq5wwmceodymuwv</selector>
      </dkim>
      <spf>
        <domain>us-west-2.amazonses.com</domain>
        <result>pass</result>
      </spf>
    </auth_results>
  </record>
  <record>
    <row>
      <source_ip>54.240.27.116</source_ip>
      <count>11</count>
      <policy_evaluated>
        <disposition>none</disposition>
        <dkim>pass</dkim>
        <spf>fail</spf>
      </policy_evaluated>
    </row>
    <identifiers>
      <header_from>ofpad.com</header_from>
    </identifiers>
    <auth_results>
      <dkim>
        <domain>ofpad.com</domain>
        <result>pass</result>
        <selector>ukez6fkocbm5wtdd7aqfx754ngfzaqs3</selector>
      </dkim>
      <dkim>
        <domain>amazonses.com</domain>
        <result>pass</result>
        <selector>hsbnp7p3ensaochzwyq5wwmceodymuwv</selector>
      </dkim>
      <spf>
        <domain>us-west-2.amazonses.com</domain>
        <result>pass</result>
      </spf>
    </auth_results>
  </record>
  <record>
    <row>
      <source_ip>54.240.27.123</source_ip>
      <count>6</count>
      <policy_evaluated>
        <disposition>none</disposition>
        <dkim>pass</dkim>
        <spf>fail</spf>
      </policy_evaluated>
    </row>
    <identifiers>
      <header_from>ofpad.com</header_from>
    </identifiers>
    <auth_results>
      <dkim>
        <domain>ofpad.com</domain>
        <result>pass</result>
        <selector>ukez6fkocbm5wtdd7aqfx754ngfzaqs3</selector>
      </dkim>
      <dkim>
        <domain>amazonses.com</domain>
        <result>pass</result>
        <selector>hsbnp7p3ensaochzwyq5wwmceodymuwv</selector>
      </dkim>
      <spf>
        <domain>us-west-2.amazonses.com</domain>
        <result>pass</result>
      </spf>
    </auth_results>
  </record>
</feedback>
  

Ответ №1:

SPF всегда учитывается из домена. Заголовок из и из домена — это 2 разные вещи. Заголовок From — это часть после @ в адресе электронной почты. В вашем случае это ofpad.com . Но что происходит, так это то, что он проверяет SPF из домена From. В данном случае это us-west-2.amazonses.com . И в DMARC он также проверяет, что отправляемая почта должна иметь одинаковые домены в заголовке от и из домена. Что в данном случае отличается. Это основная причина сбоя. Это известно как выравнивание SPF в DMARC.

Чтобы решить эту проблему, вам нужно будет перейти в свою консоль SES, и после выбора вашего домена вы увидите внизу раздел с именем From Domain . Вы должны настроить его на поддомене ofpad.com , и после этого он начнет передавать SPF. Это сделает ваш SPF выровненным.

Комментарии:

1. Могу ли я использовать основной домен вместо поддомена? У меня уже есть записи Google Apps MX. Вызовет ли это конфликт?

2. Вы можете использовать любой другой поддомен, для которого это не имеет значения, From Domain и по-прежнему можете использовать свой корневой домен для Header From . Они могут быть разными. Выберите любой поддомен, он будет работать.

3. Я реализовал MAIL FROM Domain в aws, и мой SPF, похоже, все еще не работает для AWS. Я обновил исходный вопрос скриншотом настроек AWS и свежим XML, отправленным мне Google. Любая помощь приветствуется.

4. Я думаю, что вы поделились отчетами со дня или на следующий день после того, как вы внедрили MAIL FROM DOMAIN . Подождите еще 1-2 дня для проверки в отчетах. Обычно отчеты задерживаются на 1 день. Вот почему, если вы видите, что есть одна запись с проходящим SPF, а другие — нет. Отчет на данный момент неоднозначный.

5. Делюсь отчетом, который я получил сегодня: us.dmarcian.com/dmarc-xml/details/USm64TQ5lItP9duy Все еще получаю ту же ошибку.

Ответ №2:

architjn указал мне правильное направление, и я добавил Mail From домен в настройках AWS, но проблема сохранялась, потому что я также проверил свой адрес электронной почты отправителя, который не использовал почту моего домена из домена. Очевидно, что если вы проверяете как адрес электронной почты, так и домен, к которому принадлежит адрес электронной почты, настройки для адреса электронной почты переопределяют настройки домена.

Таким образом, моя почта из домена, который я настроил для домена, не работала для адреса электронной почты.

Amazon SES требует, чтобы вы подтвердили свой адрес электронной почты или домен. Когда вы проверяете весь домен, вы проверяете все адреса электронной почты из этого домена, поэтому вам не нужно проверять адреса электронной почты из этого домена по отдельности.

Я удалил адрес электронной почты, принадлежащий домену, из проверенных электронных писем AWS, и теперь используется почта из домена, настроенного в домене.

Вот ПОЧТА ИЗ домена в AWS в соответствии с инструкциями architjn.

введите описание изображения здесь