Вопрос: Почему DMARC работает с From-address, а не отправителем конверта (Return-Path)?


Несколько писем, отправленных с моего веб-сервера на адрес Gmail, где From: адрес websitevisitor@gmail.com, были отмечены как спам от Gmail. From: поле заполняется из данных формы и соответствует фактическому адресу электронной почты посетителя, который часто является адресом Gmail. Return-Path: всегда указывает на адрес account@mywebserver.com, что означает, что проверки SPF и DKIM будут работать.

Когда я проверяю необработанные электронные письма в учетной записи Gmail, я вижу следующее:

Delivered-To: webformrecipient@gmail.com
...
Return-Path: <account@mywebserver.com>
Received: from mywebserver.com (mywebserver.com. [my:ipv6:address])
        by mx.google.com with ESMTPS id xxx
        for <webformrecipient@gmail.com>
        (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128);
        Tue, 02 Feb 2016 00:40:02 -0800 (PST)
Received-SPF: pass (google.com: domain of account@mywebserver.com designates my:ipv6:address as permitted sender) client-ip=xxx;
Authentication-Results: mx.google.com;
       spf=pass (google.com: domain of account@mywebserver.com designates my:ipv6:address as permitted sender) smtp.mailfrom=account@mywebserver.com;
       dkim=pass header.i=@mywebserver.com;
       dmarc=fail (p=NONE dis=NONE) header.from=gmail.com
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=mywebserver.com; s=mydkim;
    h=Date:Message-Id:Sender:From:Subject:To; bh=w2snQznwxlVRVACmfQELC7VGmD1dcYdiCXbCIRYFKRs=;
    b=a0Vy3Ky43J5FdiWSuQ4qvTTH47G+Js0W/qtRU5gMlxfesNqrlyaIyExaIZlWvHNL4o0LNOF1GI94w4C41mmH+2JIkMEQZazw0MainP7UyUgsm/RZbAWoRuecPv+k108FlsWMP/l1UttXAdlvBVJmV2UGsYYlSSjKErQEF8tv3K0=;
Received: from apache by mywebserver.com with local (Exim 4.80)
    (envelope-from <account@mywebserver.com>)
    id 1aQWVF-00009b-2X
    for webformrecipient@mywebserver.com; Tue, 02 Feb 2016 09:40:01 +0100
To: webformrecipient@mywebserver.com
From: Website User <website-user@gmail.com>
Sender: webformrecipient@mywebserver.com
...

Обратите внимание, что и проверки SPF и DKIM проходят, но проверка DMARC - нет. После некоторого поиска я проследил это до DMARC, используя From: адрес для получения своего ссылочного домена, согласно этот ответ на переполнение стека,

Три вопроса:

  1. Возможно ли, что действительно dmarc=fail является причиной того, что письмо отправлено спамом Gmail?
  2. Почему DMARC работает на From: адрес, а не Return-Path (отправитель конверта), как SPF и DKIM?
  3. Если теперь и From: заголовок должен соответствовать адресу @mydomain.com то как мы должны указывать фактический (логическая, плоть и кровь) отправителя сообщения?

5
2018-02-02 15:50


Источник




Ответы:


Подумайте о SPF и DKIM как способах проверки почтового пути и подумайте о DMARC как расширении, которое также проверяет отправителя сообщения. Подумайте об этом как о получении письма FedEx. Легко проверить, куда был отправлен конверт, и что курьер был законным, но он не дает возможности доказать, что письмо внутри конверта действительно принадлежит человеку, чье имя напечатано на нем.

Ваш веб-сервер является допустимым SMTP-сервером для mywebserver.com и что ваш адрес отправителя является законным, но этого недостаточно для того, чтобы другие серверы доверяли, что у вас есть разрешение на отправку как website-user@gmail.com. Как GMail знает, что ваш сервер не был взломан или иным образом использован для злонамеренных намерений? Серверы Gmail не собираются вслепую доверять вам отправлять почту как один из своих пользователей - если, возможно, вы не размещаете их, и тогда у вас, вероятно, возникнут проблемы с отправкой в ​​Yahoo.

Чтобы решить вашу первую часть вопроса, да, очень вероятно, что именно поэтому GMail классифицирует его как спам. Самые старые формы спама сосредоточены вокруг подмены адреса «От». Это то, что большинство пользователей видит, когда они получают сообщение, и является основным полем, которому они хотят доверять. Когда сообщение от законного почтового сервера отправляется с использованием адреса From, который не принадлежит этому почтовому серверу, он по-прежнему является красным.

Как вы упомянули, DMARC работает с адресом From как часть спецификации. Конечно, это затрудняет запись веб-приложений, отправляемых от имени кого-то, но это своего рода смысл. Относительно Зачем они это делают - хорошо, это зависит от дизайнеров спецификации, но это компромисс. Они берут дорогу и делают систему, которая работает очень хорошо, если вы останетесь в пределах этого ограничения. Возможно, будущие механизмы найдут способ обойти это.

Несчастливое решение состоит в том, чтобы использовать только адреса, которыми вы управляете. Чтобы решить свой третий вопрос, подпишите свои сообщения с вашим доменным именем и укажите в теле, что оно было отправлено от имени website-user@gmail.com. В противном случае вам придется запросить, чтобы получатели добавляли адрес в свой белый список. Это не очень забавно для законного разработчика веб-приложений, но это защитит неприкосновенность почтового ящика получателя. Возможно, вам удастся использовать заголовок Reply-To с адресом электронной почты веб-пользователя.

Обсуждается это ограничение на этот поток DMARC,

В то же время вы можете попытаться убедиться, что ваш сервер не включен в черный список на любых RBL. Может случиться так, что вы можете скомпрометировать DMARC, но все-таки воспользуйтесь фильтрами спама, если у вас есть достаточно хорошая репутация ... но я бы не стал на это полагаться.


5
2018-02-02 17:35





1) да, вероятно, сбой dmarc заставит gmail удалять ваши письма

2) также был бы заинтересован в ответе за это

3) Я бы (и мы) использовал ответное поле для адреса клиента, наши письма выглядят следующим образом:

от: website@mydomain.com

to: user@mydomain.com

тема: контактная форма

ответить: customer-addy@somewhere.com

Надеюсь это поможет


2
2018-02-02 17:03