Jump to content

Список кодов возврата SMTP-сервера

Это список кодов состояния ответа SMTP. Коды состояния выдаются сервером в ответ на запрос клиента, сделанный серверу.

Если не указано иное, все описанные здесь коды состояния являются частью текущего стандарта SMTP. РФК   5321 . Показанные фразы сообщений являются типичными, но может быть предоставлена ​​любая удобочитаемая альтернатива.

Основной код состояния

[ редактировать ]

Ответ SMTP «Базовый код состояния» состоит из трехзначного числа (передаваемого в виде трех цифровых символов), за которым следует некоторый текст. Это число используется автоматами (например, почтовыми клиентами) для определения следующего состояния; текст («Текстовая часть») предназначен для пользователя-человека.

Первая цифра обозначает, хороший ли ответ, плохой или неполный:

  • 2yz (положительный ответ о завершении): запрошенное действие успешно выполнено.
  • 3yz (Положительный промежуточный ответ): команда принята, но запрошенное действие отложено до получения дополнительной информации.
  • 4yz (временный отрицательный ответ о завершении): команда не была принята, и запрошенное действие не выполнено. Однако состояние ошибки является временным, и действие может быть запрошено снова.
  • 5yz (постоянный отрицательный ответ о завершении): команда не была принята и запрошенное действие не выполнено. Клиент SMTP НЕ ДОЛЖЕН повторять точный запрос (в той же последовательности).

Вторая цифра кодирует ответы по определенным категориям:

  • x0z (Синтаксис): Эти ответы относятся к синтаксическим ошибкам, синтаксически правильным командам, которые не соответствуют ни одной функциональной категории, а также нереализованным или избыточным командам.
  • x1z (Информация): Это ответы на запросы информации.
  • x2z (Соединения): это ответы, относящиеся к каналу передачи.
  • x3z : Не указано.
  • x4z : Не указано.
  • x5z (Почтовая система): Эти ответы указывают состояние почтовой системы получателя.

Расширенный код состояния

[ редактировать ]

Базовые коды состояния были в SMTP с самого начала. RFC   821 в 1982 году, но были расширены довольно широко и бессистемно, так что к 2003 году В RFC   3463 довольно раздраженно отмечается, что: « SMTP имеет некоторые шрамы истории, в первую очередь досадное повреждение механизма расширения кода ответа в результате неконтролируемого использования » .

RFC   3463 определяет отдельную серию кодов состояния расширенной почтовой системы, которая должна быть лучше структурирована и состоит из трех числовых полей, разделенных знаком «.», а именно:

class "." subject "." detail

  class   = "2" / "4" / "5"

  subject = 1 to 3 digits

  detail  = 1 to 3 digits

Классы : определяются следующим образом

  • 2.XXX.XXX Успех: отчет о положительной доставке.
  • 4.XXX.XXX Постоянный временный сбой: отправленное сообщение действительно, но сохранение некоторых временных условий привело к его отмене или задержке.
  • 5.XXX.XXX Постоянная ошибка: вряд ли можно устранить повторной отправкой сообщения в текущей форме.

Как правило, идентификатор класса ДОЛЖЕН соответствовать первой цифре базового кода состояния, к которому он применяется. [1]

Субъекты : определяются следующим образом

  • X.0.XXX Другое или неопределенное состояние
  • X.1.XXX Статус адресации
  • X.2.XXX Статус почтового ящика
  • X.3.XXX Статус почтовой системы
  • X.4.XXX Статус сети и маршрутизации
  • X.5.XXX Статус протокола доставки почты
  • X.6.XXX Содержимое сообщения или статус носителя
  • X.7.XXX Статус безопасности или политики

Значение поля «Подробности» зависит от класса и предмета и указано в RFC   3463 и РФК   5248 .

