Настроить Postfix и Dovecot-LMTP для получения почты через SMTPUTF8?

Настроить Postfix и Dovecot-LMTP для получения почты через SMTPUTF8?

Я использую сервер Postfix, который использует Dovecot LMTP для доставки почты. Я делаю это, потому что он хорошо работает с sieve.

Однако в последнее время я получил несколько писем с темой Unicode.

Это письмо успешно принимается Postfix, который явно поддерживает SMTPUTF8, однако оно прекращается, когда достигает LMTP:

<me@myhost> (expanded from <meother@mhost>): SMTPUTF8 is required, but was not offered by host myhost[public/lmtp]

Я прочитал в документации Postfix SMTPUTF8, что,

При получении сообщения с запросом SMTPUTF8 Postfix доставит сообщение на сервер SMTP или LMTP, не поддерживающий SMTPUTF8, ТОЛЬКО в следующих случаях:

Ни одно значение заголовка сообщения не содержит UTF-8.

Адрес отправителя конверта не содержит UTF-8,

Ни один адрес получателя конверта для этой конкретной транзакции доставки SMTP/LMTP не содержит UTF-8.

ПРИМЕЧАНИЕ: Получатели в других транзакциях доставки электронной почты для того же сообщения могут по-прежнему содержать UTF-8.

В противном случае Postfix вернет получателя(ей) для этой транзакции доставки электронной почты как недоставленный. Сообщение с уведомлением о статусе доставки будет сообщением SMTPUTF8. Поэтому оно будет подчиняться тем же ограничениям, что и электронная почта, полученная с запросом SMTPUTF8.

--http://www.postfix.org/SMTPUTF8_README.html#detecting

Соответствующая часть: «Postfix доставит ... на не-SMTPUTF8 ... LMTP-сервер ТОЛЬКО если ... [в сообщении нет UTF8]».

Это неловко сформулировано, но подразумевается, что Postfix будет передавать почту UTF8 на нижестоящий сервер только в том случае, если он поддерживает UTF8.

Поскольку я получаю почту в кодировке UTF8, Postfix отказывается доставлять ее в Dovecot LMTP.

Что подводит меня к паре вопросов:

  • Поддерживает ли Dovecot LMTP SMTPUTF8? (Похоже, нет: http://www.dovecot.org/list/dovecot/2013-January/thread.html#87756)
  • Есть ли у Postfix режим «мягкого сбоя» для этого, в котором он может поставить почту в очередь для отложенной доставки, обойти LMTP или сделать что-то более интеллектуальное, чем просто сбой?

решение1

TL;DR: СмотритеSumming up!

Я также регулярно получаю письма с UTF-8символами в Subject:строке. Никогда не было никаких в других заголовках.

Хотя режим «мягкого сбоя» в postfix мне неизвестен, вы можете настроить другой smtp-транспорт и фильтровать возвраты через него как своего рода отказоустойчивый режим. Однако мне еще предстоит завершить эту настройку самостоятельно. На данный момент возвраты застревают в очереди как недоставленные до истечения срока действия. По крайней мере, они просто не возвращаются обратно отправителю, и я слежу за застрявшими членами очереди. С другой стороны, я не хочу идти дальше по этому пути, теперь, когда следующий метод работает для меня(tm):

Рабочим решением (только в случае UTF-8символов Subject:) было простозапрещатьпостфикс'smtputf8_enableфункция, которая в настоящее время по умолчанию установлена ​​на "да" (используя обновленный Debian, конечно). В main.cf добавьте:

smtputf8_enable = no

Попытки что-то изменить smtputf8_autodetect_classesне дали результата.

Сообщения электронной почты, содержащие эту UTF-8 Subject:строку, теперь обрабатываются postfix и сохраняются dovecot без каких-либо проблем.

Решение может показаться нелогичным, особенно если учесть несколько неуклюже сформулированную постфиксную документацию (как вы уже упомянули).

Последнее обновление о SMTPUTF8поддержке в dovecot, похоже, то, на что вы ссылаетесь. Где-то еще я припоминаю, что видел пост о том, что SMTPUTF8в dovecot не будет реализовано в ближайшее время, если вообще будет [нужна ссылка]. Не уверен, было ли это авторитетным заявлением или нет.

Еще один комментарий о dovecot SMTPUTF8можно найти здесь (включая вашу ссылку и этот вопрос SE):https://dovecot.org/list/dovecot/2016-November/106029.html Вместе со следующим постом, похоже, тема застопорилась примерно в конце 2016 года:https://dovecot.org/list/dovecot/2016-September/105474.html

По состоянию на октябрь 2022 года все еще нет перспективы, что SMTPUTF8 будет поддерживаться dovecot LDA/LMTP в ближайшее время. Тем не менее, эта проблема теперь отслеживается с помощью идентификатора баг-трекера dovecot "DOP-1045" (см. https://dovecot.org/list/dovecot/2019-April/115430.html).

Подводя итоги:сегодня, если вам не нужна SMTPUTF8поддержка заголовков, отличных от Subject:заголовка, вы можете обойтись простоотключение smtputf8_enableв postfix' main.cfи будьте счастливы как есть.

НТН

Связанный контент