私はこれに基づいてメールサーバーの設定を構成しましたガイドライン(ドイツ語)、おそらく重要な詳細として、私は Debian ではなく CentOS 8 をベース OS として使用しています。rspamd をセットアップに統合できないことを除いて、すべて正常に動作します。
次の行を追加して、postfix を rspamd に接続するように設定した場合main.cf
:
smtpd_milters = inet:localhost:11332
non_smtpd_milters = inet:localhost:11332
milter_protocol = 6
milter_mail_macros = i {mail_addr} {client_addr} {client_name} {auth_authen}
milter_default_action = accept
メールを送信すると、Postfix から次のエラーが表示されます。
postfix/submission/smtpd[125562]: fatal: host/service localhost/11332 not found: Device or resource busy
worker-proxy.inc
rspamdの設定は次のようになります
bind_socket = "localhost:11332";
milter = yes;
timeout = 120s;
upstream "local" {
default = yes;
self_scan = yes;
}
手動で telnet を使用して rspamd に接続すると、このエラーは表示されません。
# telnet localhost 11332
Trying ::1...
Connected to localhost.
Escape character is '^]'.
つまり、rspamd は期待されるポートでリッスンしていますが、postfix はそれに接続できません。これをさらにデバッグする方法がわかりません。今後の進め方についてアドバイスをいただければ幸いです。よろしくお願いします。
答え1
さまざまな設定変更をランダムに試した後、解決策を見つけました。何らかの理由で、postfix は を解決できませんlocalhost
。 の次のエントリを変更しました/etc/postfix/main.cf
:
smtpd_milters = inet:localhost:11332
non_smtpd_milters = inet:localhost:11332
に
smtpd_milters = inet:127.0.0.1:11332
non_smtpd_milters = inet:127.0.0.1:11332
そして突然、エラーがなくなりました!