私は、新しいMantisBTバグトラッキングシステムからの(重要な)電子メール出力を接続して、電子メールサーバーをスマートホストとして使用しようとしています。アイデアは、MantisBTシステムが電子メールサーバーのポート587にTLSトラフィックを送信し、特別なユーザー([メールアドレス])、電子メール サーバーがそれを宛先に送信します。これが正しい方法だと私は理解していますが、間違っている可能性もあります。
MantisBT は phpmailer を使用します。これは (私の考えでは) SMTP 587、ユーザー ID などを使用するように適切に構成されています。電子メール サーバーは長年使用されてきた iRedMail インストール (内部では postfix を使用) で、既知の問題はありません。この手法は、他の内部サーバーへの送信トラフィックにも問題なく使用できます。両方のサーバーは Rocky Linux 9.1 を実行しています。
問題は、MantisBT によるメッセージ送信の試みがすべてすぐにドロップされることです。
Postfix で MantisBT の IP の詳細なデバッグを有効にすると、次のようになります (わかりやすくするためにログの左側は削除されています)。
> unknown[159.xx.xx.20]: 220 mailserver.mydomain.com ESMTP Postfix
watchdog_pat: 0x564330697960
< unknown[159.xx.xx.20]: ????
> unknown[159.xx.xx.20]: 500 5.5.2 Error: bad UTF-8 syntax
watchdog_pat: 0x564330697960
< unknown[159.xx.xx.20]: ??????
> unknown[159.xx.xx.20]: 500 5.5.2 Error: bad UTF-8 syntax
watchdog_pat: 0x564330697960
< unknown[159.xx.xx.20]:
dict_pcre_lookup: /etc/postfix/command_filter.pcre:
> unknown[159.xx.xx.20]: 500 5.5.2 Error: bad syntax
watchdog_pat: 0x564330697960
smtp_get: EOF
誰かこれに気づきましたか? なぜ phpmailer は SMTP 交換でコマンドとして 4 つの疑問符を送信するのでしょうか? これは STARTTLS に関するものですか?
ご協力ありがとうございました!
答え1
恥ずかしながら、これはMantisBTのメール設定のエラーが原因でした。$g_smtp_connection_mode = 'ssl';本来あるべき場所'TLS'その結果、プレーンテキストで開始して STARTTLS に従って暗号化通信に切り替えるのではなく、すぐに SSL を使用しました。そのため、postfix ログの ???? には印刷できない (暗号化された) 文字が表示されます。