Почему плохая идея использовать электронную почту клиента в качестве адреса от

29

У меня есть приложение, которое отправляет электронное письмо пользователям, как только они заполнили форму. Он использует no-reply@customerdomain.comадрес от. Клиент хочет, чтобы электронная почта из формы использовалась как адрес отправителя, который может быть любым. Мне сказали, что это плохая идея из-за подмены / черного списка и спама.

Я не совсем понимаю точную причину того, почему это плохая идея, особенно потому, что я должен попытаться проконсультировать клиента по этому поводу. Может кто-нибудь объяснить мне, почему это плохая идея.

Интересно, что клиент использовал учетную запись gmail в качестве адреса от имени в качестве демонстрационной версии, которая не только работает нормально, но и позволяет приложению начать отправлять электронные письма (оно не делало этого раньше с электронной почтой, которая была no-reply@customerdomain.com). Хм - что происходит. Мне сказали одно, а работает наоборот.

Извините - я знаю, что это просто, но я могу найти что-нибудь в поиске Google. Во многом я думаю, потому что у меня проблемы даже с формулировкой вопроса.

РЕДАКТИРОВАТЬ

Спасибо всем - отличные ответы. Интересно, что сервер, отправляющий электронное письмо, и почтовый ящик, на который он направляется, находятся за одним и тем же брандмауэром, поэтому клиент говорит, что их не беспокоит спам. Ну что ж.

Ведро краба
источник
«Интересно, что сервер, отправляющий электронную почту, и почтовый ящик, на который он собирается, находятся за одним и тем же брандмауэром, поэтому клиент говорит, что его не беспокоит спам». Это нормально, если приложение находится за тем же межсетевым экраном и недоступно для остальной части Интернета. Надеюсь, этот почтовый ящик внутри брандмауэра также недоступен из Интернета - он звучит как открытая ретрансляция!
afrazier
Я согласен с другими ответами. Как пользователь (не администратор веб-сайта), я был бы озадачен, обеспокоен и раздражен, если бы получил электронное письмо от себя, когда я его не отправил. В прошлом я отправлял такие электронные письма на спам, не читая их, и, вероятно, буду продолжать это делать.
Пэдди Ландау

Ответы:

46

Это плохая практика по нескольким причинам:

  • Вам НЕ разрешено отправлять почту с домена, который вам не принадлежит. Как таковое, оно может быть задумано как попытка подражания.
  • Это довольно распространенная практика, используемая спаммерами, и поэтому она часто помечается фильтрами спама.
  • Хорошо обслуживаемые домены довольно часто используют SPF или DKIM для защиты своей репутации и помогают другим системам выявлять олицетворение и спам. Очевидно, что вы не сможете добавить почтовый заголовок DKIM или добавить свой SMTP-сервер в DNS-запись домена SPF, и ваша почта будет (по праву) считаться поддельной и отклоненной.

Надлежащая практика - использовать ваш локальный домен в качестве отправителя, возможно, используя несуществующий адрес в качестве имени пользователя.

Stephane
источник
2
Отличный ответ. Бесстыдно скопировал часть вашего текста для клиентской электронной почты. Спасибо
Crab Bucket
3
Разве с помощью Sender:адреса не обойти эти проблемы? Это то, что делает Gmail, когда он настроен на отправку электронной почты из другой учетной записи.
TRiG
3
Почему это не разрешено? Есть ли у вас какие-либо ссылки на RFC или международное право?
Нильс
3
@ Nils Вот один из них. RFC 1855 (Сетевой этикет). «Подделки и фальсификация не являются одобренным поведением». Хотя, это в разделе о списках рассылки и новостях.
Каз
3
@Kaz см. RFC 2822 от BlueRaja - это правильная ссылка. Это разрешено, если вы установите SENDER для реального исходного домена.
Нильс
48

На самом деле вам разрешено устанавливать Fromадрес электронной почты вашего клиента, если вы правильно указали в Senderполе свой собственный адрес. Это то, что раньше делал Paypal !

ОТ: customer@yourCustomer.com
TO: receient@recipient.com
ОТПРАВИТЬ: you@yourCompany.com

Большинство почтовых клиентов будут отображать это как «От you@yourCompany.com от имени customer@yourCustomer.com» . Не должно быть никаких проблем с SPF или DKIM в домене клиента.


Вам также следует установить Reply-toзаголовок на адрес вашего клиента, чтобы в ответах указывался адрес клиента, а не ваш.

BlueRaja
источник
+1 за упоминание Ответить
Бобсон
3
@Nils: RFC 2822 §3.6.2 «Поля отправителя» « В поле« От: »указывается автор (ы) сообщения, то есть почтовые ящики лица (лиц) или ответственных систем. для написания сообщения. Поле «Отправитель:» указывает почтовый ящик агента, ответственного за фактическую передачу сообщения ».
BlueRaja
1
(продолжение) Итак, обратите внимание, что если пользователь на самом деле не написал сообщение (OP неясен в этом вопросе) , это технически не будет RFC-совместимым и Reply-Toдолжно использоваться только. Но даже в этом случае Paypal и другие крупные компании делают это в любом случае, поэтому маловероятно, чтобы какие-либо спам-фильтры запускались. Является ли это «нарушением доверия пользователя», зависит от самого сообщения / приложения (например, я не чувствую, что Paypal злоупотребляет моим доверием, когда отправляет сообщение «BlueRaja отправил вам платеж!» От моего имени)
BlueRaja
1
@Nils: Ой, очевидно, это должен быть RFC 6854 , который является обновлением RFC 5322 , который, в свою очередь, является обновленной версией RFC 2822. Тем не менее, соответствующий раздел не изменился.
BlueRaja
2
PayPal больше не делает этого именно потому, что это была такая плохая практика. Их текущие электронные письма приходят с member@paypal.comадресом электронной почты пользователя в Reply-Toзаголовке.
Майкл Хэмптон
12

