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


435

Это хитрый метод, и я всегда опирался на методы, такие как электронные письма на основе разрешений (то есть, отправка только тем, у кого есть разрешение на отправку), а не использование явно спамовой терминологии.

В последнее время некоторые электронные письма, которые я посылаю программно, начали автоматически перетасовываться в папку спама, и мне интересно, что я могу с этим поделать.

И это несмотря на тот факт, что эти конкретные электронные письма не являются теми, которые люди будут отмечать как спам, в частности, это электронные письма, содержащие лицензионные ключи, за которые люди заплатили хорошие деньги, поэтому я не думаю, что они будут считать их спамом

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

Ответы:


338

Используйте методы аутентификации электронной почты, такие как SPF и DKIM, чтобы доказать, что ваши электронные письма и ваше доменное имя принадлежат друг другу, и предотвратить подделку вашего доменного имени. На веб-сайте SPF есть мастер для создания информации DNS для вашего сайта.

Проверьте ваш обратный DNS , чтобы убедиться , что IP - адрес почтового сервера точек на имя домена , который используется для отправки почты.

Убедитесь, что используемый вами IP-адрес отсутствует в черном списке

Убедитесь, что адрес для ответа является действительным, существующим адресом.

Используйте полное, настоящее имя адресата в поле «Кому», а не только адрес электронной почты (например "John Smith" <john@blacksmiths-international.com>).

Следите за своими учетными записями о злоупотреблениях, такими как abuse@yourdomain.com и postmaster@yourdomain.com. Это означает - убедитесь, что эти учетные записи существуют, прочитайте то, что им отправлено, и действуйте по жалобам.

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

Тем не менее, получение Hotmail для принятия ваших писем остается черным искусством.


Не могли бы вы рассказать о злоупотреблении аккаунтами? Я не уверен, что вы имеете в виду
marcgg

26
brandonchecketts.com/emailtest.php вы можете проверить, соответствует ли ваш почтовый сервер настройкам DomainKeys, DKIM, SPF и другим методам защиты от спама.
Джонас

3
также создайте
алгоритм bounce

11
+1 за «Тем не менее, получение Hotmail для принятия ваших писем остается черным искусством». Hotmail практически не делает различий между спамом и не спамом. Либо все находится в папке «Входящие» или в спам (в зависимости от ваших настроек).
Халил Озгюр

2
Брэндон Чекеттс перевел свой инструмент соответствия почтового сервера на: dkimvalidator.com
Дана Уилер,

30

Зарегистрируйте учетную запись на как можно большем количестве крупных поставщиков электронной почты (gmail / yahoo / hotmail / aol / etc). Если вы вносите изменения в свои электронные письма, будь то серьезное изменение формулировки, изменения в коде, который отправляет электронные письма, изменения на ваши почтовые серверы и т. Д., Убедитесь, что отправляете тестовые сообщения на все ваши учетные записи и убедитесь, что они не помечены как спам.


2
Некоторые спам-системы учитывают индивидуальные привычки чтения. (Получают ли электронные письма от этого отправителя чтение или они удаляются без чтения? И т. Д.) Так что это определенно поможет вам найти, когда они помечены (истинно отрицательно), но этот шаг не докажет, что они не будут для других пользователей на той же системе (ложное срабатывание).
Джон Адамс

26

Вы можете сказать своим пользователям, чтобы они добавляли ваш адрес «От» к своим контактам, когда они выполняют свой заказ, что, если они это сделают, очень поможет.

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

Другие вещи, которые вы можете попробовать:

  • Введите название вашего сайта или адрес в теме
  • Сохраняйте все ссылки в сообщении, указывающие на ваш домен (а не на email.com)
  • Введите адрес или другую контактную информацию в электронном письме

24

