web-dev-qa-db-ja.com

SMTPUTF8経由でメールを受信するようにPostfixとDovecot-LMTPを設定しますか?

メール配信にDovecotLMTPを使用するPostfixサーバーを実行しています。ふるいによく合うのでやっています。

しかし、最近、件名にUnicodeが含まれているメールを受け取りました。

このメールはPostfixによってOKで受信されます。これは明らかにSMTPUTF8をサポートしていますが、LMTPに到達すると死にます。

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

Postfix SMTPUTF8のドキュメントで、次のことを読みました。

SMTPUTF8リクエストでメッセージが受信されると、Postfixは次の場合にのみ、SMTPUTF8以外のSMTPまたはLMTPサーバーにメッセージを配信します。

UTF-8を含むメッセージヘッダー値はありません。

エンベロープ送信者アドレスにはUTF-8が含まれていません。

その特定のSMTP/LMTP配信トランザクションのエンベロープ受信者アドレスにUTF-8が含まれていません。

注:同じメッセージの他の電子メール配信トランザクションの受信者には、UTF-8が含まれている可能性があります。

それ以外の場合、Postfixはそのメール配信トランザクションの受信者を配信不能として返します。配信ステータス通知メッセージはSMTPUTF8メッセージになります。したがって、SMTPUTF8リクエストで受信される電子メールと同じ制限が適用されます。

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

関連する部分は、「Postfixは... [メッセージにUTF8がない]場合にのみ...非SMTPUTF8 ... LMTPサーバーに配信します」です。

これは厄介な言葉ですが、PostfixがUTF8をサポートしている場合にのみ、UTF8メールをダウンストリームサーバーに渡すことを意味します。

UTF8メールを受信して​​いるため、PostfixはそれをDovecotLMTPに配信することを拒否しています。

それは私にいくつかの質問をもたらします:

  • Dovecot LMTPはSMTPUTF8をサポートしていますか? (そうではないようです: http://www.dovecot.org/list/dovecot/2013-January/thread.html#87756
  • Postfixにはこのための「ソフトフェイル」モードがありますか?それにより、後で配信するためにメールをキューに入れたり、LMTPをバイパスしたり、フォールオーバーよりもインテリジェントなことをしたりできますか?
6
g33kz0r

TL; DR: _Summing up_ を参照してください!

また、_UTF-8_行に_Subject:_文字を含むメールを定期的に受け取ります。これまでのところ、他のヘッダー内にはありません。

Postfixの「soft-fail」モードは私にはわかりませんが、別のsmtpトランスポートをセットアップし、一種のフェイルセーフモードとしてフィルタリングバウンスを行うことができます。ただし、この設定はまだ自分で完了していません。現在のところ、バウンスは、有効期限が切れるまで配信不能としてキューに留まっています。少なくとも、送信者に返されるだけでなく、キューのスティッキーなメンバーに注目しています。一方、私はその道をさらに進むことに消極的です。次の方法が私(tm)のために機能するようになったからです:

実用的な解決策(_UTF-8_の_Subject:_文字の場合のみ)は、disablepostfix '_smtputf8_enable_ 機能。現在はデフォルトで「yes」になっています(つまり、最新のDebianを使用しています)。 main.cfに次を追加します。

_smtputf8_enable = no
_

_smtputf8_autodetect_classes_をいじるのは決定的ではありませんでした。

_UTF-8_ _Subject:_行を特徴とする電子メールメッセージは現在、postfixによって処理され、dovecotによって問題なく保存されています。

解決策は、特に(すでに述べたように)少し厄介な言葉の接尾辞のドキュメントに関しては、直感に反するように見えるかもしれません。

Dovecotでの_SMTPUTF8_サポートに関する最新の更新は、参照しているもののようです。 dovecotでの_SMTPUTF8_の投稿を見た覚えのある他の場所では、[引用が必要]であれば、すぐには実装されません。これが権威ある声明であったかどうかわからない。

Dovecotと_SMTPUTF8_に関する別のコメントは、こちら(参照とこのSEの質問を含む)にあります: https://dovecot.org/list/dovecot/2016-November/106029.html この次の投稿と合わせて、トピックは2016年のほぼ終わりに行き詰まっているようです: https://dovecot.org/list/dovecot/2016-September/105474.html

まとめ:今日、_SMTPUTF8_ヘッダー以外のヘッダーで_Subject:_サポートが必要ない場合は、 postfix 'main.cfで_smtputf8_enable_を無効にして、現状のまま満足します。

HTH

4
Gen.Stack