Сервер, способный отвечать расширенным кодом состояния, ДОЛЖЕН добавлять к текстовой части ответов SMTP-сервера расширенный код состояния, за которым следует один или несколько пробелов. Например, ответ «221 Bye» (после команды QUIT) ДОЛЖЕН быть отправлен вместо этого как «221 2.0.0 Bye». [1]

Управление по присвоению номеров Интернета (IANA) ведет официальный реестр этих расширенных кодов статуса. [2]

Общие коды состояния

[ редактировать ]

В этом разделе перечислены некоторые из наиболее часто встречающихся кодов состояния SMTP. Этот список не является исчерпывающим, и фактическое текстовое сообщение (за исключением расширенного кода состояния из 3 полей) может отличаться.

— 2ыз Положительное завершение

[ редактировать ]
211 Статус системы или ответ на справку системы
214 Справочное сообщение (Ответ на команду HELP)
220 <домен> Служба готова
221 <домен> Сервис закрытия канала передачи
221 2.0.0 До свидания [1]
235 2.7.0 Аутентификация прошла успешно [3]
240 ВЫХОД
250 Запрошенное почтовое действие, окей, завершено
251 Пользователь не локальный; перешлет
252 Невозможно проверить пользователя, но он все равно попытается доставить сообщение.

— 3yz Положительный промежуточный

[ редактировать ]
334 (запрос сервера — текстовая часть содержит запрос в кодировке Base64) [3]
354 Начать ввод почты

— 4yz Переходное отрицательное завершение

[ редактировать ]

«Переходный отрицательный» означает, что состояние ошибки является временным, и действие может быть запрошено снова. Отправитель должен вернуться к началу последовательности команд (если таковая имеется).

Точное значение слова «переходный» должно быть согласовано между двумя разными сайтами (SMTP-агенты получателя и отправителя) должны согласовать интерпретацию. Каждый ответ в этой категории может иметь разное значение времени, но SMTP-клиент ДОЛЖЕН повторить попытку.

421 Служба недоступна, канал передачи закрывается (это может быть ответ на любую команду, если служба знает, что ее необходимо отключить)
432 4.7.12 Требуется смена пароля [3]
450 Запрошенное почтовое действие не выполнено: почтовый ящик недоступен (например, почтовый ящик занят или временно заблокирован по причинам политики)
451 Запрошенное действие прервано: локальная ошибка при обработке.
451 4.4.1 Сервер IMAP недоступен [4]
452 Запрошенное действие не выполнено: недостаточно системного хранилища.
454 4.7.0 Временная ошибка аутентификации [3]
455 Сервер не может разместить параметры

— 5yz Постоянное отрицательное завершение

[ редактировать ]

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

500 Синтаксическая ошибка, команда не распознана (это может включать такие ошибки, как слишком длинная командная строка)
500 5.5.6 Линия обмена аутентификацией слишком длинная [3]
501 Синтаксическая ошибка в параметрах или аргументах
501 5.5.2 Невозможно декодировать ответы клиента в формате Base64 [3]
501 5.7.0 Обмен аутентификацией, инициированный клиентом (только если механизм SASL указал, что клиент не начинает обмен аутентификацией) [3]
502 Команда не реализована
503 Неверная последовательность команд
504 Параметр команды не реализован
504 5.5.4 Нераспознанный тип аутентификации [3]
521 Сервер не принимает почту [5]
523 Требуется шифрование [6]
530 5.7.0 Требуется аутентификация [3]
534 5.7.9 Механизм аутентификации слишком слабый [3]
535 5.7.8 Неверные учетные данные аутентификации [3]
538 5.7.11 Для запрошенного механизма аутентификации требуется шифрование [3]
550 Запрошенное действие не выполнено: почтовый ящик недоступен (например, почтовый ящик не найден, нет доступа или команда отклонена по соображениям политики)
551 Пользователь не локальный; пожалуйста, попробуйте <forward-path>
552 Запрошенное почтовое действие прервано: превышено выделение памяти.
553 Запрошенное действие не выполнено: имя почтового ящика не разрешено
554 Транзакция не удалась (или, в случае ответа об открытии соединения, «Здесь нет службы SMTP»)
554 5.3.4 Сообщение слишком велико для системы [4]
556 Домен не принимает почту [5]

