Почему не отправляются письма на mail.ru

Опубликовано: 3 сентября 2013   ( с изм. от 9 апреля 2020 )
Раздел(ы): Домены и хостинг
Просмотры: 11743
Комментарии: 1

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

Конфигурация оборудования

Описанное недоразумение появилось у меня на виртуальном сервере от компании DigitalOcean в следующей конфигурации:

  • OS — CentOS 6.4 x86_64
  • Control Panel — VestaCP
  • CMS — MaxSite
  • PHP — 5.3
  • MySQL — 5.1
  • Mail Server — Exim 4.72

Забегая вперед скажу, что проблема не в программно-аппаратной начинке. А лишь в настройке некоторых параметров.

Как правильно настроить сервер чтобы уходила почта

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

PTR запись

В целях уменьшения объёма нежелательной корреспонденции (спама) многие серверы-получатели электронной почты могут проверять наличие PTR записи для хоста, с которого происходит отправка. Это так называемый обратный DNS (revers DNS). То есть когда какому-нибудь IP приводится в соответствие символьное имя.

В обычной DNS записи имени домена соответствует конкретный IP адрес. К примеру yandex.ru -> 77.88.21.11. PTR запись — это обратное соответствие 77.88.21.11 -> yandex.ru. Отсутствие PTR записи или неправильное ее значение снижает доверие к такому серверу.

Чтобы изменить PTR запись на хостинге DigitalOcean достаточно переименовать Droplet имя вашего сервера в панели управления.

Особо хочется отметить, что PTR запись настраивается на сервере и никаким боком не относится к DNS. Если такой опции нет в панели управления сервером, то необходимо просить хостера провести такую настройку. Проверить PTR запись можно утилитой nslookup

Hostname сервера

Необходимо привести в соответствие между собой имя сервера с которого отправляется почта и доменное имя. Для этого измените HOSTNAME сервера на имя домена, значение должно быть FQDN доменом. По простому говоря, если Вы зарегистрировали домен mydomain.com и используете это имя для хостинга на своем сервере, то и значение HOSTNAME должно быть mydomain.com. На CentOS это можно сделать так:

# hostname mydomain.com

Также следует внести изменения в файл /etc/sysconfig/network присвоив переменной HOSTNAME имя вашего домена:

NETWORKING=yes
HOSTNAME=mydomain.com

Как Вы догадались значение HOSTNAME в обоих случаях и PTR запись должны быть одинаковыми и совпадать с записью A в NS серверах. Так же желательно добавить имя Вашего домена в файл /etc/hosts. [подробнее]

Обсуждение (комментарии к статье)

  1. Спасибо! Переименование дроплета на океане помогло. Почта сразу стала переадресовываться на внешний ящик. Спасибо! Никогда бы не догадался!

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *

Нажимая кнопку "Отправить" Вы даёте свое согласие на обработку введенной персональной информации в соответствии с Федеральным Законом №152-ФЗ от 27.07.2006 "О персональных данных", на условиях и для целей определенных политикой конфиденциальности сайта.

Этот сайт использует Akismet для борьбы со спамом. Узнайте, как обрабатываются ваши данные комментариев.

© Юрий Рассадников, 2011 - 2021
uptime узнать
Домен : reg.ru
Хостинг : adman.com
SQL - 11 | 0,107 сек. | 10.59 МБ