Назад | Перейти на главную страницу

Ошибка разрешения DNS в почтовой очереди postfix

mailq дает мне эту ошибку:

F2E7B32820F3     3549 Wed Feb 17 12:15:50  "www-data@info"@hivemind.ru
(host mxs.mail.ru[94.100.180.150] said: 421 Problem resolving DNS for domain info"@hivemind.ru (Domain name is syntactically invalid) (in reply to MAIL FROM command))

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

Программное обеспечение форума, кажется, правильно генерирует сообщение:

postcat -vq 0492D3282068
postcat: name_mask: all
postcat: inet_addr_local: configured 2 IPv4 addresses
postcat: inet_addr_local: configured 2 IPv6 addresses
*** ENVELOPE RECORDS maildrop/0492D3282068 ***
message_arrival_time: Sun Feb 21 15:01:55 2016
named_attribute: rewrite_context=local
sender_fullname: www-data
sender: www-data
*** MESSAGE CONTENTS maildrop/0492D3282068 ***
regular_text: To: test@example.com
regular_text: Subject: =?UTF-8?B?0JTQvtCx0YDQviDQv9C+0LbQsNC70L7QstCw0YLRjCDQvdCwINGE0L7RgNGD0LwgUFNZVFJJQkU=?=
regular_text: X-PHP-Originating-Script: 0:Subs-Post.php
regular_text: From: "PSYTRIBE" <info@psytribe.ru>
regular_text: Return-Path: info@psytribe.ru
regular_text: Date: Sun, 21 Feb 2016 12:01:54 -0000
regular_text: X-Mailer: SMF
regular_text: Mime-Version: 1.0
regular_text: Content-Type: multipart/alternative; boundary="SMF-e8a857e57a7c03288f525582f6bdb280"
regular_text: Content-Transfer-Encoding: 7bit

Как я могу понять, где искать ошибку?

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

  1. Сервер никогда не был настроен с полным доменным именем и имеет только имя info.
  2. Электронное письмо создается пользователем www-data.
  3. Поскольку другой адрес электронной почты не указан, он создается автоматически путем объединения имени пользователя и имени хоста.
  4. Созданный адрес электронной почты на этом этапе www-data@info, что неверно (если вы не контролируете info TLD и настроили запись MX непосредственно в TLD, что не так).
  5. Этот адрес электронной почты передается в другое программное обеспечение, которое принимает либо полный адрес электронной почты, либо просто имя пользователя.
  6. Электронный адрес анализируется, чтобы решить, что это всего лишь имя пользователя, а не полный адрес электронной почты.
  7. Имя пользователя сочетается с именем домена, которое отличается от имени хоста, используемого предыдущим программным обеспечением. Так как www-data@info предполагается, что это имя пользователя и содержит @ символ, он цитируется в соответствии с соответствующими RFC. Это означает, что адрес электронной почты, отправленный по телеграфу, будет выглядеть как <"www-data@info"@hivemind.ru>. Это синтаксически верно, но, вероятно, не то, что вы намеревались.
  8. Следующая часть программного обеспечения, анализирующего этот адрес, содержит ошибки и не анализирует его в соответствии с RFC. Он неверно считает первое @ отделяет локальную часть от домена, даже если первая @ находится в кавычках.

Вот три вещи, которые здесь пошли не так:

  1. Сначала доменное имя info был использован, а не предполагаемый домен.
  2. Позже некоторое программное обеспечение использует эвристику, чтобы решить, был ли ему дан полный адрес или только локальная часть, оно приходит к другому выводу, чем предполагалось программным обеспечением, которое произвело этот ввод.
  3. Ошибка в парсере, который не понимает строку в кавычках, приводит к тому, что он неправильно отклоняет домен как недействительный.

RFC 2821 не рекомендует использовать адреса, требующие цитирования. И ваш сценарий показывает, почему разумно не рекомендовать такую ​​практику.

Хотя приведенное выше определение для локальной части является относительно разрешительным, для максимальной совместимости хост, который ожидает получать почту, ДОЛЖЕН избегать определения почтовых ящиков, где локальная часть требует (или использует) форму строки в кавычках или где локальная часть имеет регистр - чувствительный.

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

Не совсем понятно, о чем вы спрашиваете, поскольку сообщение об ошибке довольно ясное ... Адрес:

"www-data@info"@hivemind.ru

недействителен. Он анализируется как имя пользователя www-data и информация о доменном имени "@ hivemind.ru", но это недопустимое доменное имя.

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