web-dev-qa-db-ja.com

電子メールはBase64で受信され、自動的にデコードされません

私の会社の多くのエージェントは、Barracuda(スパムファイアウォール)ヘッダー(「ソース」ビューではなく「メッセージ」ビューでも)を含み、Base64でエンコードされた電子メールを受信して​​います。

ほとんどが海外から送られているのですが、ロケールが競合している可能性はありますか?すなわち。送信されるアジアの文字がある場合、そもそもBase64エンコーディングが必要になります。

私たちのメールサーバーはSmarterMailEnterprise14.5とIntermediaExchange、Barracuda Firmware v7.1.1.003(2015-09-28 16:36:19)です。

例: ユーザーに表示されるものと画像のソースがバラクーダでどのように見えるかを並べて比較します。

したがって、ヘッダーのほとんどはユーザーからは非表示のままですが、電子メールはこのように表示されるべきではありません。

私が問題を引き起こしていると思うのは次のとおりです。

Content-Type: text/plain; charset="utf-8"
Content-Transfer-Encoding: base64

これは、スパムファイアウォールを混乱させるロケール/エンコーディングの問題ですか?

3
user108

いいえ、それは問題ではありません。 Content-Transfer-Encodingは完全に有効であり、非常に一般的です。

問題は、received-spfヘッダーのすぐ上に空白行が挿入されていることです。 (左側のウィンドウでは、何らかの理由で、ちょうどその時点に太い赤いバーがあります。)

空白行は、メッセージヘッダーがその時点で終了し、本文が開始することを示します。最も外側のContent-Type宣言(multipart/related宣言)は偽の区切り文字の下にあるため、受信者のメールクライアントはそれを見ることすらなく、MIME以外の「プレーンテキスト」モードにフォールバックするだけです。

その空の行がどのステップで挿入されるかを把握します。 Barracudaが受け取ったものと保存したものを比較します(そのためにTLSをオフにする必要があるかもしれません一時的に)。より単純なメッセージを送信する場合(つまり、MS Exchangeからではない場合)、同じように動作するかどうかを確認します。テストメッセージを送信してみてください直接スパムフィルターに送信してください。 swaksを使用します。

5
user1686