Ошибка разрешения 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

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

2 ответа

Решение

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

  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 рекомендует не использовать адреса, которые требуют цитирования. И ваш сценарий показывает, почему это разумно рекомендовать против такой практики.

Хотя приведенное выше определение для Local-part является относительно допустимым, для максимальной функциональной совместимости хосту, который ожидает получения почты, СЛЕДУЕТ избегать определения почтовых ящиков, где Local-часть требует (или использует) форму Quoted-string или где Local-part имеет значение case - чувствительный

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

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

"www-data@info"@hivemind.ru

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

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

Другие вопросы по тегам