Правильные заголовки электронной почты для доставки почты из списка рассылки - PullRequest
10 голосов
/ 17 июня 2011

Я пишу приложение, которое позволяет пользователям отправлять электронную почту в динамически создаваемые списки рассылки.Например, пользователь может отправить электронное письмо на my-team@site.com (сайт является сайтом управления лигой для спортивных лиг), и электронное письмо будет отправлено всем в команде этого пользователя.Я пытаюсь выяснить, какими должны быть заголовки писем, чтобы правильно доставлять письма и чтобы все поля От и До выглядели правильно.

В Gmail, когда вы получаете письмо из списка рассылки (я просматриваю письмо от групп Google), оно говорит, что оно пришло от человека, который его отправил, и что оно было отправлено в список.адрес, но письмо было доставлено мне.Мой адрес не отображается ни в одном из заголовков, кроме как в заголовке Delivered-To :.Это какая-то магия Google, или я могу сделать то же самое?

Бонусный вопрос: я использую Postfix + OpenDKIM для подписи писем.Он будет подписывать сообщение, если домен «От» соответствует указанному мною, но не в случае совпадения с доменом отправителя.Как я могу сказать ему использовать домен отправителя вместо этого.

Ответы [ 2 ]

19 голосов
/ 17 июня 2011

Заголовки From: и To: предназначены для «отображения» (это то, что представлено в приложении электронной почты пользователя как отправитель и получатель). Они не должны совпадать с реальным отправителем / получателем сообщения электронной почты, которые называются «отправитель конверта» / «получатель конверта» и указаны в протоколе smtp («MAIL FROM: ....») RCPT TO. .. ").

Пример:

Письмо приходит с alice@example.com, отправляется на list@example.org и доставляется на bob@example.net:

От Алисы к серверу списка:

Отправитель конверта: alice@example.com
Получатель конверта: list@example.org
С Заголовок: alice@example.com
К Заголовок: list@example.org

Из списка Сервер для Боба:

Отправитель конверта: list-bounces@example.org (поэтому сообщения об ошибках отправляются на сервер списка, а не Алисе!)
Получатель конверта: bob@example.net
С Заголовок: alice@example.com (Боб видит Алису как отправителя, сервер списков не изменяет)
К Заголовок: list@example.org (опять же, не изменяется сервером списка)

Необязательно: заголовок Reply-To: list@example.org (поэтому, если Боб нажимает на ответ, ответ отправляется в список - добавленный сервером списка) - будьте осторожны: некоторым людям не нравится reply-to жонглирование

Дополнительные заголовки:

Некоторые почтовые клиенты также понимают эти дополнительные заголовки и предоставляют пользователю специальные функции списка рассылки:

  • list-Id
  • список-Post
  • список-помощь
  • список-отписки
  • список-владелец

https://www.ietf.org/rfc/rfc2919.txt https://www.ietf.org/rfc/rfc2369.txt

Также вы можете добавить заголовок

Precedence: bulk

, который, например, указывает интеллектуальным реализациям вне офиса не посылать ответы об отсутствии на работе в список. Но это не одобряется RFC 2076 .

0 голосов
/ 18 июня 2011

Похоже, OpenDKIM всегда использует заголовок From:, поэтому вы должны просто подписать все свои электронные письма. См. это для получения инструкций.

...