Postfix が main.cf ファイルを自動的に読み取るのはなぜですか、またどのようにしてですか?

Postfix が main.cf ファイルを自動的に読み取るのはなぜですか、またどのようにしてですか?

今日、Postfix main.cf ファイル内の TLS 証明書パスを変更しました。それらのパスは壊れていることが判明しました。

数分後、Postfix は変更されたパスを読み取り、TLS 接続が切断されました (パスが切断されたため)。

質問 1: Postfix が main.cf ファイルから変更を自動的に読み取るのはなぜですか? 文書化されていますか? それに関する情報は見つかりません。

質問 2: この動作をオフにできますか? Postfix は、オンザフライではなく、サービスの再ロード後に証明書を置き換えるものと予想していました。

ありがとう

答え1

変化を拾うことは意図的にほとんどの Postfix コンポーネントにおける標準的な手順です。実際、Postfix の多くの部分では、実行中のプロセスをいつでも新しいプロセスにスワップアウトすることを明示的に許可しています。多くの設定パラメータは、手動介入の有無にかかわらず、最終的には自動的に有効になるように設定されています ( reload)。

smtpd(8) プロセスは限られた時間だけ実行されるため、main.cf への変更は自動的に取得されます。変更を高速化するには、コマンド "postfix reload" を使用します。 -男8SMTPD

証明書の管理方法により、このような再ロードが望ましくない場合は、このような再ロード操作が安全な場合にのみ変更されるファイルに証明書と一致するキーを一緒に配置することをお勧めします。

Postfix ≥ 3.4 では、サーバー キーと証明書を設定するための推奨方法は、「smtpd_tls_chain_files」パラメータを使用することです。 -男5ポスト会議

追加の説明については、パラメータのドキュメントを参照してくださいsmtpd_tls_chain_files

答え2

おそらく、設定作業中に Postfix が再起動されたか、SIGHUP シグナルを受信したのでしょう。

デーモンの再起動/再ロードの一般的な原因の 1 つは logrotate です。ログのローテーション後に構成ファイルを再度開くように、サービスを再起動/再ロードする場合があります。

Postfix が他の何らかの理由でクラッシュし、systemd がそれを再起動した可能性もあります。

Postfix がダウンした時刻の前後に他のイベント (cron ジョブの実行など) がないかログを確認することをお勧めします。

関連情報