Несколько пунктов из предыдущего ответа :

  • Самое важное: принадлежит ли адрес отправителя («От») домену, работающему на сервере, с которого вы отправляете электронную почту? Если нет, сделайте это так. Никогда не используйте адреса отправителей как xxx@gmail.com. Пользователь, reply-toесли вам нужны ответы, чтобы прийти на другой адрес.

  • Ваш сервер находится в черном списке (например, проверьте IP на spamhaus.org)? Это возможно, когда вы используете общий хостинг, когда соседи ведут себя плохо.

  • Фильтруются ли письма фильтром спама? Откройте аккаунт в freemailer, который имеет папку со спамом, и узнайте. Кроме того, попробуйте отправить почту на адрес без какой-либо фильтрации спама.

  • Возможно, вам нужен пятый параметр "-f" mail () для добавления адреса отправителя? (Смотрите команду mail () в руководстве по PHP)

  • Если у вас есть доступ к файлам журналов, проверьте их, конечно.

  • Проверяете ли вы адрес отправителя на предмет возможного отказа в письмах («Возвращено отправителю»)? Вы также можете настроить отдельный адрес для ошибок.

22

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

Всегда включайте четкую информацию «как отписаться» в КАЖДОЙ электронной почте. Не требуйте от пользователя входа в систему, чтобы отписаться, это должен быть уникальный URL для отказа от подписки в 1 клик.

Это не позволит людям помечать ваши письма как спам, поскольку «отписаться» слишком сложно.


11
+1 для уникального URL для отказа от подписки в 1 клик. Я ненавижу входить, чтобы отписаться. Я отметил их как СПАМ!
Shyju

16

В дополнение ко всем остальным ответам, если вы отправляете электронные письма в формате HTML, содержащие URL-адреса в качестве текста ссылки, убедитесь, что URL-адрес соответствует тексту ссылки. Я знаю, что Thunderbird автоматически помечает их как мошенничество, если нет.

Неправильный путь:

Go to your account now: <a href="http://www.paypal.com.phishers-anonymous.org/">http://www.paypal.com</a>

Правильный путь:

Go to your account now: <a href="http://www.yourdomain.org/">http://www.yourdomain.org</a>

Или используйте несвязанный текст ссылки вместо URL:

<a href="http://www.yourdomain.org/">Click here to go to your account</a>

1
Здравствуйте, Майк, у меня есть два домена, т.е. domain1.com и domain2.com. Ваш код работает для domain1.com, но не работает для domain2.com. Я не знаю почему? Я не изменил ни одной мысли. stackoverflow.com/questions/42200904/…
Нарен Верма

1
@NarendraVerma Не похоже, что мой ответ относится к вам в этом случае. Я рекомендую посмотреть другие ответы здесь, чтобы увидеть, работает ли что-нибудь еще для вас. В конце концов, провайдер электронной почты должен решить, что он считает спамом и что пропустил, и у каждого есть несколько различных факторов, которые он считает. Gmail на самом деле дает вам краткое описание того, почему сообщения помечаются как спам, если вы нажимаете на сообщение со спамом.
Майк

1
Спасибо за ответ, мистер Майк. На самом деле я применил ваш ответ в домене 1, и это работает. Я использую PHpMailer и добавил, например, $ email_body = "<a href=' domain1.com'> View </ a >". Это работает отлично.
Нарен Верма

1
Я не знаю, почему второй домен2 не работает. Конечно, я свяжусь с командой Gmail. Есть еще предложения в этом коде?
Нарен Верма

@NarendraVerma В вашем коде нет ничего плохого.
Майк

15

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

  • Точная цель
  • Вертикальный ответ
  • Постоянный контакт
  • Монитор кампании
  • Эмма
  • Обратный путь
  • IntelliContact
  • Silverpop

15

Доставка электронной почты иногда может быть как черная магия. Обратный DNS действительно важен.

Я обнаружил, что очень полезно тщательно отслеживать отчеты о недоставке. Я направляю все свои отчеты о недоставке на один адрес, и у меня есть служба разбора Windows (Google ListNanny). Я помещаю как можно больше информации из отчета о недоставке в базу данных, а затем запускаю отчеты, чтобы узнать, не стал ли я внезапно заблокирован определенным доменом. Кроме того, вы должны избегать отправки электронных писем на адреса, которые ранее были помечены как NDR, потому что это, как правило, хороший признак спама

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

Некоторые домены просто невозможно доставить иногда. Comcast.net худший.

Убедитесь, что ваши IP-адреса не указаны на таких сайтах, как http://www.mxtoolbox.com/blacklists.aspx .


2
Что такое NDR? Можете ли вы уточнить?
Пыхих

2
Отчет о недоставке, ака отказов .
tripleee

14

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

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

