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

sendmail: почему коды ошибок от error: nouser и no user различаются?

В sendmail 8.14, когда в данном домене нет пользователя, sendmail производит следующую ошибку:

550 5.1.1 <info@example.su>... User unknown

Однако если вы используете error:nouser в пределах virtusertable, сообщение выглядит следующим образом:

553 5.3.0 <info@example.su>... >info<@example.su.

Использование наиболее рекомендуемых error:nouser No such user в virtusertable, согласно https://www.sendmail.com/sm/open_source/tips/virtual_hosting/, приводит к следующему:

553 5.3.0 <info@example.su>... No such user

Почему коды статуса различаются?

Есть ли разница?

Почему рекомендуемый способ остановки доставки пользователю отличается от поведения по умолчанию при полном отсутствии пользователя?

Коды ошибок 550 и 553 должны обрабатываться отправляющим сервером одинаково, как и любой из кодов серии 500. Все это указывает на постоянную ошибку.

550 указывает, что запрошенное действие (добавить получателя) не было выполнено. Ошибка 553 указывает на недопустимое имя почтового ящика. В любом случае получатель не был принят.

Использовать error:nouser 550 ... или error:5.1.1:550 ... как виртуальная ценность, предложенная в разделе virtusertable cf / README.

info@example.com   error:nouser 550 No such user here
info@example.net   error:5.1.1:550 No such user here

RFC5321 описывает (тонкую) разницу между двумя кодами ошибок.

550  Requested action not taken: mailbox unavailable (e.g., mailbox
   not found, no access, or command rejected for policy reasons)
553  Requested action not taken: mailbox name not allowed (e.g.,
   mailbox syntax incorrect)

Скорее всего (почти) во всех случаях разница между 550 и 553 не причинит тебе вреда НО исправьте это для спокойствия, когда вы это заметили :-)
Объяснение в конце текста предназначено для людей, поэтому оно не должно иметь значения.


Объяснение 1

553 5.3.0 <info@example.su>... >info<@example.su.

Sendmail кажется неподготовленным к предсказуемой обработке error:WORD без сообщения, возвращенного virtusertable. [Я проверил sendmail-8.15.1 и sendmail-8.14.4]

sendmaill-8.15.1 / cf / m4 / proto.m4

1128 R< error : $-.$-.$- : $+ > $*   $#error $@ $1.$2.$3 $: $4
1129 R< error : $- $+ > $*   $#error $@ $(dequote $1 $) $: $

Объяснение 2

553 5.3.0 <info@example.su>... No such user

error:nouser No such user here поскольку значение virtusertable (отсутствует код ответа smtp), похоже, дает код ответа 553

IMHO, вы можете сообщить об ошибке на сайте sendmail Виртуальный хостинг страница.