Ниже приведен пример SMTP-соединения, где клиент «C» отправляет данные на сервер «S»:

S: 220 smtp.example.com ESMTP Postfix
C: HELO relay.example.com
S: 250 smtp.example.com, I am glad to meet you
C: MAIL FROM:<[email protected]>
S: 250 Ok
C: RCPT TO:<[email protected]>
S: 250 Ok
C: RCPT TO:<[email protected]>
S: 250 Ok
C: DATA
S: 354 End data with <CR><LF>.<CR><LF>
C: From: "Bob Example" <[email protected]>
C: To: Alice Example <[email protected]>
C: Cc: [email protected]
C: Date: Tue, 15 Jan 2008 16:02:43 -0500
C: Subject: Test message
C: 
C: Hello Alice.
C: This is a test message with 5 header fields and 4 lines in the message body.
C: Your friend,
C: Bob
C: .
S: 250 Ok: queued as 12345
C: QUIT
S: 221 Bye
{The server closes the connection}

Ниже приведен пример SMTP-соединения, при котором SMTP-сервер поддерживает расширенный код состояния, взятый из RFC   2034 :

S: 220 dbc.mtview.ca.us SMTP service ready
C: EHLO ymir.claremont.edu
S: 250-dbc.mtview.ca.us says hello
S: 250 ENHANCEDSTATUSCODES
C: MAIL FROM:<[email protected]>
S: 250 2.1.0 Originator <[email protected]> ok
C: RCPT TO:<[email protected]>
S: 250 2.1.5 Recipient <[email protected]> ok
C: RCPT TO:<[email protected]>
S: 550 5.1.1 Mailbox "nosuchuser" does not exist
C: RCPT TO:<[email protected]>
S: 551-5.7.1 Forwarding to remote hosts disabled
S: 551 5.7.1 Select another host to act as your forwarder
C: DATA
S: 354 Send message, ending in CRLF.CRLF.
 ...
C: .
S: 250 2.6.0 Message accepted
C: QUIT
S: 221 2.0.0 Goodbye
{The server closes the connection}

Arc.Ask3.Ru: конец переведенного документа.
Arc.Ask3.Ru
Номер скриншота №: 8bd8ea15e6c869a387d25abb287149c1__1685254320
URL1:https://arc.ask3.ru/arc/aa/8b/c1/8bd8ea15e6c869a387d25abb287149c1.html
Заголовок, (Title) документа по адресу, URL1:
List of SMTP server return codes - Wikipedia
Данный printscreen веб страницы (снимок веб страницы, скриншот веб страницы), визуально-программная копия документа расположенного по адресу URL1 и сохраненная в файл, имеет: квалифицированную, усовершенствованную (подтверждены: метки времени, валидность сертификата), открепленную ЭЦП (приложена к данному файлу), что может быть использовано для подтверждения содержания и факта существования документа в этот момент времени. Права на данный скриншот принадлежат администрации Ask3.ru, использование в качестве доказательства только с письменного разрешения правообладателя скриншота. Администрация Ask3.ru не несет ответственности за информацию размещенную на данном скриншоте. Права на прочие зарегистрированные элементы любого права, изображенные на снимках принадлежат их владельцам. Качество перевода предоставляется как есть. Любые претензии, иски не могут быть предъявлены. Если вы не согласны с любым пунктом перечисленным выше, вы не можете использовать данный сайт и информация размещенную на нем (сайте/странице), немедленно покиньте данный сайт. В случае нарушения любого пункта перечисленного выше, штраф 55! (Пятьдесят пять факториал, Денежную единицу (имеющую самостоятельную стоимость) можете выбрать самостоятельно, выплаичвается товарами в течение 7 дней с момента нарушения.)