メインコンテンツへスキップ
  1. ブログ/

PostfixにおけるSMTPUTF8エラーとは

·
Postfix メール Linux
目次

初めに
#

今回は、Postfixを使っているときに発生する「SMTPUTF8エラー」についてご紹介します。

「エラーログに見慣れないメッセージが出たけど、これって何?」、「どう対応すればいい?」

そんな疑問をお持ちの方に向けて、エラーの発生する原因や対応方法について紹介します。

SMTPUTF8エラー
#

以下はSMTPUTF8エラーが発生した際のPostfixのログの出力例となります。

status=bounced (SMTPUTF8 is required, but was not offered by host ホスト名[IPアドレス])

このエラーは、送信元サーバーがSMTPUTF8機能を要求するメールを送信したにもかかわらず、受信側サーバーがSMTPUTF8をサポートしていない場合に発生します。

SMTPUTF8エンコードは、Postfix 3系以降のバージョンにてサポートされていますが、Postfix 2系以前のバージョンではサポートされていません。

そのため、Postfix 3系のサーバーからSMTPUTF8形式のメールをPostfix 2系のサーバーへ送信した場合、受信側で機能がサポートされていないことにより、配送失敗となり、該当のエラーログが出力されます。

対応方法
#

SMTPUTF8エラーへの主な対応方法として、以下の二つがございます。

1. Postfixのバージョンアップ
#

こちらは受信側サーバーにて、Postfixを3系以上のバージョンへアップグレードすることで、SMTPUTF8に対応させる方法となります。

一般的に、グローバルに運用されている送信元サーバーの設定や仕様を受信側が制御することはできません。

そのため、自組織で管理している受信側サーバーにて対応を実施することが現実的な対応策となります。

警告! バージョンアップには、既存環境への影響や互換性の確認を含む十分な事前検証が必要となります。

2. 送信側でSMTPUTF8機能を無効化する
#

もう一つの対応方法として、送信側サーバーにおいてSMTPUTF8機能を無効化するという選択肢があります。

Postfixの設定にて、smtputf8_enableパラメータをnoに設定することで、SMTPUTF8機能を無効化することが可能となります。

ただし注意点として、SMTPUTF8を無効化することにより、一部のメールアドレスが配送エラーとなる場合がございます。

警告! 適用前には環境や構成を確認し慎重な判断が必要となります。

以下は「/etc/postfix/main.cf」に記述する一例となります。

smtputf8_enable = no

設定後は以下のコマンドにて反映を行う事で設定の適応が実施できます。

systemctl restart postfix

関連記事

postfixのメールログを調査する方法
Linux メール Postfix
ログ取得にも便利!teeコマンドで標準出力を保存する方法
Linux コマンド
Apacheでインストール済みモジュールを確認する方法
Apache Linux
Pleskでメールアカウントのパスワードを確認する方法
Linux
WHOISサーバーを指定してドメイン情報を検索する方法
Linux コマンド ドメイン
【初心者向け解説】OpenSSHで秘密鍵/公開鍵を作成する方法
Linux SSH OpenSSH