Я даже получил письмо от себя, чтобы перейти в корзину для спама, потому что (1) я обычно не отправляю электронную почту себе и (2) есть спамеры, которые подделывают мой обратный адрес в спаме, посланном мне.

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

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

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

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


13

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

Моим самым успешным решением этой проблемы было составить письмо, чтобы оно выглядело так, как будто оно было сгенерировано почтовым клиентом.

я изменил электронное письмо, чтобы оно было составным / альтернативным mime-документом, и теперь я генерирую части text / plain и text / html.

электронная почта больше не определяется как нежелательная в Outlook.


этот подход также полезен для тех, кто заботится о безопасности и не использует почтовые клиенты с поддержкой HTML,
Jasen

13

Yahoo использует метод, называемый Sender ID, который можно настроить в мастере установки SPF и ввести в свой DNS. Также одним из важных для Exchange, Hotmail, AOL, Yahoo и других является наличие обратного DNS для вашего домена. Те выбьют большинство проблем. Однако вы никогда не сможете помешать человеку преднамеренно заблокировать ваши или пользовательские правила.


3
Yahoo использует записи SPF и DomainKeys; SenderID - это другая (и во многих отношениях несовместимая, небезопасная и плохо разработанная) технология, которая не должна использоваться.
Дэн Удей

11

Вам нужна обратная запись DNS. Вам не нужно отправлять один и тот же контент одному и тому же пользователю дважды. Вы должны проверить это с некоторыми распространенными клиентами электронной почты и электронной почты. Лично я проверил мой через недавно установленного спам-убийцу, обученного спам-убийцу и несколько учетных записей hotmail, gmail и aol.

Но видели ли вы тот спам, который, похоже, не содержит ссылок или рекламы? Это спамер, пытающийся повлиять на ваш байесовский фильтр. Если он может получить высокий рейтинг, а затем включить несколько слов, которые будут в его будущих электронных письмах, это может быть автоматически выучено как хорошее. Таким образом, вы не можете точно догадаться, какой фильтр пользователя будет установлен на момент вашего почтового сообщения.

Наконец, я не сортировал свой список по доменам, а сделал его случайным образом.


10

Я обнаружил, что использование настоящих имени и фамилии получателей в теле - это верный способ пройти через спам-фильтр.


8

В Великобритании также рекомендуется указывать реальный физический адрес вашей компании и ее зарегистрированный номер.

Таким образом, все это открыто и честно, и они с меньшей вероятностью пометят его как спам.


7

Я бы добавил:

Предоставьте реальную отписку после нажатия на кнопку «Отписаться». Я видел реальные информационные бюллетени, содержащие фиктивную ссылку для отказа от подписки, которая после показа кликов «была успешно отписана», но я все равно получу дальнейшие информационные бюллетени.


7

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

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

  • Четко определите, кто вы в самом верху каждого сообщения и почему этот человек получает электронное письмо.

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

  • Держите ваш контент очень актуальным и полезным.

  • Дайте людям простой способ отказаться от дальнейшего общения.

  • Используйте службу отправки электронной почты, такую ​​как SendGrid, которая усердно работает для поддержания хорошей репутации IP.

  • Избегайте использования коротких ссылок - они часто находятся в черном списке.

Следование этим правилам будет иметь большое значение.


6

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


6

Вполне может быть так, что люди, которые подписываются на ваши услуги, вводят электронные письма с ошибками, которые вы не исправляете. Например: chris @ gmial.com -или- james @ hotnail.com .

И такие домены настроены для использования в качестве спам-ловушек, которые автоматически помечают IP-адрес и / или домен вашего почтового сервера и наносят ущерб его репутации.

Чтобы избежать этого, дважды проверьте адрес электронной почты, указанный при подписке на ваш продукт. Кроме того, отправьте электронное письмо с подтверждением, чтобы убедиться, что этот адрес электронной почты на 100% подтвержден человеком, который вводит электронное письмо с подтверждением, прежде чем отправить им ключ продукта или принять его подписку. Письмо с подтверждением должно требовать, чтобы получатель щелкнул ссылку или ответ, чтобы действительно подтвердить, что владельцем почтового ящика является лицо, которое зарегистрировалось.


1
Эта. Ничто в принятом в настоящее время ответе не имеет никакого значения, если вы сначала не практикуете базовую гигиену подписки.
tripleee

4

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

