The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]



Индекс форумов
Составление сообщения

Исходное сообщение
"Отказоустойчивый почтовый сервер (два в одном)"
Отправлено vlikhachev, 10-Дек-13 03:13 

>[оверквотинг удален]
> Промотаю документацию чуть вверх и сцитирую, специально для читающих по-диагонали:
> reject_unknown_helo_hostname (with Postfix < 2.3: reject_unknown_hostname)
> Reject the request when the HELO or EHLO hostname has no DNS
> A or MX record.
> The unknown_hostname_reject_code parameter specifies the numerical response code for
> rejected requests (default: 450).
> The unknown_helo_hostname_tempfail_action parameter specifies the action after a temporary
> DNS error (default: defer_if_permit).
> Нет ни одного слова про то, что оно обязано совпадать с client
> hostname, реверсом, и т п.

Однако, ошибки доставки вида
server refused to talk to me: 550 Reverse DNS lookup failed for host ip.ad.dre.ss (port 25)
если HELO/EHLO не совпадает с reverse DNS query, к сожалению, реальность.

В то же время RFC1123 гласит:
5.2.5  HELO Command: RFC-821 Section 3.5

         The sender-SMTP MUST ensure that the <domain> parameter in a
         HELO command is a valid principal host domain name for the
         client host.  As a result, the receiver-SMTP will not have to
         perform MX resolution on this name in order to validate the
         HELO parameter.

         The HELO receiver MAY verify that the HELO parameter really

Internet Engineering Task Force                                [Page 50]


RFC1123                  MAIL -- SMTP & RFC-822             October 1989


         corresponds to the IP address of the sender.  However, the
         receiver MUST NOT refuse to accept a message, even if the
         sender's HELO command fails verification.

         DISCUSSION:
              Verifying the HELO parameter requires a domain name lookup
              and may therefore take considerable time.  An alternative
              tool for tracking bogus mail sources is suggested below
              (see "DATA Command").

              Note also that the HELO argument is still required to have
              valid <domain> syntax, since it will appear in a Received:
              line; otherwise, a 501 error is to be sent.

Судя по всему, многие MTA (исходно или после дополнительной настройки) не вполне соответствуют RFC1123, отвечая 550 в случае, если HELO parameter really !NOT! corresponds to the IP address of the sender.

С другой стороны, основание для проверки только "valid <domain> syntax" сейчас немного смешно - необходимость делать ресурсоемкий (некешируемый по определению!) реверсный ДНС запрос на каждое входящее соединение для серверов с пиком в 10-100 соединений в секунду при канале 100 МБ/с некритично, IMHO. Эпоха модемов, к счастью, позади...

Резюмируем:
Сервер отправителя ОБЯЗАН в HELO/EHLO писать корректное имя хоста.
Сервер-получатель обязан принимать письмо, если в HELO/EHLO любое имя хоста-отправителя.

Практика показывает - многие администраторы почтовых серверов выдают таким нарушителям код 550 при несоответствии. Ну или 450, в частности, через check_client_access в postfix (см. greylist).

  

 

Ваше сообщение
Имя*:
EMail:
Для отправки новых сообщений в текущей нити на email укажите знак ! перед адресом, например, !user@host.ru (!! - не показывать email).
Более тонкая настройка отправки ответов производится в профиле зарегистрированного участника форума.
Заголовок*:
Сообщение*:
 
При общении не допускается: неуважительное отношение к собеседнику, хамство, унизительное обращение, ненормативная лексика, переход на личности, агрессивное поведение, обесценивание собеседника, провоцирование флейма голословными и заведомо ложными заявлениями. Не отвечайте на сообщения, явно нарушающие правила - удаляются не только сами нарушения, но и все ответы на них. Лог модерирования.



Партнёры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2024 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру