@ba_dumm_tss
Страшный администратор в ритейле среднего пошиба

Какие еще могут быть причины protocol error: host said 250 OK (in reply to DATA command) на postfix или как вклиниться в обработку ответов smtp?

После обновления почтового сервера на postfix 3.1 сообщения с некоторых серверов-получателей возвращаться с ошибкой Protocol error: host mail.example said: 250 2.1.5 Recipient OK (in reply to DATA command).
mail postfix/smtp[30149]: < : 220 All traffic and IP`s logging.
 mail postfix/smtp[30149]: > : EHLO *мойсервер
 mail postfix/smtp[30149]: < : 220 All traffic and IP`s logging.
 mail postfix/smtp[30149]: server features: 0x1001 size 0
 mail postfix/smtp[30149]: smtp_stream_setup: maxtime=300 enable_deadline=0
 mail postfix/smtp[30149]: > : MAIL FROM:<отправитель@мойдомен>
 mail postfix/smtp[30149]: smtp_stream_setup: maxtime=300 enable_deadline=0
 mail postfix/smtp[30149]: < : 250-mail.*получатель Hello *мойсервер [ip], pleased to meet you
 mail postfix/smtp[30149]: < : 250-ETRN
 mail postfix/smtp[30149]: < : 250-AUTH LOGIN PLAIN
 mail postfix/smtp[30149]: < : 250-ENHANCEDSTATUSCODES
 mail postfix/smtp[30149]: < : 250-STARTTLS
 mail postfix/smtp[30149]: < : 250 SIZE 25600000
 mail postfix/smtp[30149]: > : RCPT TO:<получатель>
 mail postfix/smtp[30149]: smtp_stream_setup: maxtime=300 enable_deadline=0
 mail postfix/smtp[30149]: < : 250 2.1.0 Sender OK
 mail postfix/smtp[30149]: > : DATA
 mail postfix/smtp[30149]: smtp_stream_setup: maxtime=120 enable_deadline=0
 mail postfix/smtp[30149]: < : 250 2.1.5 Recipient OK
 937715404F9: to=<получатель>, relay=, delay=0.62, delays=0.03/0.01/0.18/0.4, dsn=5.5.0, status=bounced (Protocol error: host получатель[ip] said: 250 2.1.5 Recipient OK (in reply to DATA command))
 mail postfix/smtp[30149]: > : RSET
 mail postfix/smtp[30149]: smtp_stream_setup: maxtime=20 enable_deadline=0
 mail postfix/smtp[30149]: < : 354  Please end data with <CR><LF>.<CR><LF>
 mail postfix/smtp[30149]: > : QUIT

Судя по логам MAIL FROM, RCPT TO и DATA передаются, но из-за путаницы ответов сервера получаем следующую ситуацию -
на MAIL FROM получен ответ 250-mail .. списки команд
для RCPT TO получен 250 2.1.0 Sender OK (уже не ок)
для DATA вместо ожидаемого 354 получен 250 2.1.5 Recipient OK
После этого мой smtp-клиент завершает сессию, считая, что что-то пошло не так. Администратор на стороне одного из серверов сообщил, что им приходит письмо без авторизации — т.е. MAIL FROM они не получили.

Пробовал отключать PIPELINING, не помогло. Если пробовать отправить на проблемные хосты письмо через телнет, отправка срабатывает нормально - т.е. проблема всё-таки на моей стороне.
Собственно вопрос — можно ли на постфиксе как-то вклиниться в обработку ответов сервера, чтобы MAIL FROM начинал отправляться только когда на EHLO получен 250 ответ? Или есть какое-то более элегантное решение?
  • Вопрос задан
  • 683 просмотра
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы