そろそろFedora9が出るらしいということで、Fedora8からFedora9へのupgrade方法を調べつつ、今日はFedora8でのpostfixインストール。色々組み合わせてバーチャルホストを構成するというネタは後日やるとして今回は送信専用。スクリプト側からバルク送信することも考えて、遅延送信処理も含める。
■インストール
# yum install postfix
■標準MTAの変更
# alternatives --config mta There are 2 programs which provide 'mta'. Selection Command ----------------------------------------------- *+1 /usr/sbin/sendmail.sendmail 2 /usr/sbin/sendmail.postfix Enter to keep the current selection[+], or type selection number: 2
■sendmailの自動起動を止める
# chkconfig sendmail off
■postfixの自動起動を設定
# chkconfig postfix on
■smtp/relayで動かないように設定
# vi /etc/postfix/master.cf
#smtp unix - - n - - smtp # When relaying mail as backup MX, disable fallback_relay to avoid MX loops #relay unix - - n - - smtp
■自ホストのFQDN設定と遅延送信設定
# vi /etc/postfix/main.cf
myhostname = mail.example.com defer_transports = smtp (追記)
■設定確認
# service postfix check
■sendmailサービス停止
# service sendmail stop
■postfixサービス開始
# service postfix start
追記(5/2):どうもまだこれだけだと遅延送信の確認が出来ていない。後で調べて追記する。
追記(5/5):smtp/relayを殺したらうまくいくはずないよなJK、というわけでその設定はしてはイケナイ。これで遅延送信ができるようになるので、下記の設定を追加。
■sendmail -qで適宜キューの中身を送信
# vi /etc/cron.d/mailqueueflush
* * * * * /usr/sbin/sendmail.postfix -q
間隔は環境ごとに必要十分な値を検討したほうが良いし、出来れば必要な送信処理が終わるごとに呼んだ方が良いように思う。それと、この設定でどれくらいのパフォーマンス変化があるかは検討を要するところなので、仕事なら事前に評価する必要がある。