Купите любую приличную систему контроля за спамом и отправьте свою исходящую почту через нее. Если вы отправляете какой-либо приличный объем почты, вам все равно следует делать это из-за риска отправки исходящих вирусов, особенно если у вас есть пользователи Windows на рабочем столе.

Например, у Proofpoint были спам + антивирус + некоторые службы репутации в одном развертывании. (Раньше я работал там, так что я случайно узнал об этом. Уверен, другие поставщики в этом пространстве имеют схожие функции.) Но вы поняли идею. Если вы отправляете свою почту с помощью базовой настройки управления коммерческим спамом, и она не проходит, она не должна выходить за пределы вашей сети.

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


3

У Google есть инструмент и рекомендации для этого. Вы можете найти их по адресу : https://postmaster.google.com/ Зарегистрируйте и подтвердите свое доменное имя, и Google предоставит индивидуальный подсчет этого IP-адреса и домена.

Из руководящих принципов для массовых отправителей :

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

Чтобы Gmail мог идентифицировать вас:

  • Используйте постоянный IP-адрес для отправки массовых писем.
  • Сохраняйте действительные обратные записи DNS для IP-адресов, с которых вы отправляете почту, указывая на ваш домен.
  • Используйте тот же адрес в заголовке «От:» на каждой отправляемой вами массовой почте. Мы также рекомендуем следующее:

  • Подписывать сообщения с DKIM. Мы не аутентифицируем сообщения, подписанные ключами, используя менее 1024 бит.

  • Опубликовать запись SPF.
  • Опубликовать политику DMARC.

1

Я всегда использую: https://www.mail-tester.com/

Это дает мне обратную связь по технической части отправки по электронной почте. Как SPF-записи, DKIM, оценка Spamassassin и так далее. Несмотря на то, что я знаю, что требуется, я постоянно делаю ошибки, а mail-tester.com позволяет легко понять, что может быть не так.


1

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

Во-вторых, вы можете проверить обратный вывод DNS вашего доменного имени по разным DNSBL. Используйте ниже простую команду на терминале:

  **dig a +short (domain-name).(blacklist-domain-name)**

  ie.  dig a +short example.com.dsn.rfc-clueless.org
  > 127.0.0.2

В приведенных выше примерах это означает, что ваш домен "example.com" указан в черном списке, но из-за соответствия настроек домена (домен списка rfc-clueless.org, у которого есть проблема соответствия)

примечание: я предпочитаю мультивалюту и пепипост для проверки списков доменов.

Адрес from / reply-to-id должен быть правильным, всегда используйте видимую кнопку отмены подписки в теле письма (это поможет вашим пользователям выходить из списка рассылки без потери репутации вашего домена)


0

Чтобы разрешить DMARC проверять пропуск SPF, а также выравнивать его при использовании sendmail, убедитесь, что вы устанавливаете адрес отправителя конверта ( -fили -rпараметр) на то, что соответствует домену в From:адресе заголовка.

С помощью PHP:

Использование встроенной mail()функции PHP без установки 5-го параметра приведет к тому, что проверки DMARC SPF будут выровнены, если не будут выполнены правильно. По умолчанию sendmail отправляет электронное письмо пользователю веб-сервера в виде заголовка RFC5321 .MailFrom / Return Path.

Например, скажем, вы размещаете свой веб-сайт domain.comна host.comвеб-сервере. Если вы не установите параметр дополнительных параметров:

mail($to,$subject,$message,$headers); // Wrong way

Получатель электронной почты получит письмо со следующими заголовками:

Return-Path: <your-website-user@server.host.com>
From: <your-website-user@domain.com>

Несмотря на то, что он проходит проверку SPF, он не будет выровнен (так как domain.com и host.com не совпадают), что означает, что проверка DMARC SPF не будет выполнена как невыровненная.

Вместо этого вы должны передать адрес отправителя конверта в sendmail, включив 5-й параметр в mail()функцию PHP , например:

mail($to,$subject,$message,$headers, '-r bounce_email@domain.com'); // Right way

В этом случае получатель электронной почты получит письмо со следующими заголовками:

Return-Path: <bounce_email@domain.com>
From: <your-website-user@domain.com>

Поскольку оба этих заголовка содержат адреса из domain.com, SPF будет проходить и также выравниваться, что означает, что DMARC также пройдет проверку SPF.

Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.