Как стать автором
Обновить

У Mail.ru магические алгоритмы антиспама?

Время на прочтение5 мин
Количество просмотров103K

Если у вас или у ваших клиентов почтовый ящик на mail.ru, будьте готовы к неприятностям.


Немного истории
Исторически сложилось так что почта mail.ru особо не пользовалась популярностью среди ИТ-шников и технарей, как и сама компания в целом. Но в последнее время компания изменилась в лучшую сторону, ребята собрались и сделали отличный почтовый сервис, перешли на HTTPS, даже успешно перевели почту на UTF-8. Недавно вот еще «Облако» сделали бесплатное на 1ТБ, и даже изменили к нему лицензионное соглашение. Ну и много всего у них происходит хорошего. Но
«не будем говорить о плохом, а лучше сделаем»
 цитаты великих людей :)

Вернемся в настоящее
Все администраторы у кого есть «сайт / блог / форум» наслышаны о проблемах с доставками писем в ящики для пользователей mail.ru, я их не оправдываю, ведь в большинстве случаев у них плохо настроен MTA, нет DKIM подписей, нет правильной PTR-записи, и все их письма «успешно» валятся в спам. («успешно» без сарказма). Но команда антиспама решила не останавливаться на таких примитивных проверках как валидные цифровые подписи DKIM, обратные записи PTR, «трастовость» домена и исходящего сервера и многое другое что используют бесплатные сервисы с устаревшей антиспам системой (eg. Yandex, Google, Yahoo), команда антиспама отказалась от этих проверок, и начала использовать настоящую магию!

Примерный алгоритм работы устаревшего антиспам-фильтра


А теперь секретный алгоритм Мейлру


К чему все это?
В один рабочий день у нас на небольшом проекте появилось полно звонков и жалоб от клиентов, о невозможности зарегистрироваться, о невозможности восстановить пароль, но всю трагичность данной ситуации мы узнали лишь спустя пару дней, когда абсолютно вся работа (продуктивная) остановилась. Научным методом выяснили, что в магический черный список попал наш домен. Именно домен в теле письма, с самого домена письма уходят на ура, но если в теле письма есть упоминания домена то письмо уходит сразу в /dev/null. Уведомления с сайта отправлялись через трастовый AMAZON SES с валидными подписями, домен и сервер трастовые, в том числе и у самого mail.ru репутация нашего домена на postmaster.mail.ru 0.5, это очень хороший показатель (чем меньше тем лучше) если не указывать в теле письма домен то письма доходят отлично, и только в inbox.(о своем единственном предположении как домен попал под фильтр напишу ниже)


отличный сервис для проверки насколько «хороши» ваши письма. mail-tester.com

Прошу поверить что никакого спама да и рассылок вообще не проводилось (иначе я бы не написал данный пост), всего с сайта отправлялось до 50-ти писем в день, в основном уведомления о регистрации с токеном для подтверждения, ссылки для восстановления пароля, и уведомления клиентов о прибытии их товаров на почту, а так же собственно ответы от службы поддержки.

Какие это принесло нам и клиентам трудности:
  • Полностью прекратилась регистрация на сайте (механизм double opt-in) в теле письма ссылка с одноразовым токеном для подтверждения, письмо отклоняется сервером mail.ru.
  • Невозможно восстановить пароль (по той же причине)
  • Не приходят уведомления о заказе со ссылкой на товар. (починили убрав ссылку)
  • прекратилась поддержка клиентов по email. Клиенты ставят в письме ссылку на товар и задают вопрос по данному товару, и такое письмо соответственно mail.ru не дает им отправить.
  • Уже существовавшие ветви переписки остановились, в теле письма обычно цитируется предыдущая переписка (а там ссылка на товар, или в подписи на сайт), и главное что клиент не понимает почему он не может нам написать.
Хорошо что сам я не пользуюсь их почтой, поэтому вся работа не связанная с клиентами мейлру идет отлично. Печально что регион с которым мы работаем, на 95% пользуется почтой мейлру.

Почему так не надо делать?
Как минимум, есть папка «СПАМ» и если мейлру считает письмо спамом то почему не кладёт в эту папку, а отвергает даже не подпустив к своему магическому антиспам-фильтру? Ведь если что-то пошло с сервером или сайтом не так, то пока администраторы чинят можно сказать клиенту по телефону что у нас трудности с доставкой, так что пожалуйста проверьте папку «СПАМ» и там найдете ссылку для подтверждения регистрации или для восстановления пароля.

!

Что если у вас ящик на мейлру, вы заработалсиь и забыли что у вас есть несколько старых доменов / сайтов которые вот-вот нужно продлить, но вы не переживаете потому что знаете что любой регистратор пришлет вам over 9000 напоминаний вида:
«Напоминаем что истекает срок действия домена «example.com»…
которые вы к сожалению не получите, потому что мейлру лучше знает нужно вам продлевать такой домен или нет.Что если администратору отправлено письмо-«abuse» из госорганов или других предприятий, где в теле письма указана ссылка на страницу-причину этой претензии такое письмо никогда до него не дойдет.

Почему сработал фильтр?

У меня только одно предположение-совпадение. В день несколькими часами раньше до того как домен попал под фильтр разработчики устанавливали на сайт кнопку «Поделится» от одноклассников, и соответственно мы ее тестировали, сначала на локалхосте, потом на тестовом сервере, потом на продакшене, итого моя лента в одноклассниках была заспамлена этим доменом, в том числе и нерабочими ссылками (вида testenvsite.work/url/) ну мне то всеравно, потестил и забыл, друзей у меня нет кто бы по ним еще нажимал и переходил.

Итоги

  • Как вы считаете, допустима ли такая спам-политика компании мейлру?
  • Почему не предусмотрели быстрого реагирования на случай ложного срабатывания фильтра (они всегда бывают), ведь так можно парализовать на немалое время работу большого сервиса.
  • В идеале, при срабатывании фильтра отсылать письмо администратору с предупреждением что его письма будут отклонятся полностью если он не решит проблему (какую?) в течении N суток, а на данный момент отправляются в спам.
  • Почему такой приоритет именно имени домена в письме, и полное игнорирование всех остальных факторов? Ведь даже если мне напишет сам pupkin@kermlin.ru c валидным DKIM или god@sky.com и упомянут имя домена, их письма не придут :(

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

Почему именно Mail.ru

Борьба со спамом действительно не простая работа. Спам в СНГ очень популярен, в основном из-за того что спамеры чувствуют безнаказанность.Почта Mail.ru является лидером по количеству клиентов в СНГ, в некоторых регионах абсолютным лидером, соответственно mail.ru больше всего подвержены атаке спамеров, которые все время улучшают свои рассылки (технически), порой намного лучше чем честные и обычные вебмастера.
Ложные срабатывания алгоритмов есть и у других почтовых сервисов, и думаю что их % не меньше чем у Mail.ru, но на фоне лидерства Mail.ru они мало заметны.
Думаю им нужно «проапгрейдить» поддержку, например добавить новых сотрудников.


UPD: Ура! домен разблокирован, теперь мы и наши пользователи счастливы.
В этот же день со мной связались представители команды Почты, разобрались в ситуации, признали свою ошибку и оперативно устранили проблему, не смотря на то что был выходной день.
Теги:
Хабы:
Всего голосов 178: ↑156 и ↓22+134
Комментарии83

Публикации