TL; DR:

Это плохая практика использовать адрес электронной почты из формы. Вместо этого используйте адрес электронной почты, который специально используется только для этого списка рассылки.

Длинная версия:

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

Отправитель конверта - это тот, который используется почтовыми серверами для выдачи уведомлений о недоставке. Если вы работаете со списком рассылки, этот адрес обычно будет в сценарии, который может убрать нерабочие адреса из списка рассылки.

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

Если вы используете собственный адрес электронной почты получателя в качестве отправителя конверта, вы можете ожидать, что некоторые / многие почтовые серверы отклонят почту или пометят ее как спам - потому что люди не часто отправляют письма себе со своего собственного адреса через внешний сервер.

Если вы используете собственный адрес электронной почты получателя в качестве- From:отправителя, пользователь не сможет отвечать на сообщения, если это необходимо. Поместить ссылку где-нибудь в теле почтового сообщения недостаточно; люди по-прежнему будут использовать кнопку «Ответить» в своем почтовом клиенте и будут расстроены, когда она не работает.

Дженни Ди говорит восстановить Монику
источник
Спасибо за это, особенно за то, что пользователь отвечает сам за себя. Я хотел бы дать два ответа
Crab Bucket
3
Не совсем верно, что пользователь нажимает Ответить ... для этого будет использоваться заголовок Ответить (если он существует)
JoelFan
@JoelFan Хорошая мысль о заголовке Reply-To.
Дженни Ди говорит восстановить Монику
8

У вас есть несколько отличных ответов о технических проблемах здесь. С точки зрения продажи этого вашему клиенту может быть полезно немного перефразировать вопрос. Клиент, вероятно, спрашивает у вас вариант «будет ли это работать», на что ответ «да, вы можете отправить электронное письмо таким образом».

Лучше задать им вопрос: «Придет ли это?», Увидят ли наши клиенты, отправят ли они таким образом ». Ответ большинства современных спам-фильтров: «Нет, скорее всего, нет».

Роб Моир
источник
4

Есть две проблемы, о которых я могу подумать, самая большая из них заключается в том, что вы будете отправлять электронную почту, которая может быть очень недоставленной, и, очевидно, обратный адрес также будет таким, что будет означать, что многие письма будут сидеть и ждать времени ожидания. , Меньшая проблема может заключаться в том, что некоторые из этих писем попадают в спам, поскольку серверы ищут почту от определенных доменов, приходящую с определенных компьютеров (согласно правилам DKIM).

Я хотел бы создать no-reply@customerdomain.comадрес и решить, что делать с электронной почтой позже.

NickW
источник
2

Подмена собственного адреса пользователя как From: - плохая идея. Это хороший способ гарантировать, что почта никогда не дойдет до пользователя, так как антиспам-фильтры могут расценивать ее как подделку (а это де-факто !)

Для SMTP-сервера вполне разумно, чтобы «thisdomain» отклонял запрос «MAIL From: user @ thisdomain», исходящий из TCP-соединения, находящегося за пределами «thisdomain». (Разрешение такого запроса от локальных хостов позволяет пользователю в сети «thisdomain» отправлять друг другу письма).

На самом деле, noreply@customerdomain.comэто плохая идея:

Вот фрагмент конфигурации с моего SMTP-сервера (программное обеспечение Exim), который настраивает его для пересылки сообщений от noreplyотправителей:

deny
  message = Sorry, we do not accept SMTP traffic from "noreply" senders. \
            We believe that it is less than polite to send messages from \
            nonexistent e-mail addresses \
            which cannot be replied to! E-mail is a "two-way street". \
            If you want us to accept \
            your mail, then please accept replies.
  senders = ^noreply@.*

Электронные письма должны отправляться только реальными отправителями, которые могут принимать ответы.

Зачем мне слушать то, что ты говоришь, если твои уши прикованы ко всему, что я говорю?

Некоторые люди ответят на эти письма в любом случае, и они должны быть перенаправлены на соответствующую учетную запись службы поддержки.

Kaz
источник
Спасибо за ответ. Очень интересно об отсутствии ответа. Если бы нереально электронная почта действительно существовала, и это было бы лучше, когда она попадала в почтовый ящик, который периодически очищался. Ненавистная почта имеет смысл для меня как пользователя, так как, когда я вижу их, я знаю, что никто не слушает. Но тогда, когда электронное письмо не требует ответа, в лучшем случае это прямой маркетинг, а в худшем - спам. Я думаю, что я отговорил себя от отсутствия ответа там
Crab Bucket
Старая ветка, но ... Я не могу удержаться от мысли: блокировка электронной почты от отправителей с именем "noreply" в лучшем случае кажется бессмысленной. Любой, кто хочет отправить оскорбительное электронное письмо, просто использует другого несуществующего отправителя. Если рассматриваемое письмо действительно «только для чтения», что может быть плохого в том, чтобы сделать это как можно более очевидным? «Вот прогноз погоды, который вы заказали: завтра будет солнечно. Не отвечайте на это письмо, мы отправляем шесть миллионов из них каждый день, и мы никак не можем обработать различные типы ответов, которые они неизбежно генерируют».
Калм
-1

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

Тим Сабин
источник
Это не совсем этическая проблема. Вы единственный, кто упоминает этику, а не реалистичные вопросы.
ceejayoz