Last modified: Sun, 02/26/2006 12:07
設定ファイルは/usr/local/etc/exim/configure.インストール直後にはないが,デフォルト状態の設定ファイルがconfigure.defaultとしてそこに用意されているので,まずそれをconfigureという名前で同じ場所にコピーしよう.おそらく普通の使い方(*)をする限りでは,設定しなければならないところは最初の4項目だけだろう.(ちなみにこのeximを標準MTAとして採用しているDebianでは,質問に答えていくとこの辺の設定を自動でやってくれるeximconfigというツールがついてくるらしい)
(*)普通の使い方:インターネットに繋がれていて,外部からのメールの配送を受け取る.またLAN内の(複数の)MUAからの配送要求をLAN経由で受けて,それをDNSを参照して適切なメールサーバへ配送する.
その4つの項目ってのは,primary_hostname,local_domains,relay_to_domains,relay_from_hostsの4つ.以下それぞれについて説明してみよう.
以下の図で把握すると分かりやすいかな?
用済みになる予定のsendmailを停止させよう.ごく普通に,psでsendmailのpidを確認の後,killコマンドで停止させる.
# kill $PID_OF_SENDMAIL
それから,mailqで現在のqueueの内容を確認して,もしqueueにメールが残っているようであれば,sendmail -qでqueueを処理して空にしておこう.でないとそのメールは以後永遠に闇に葬り去られることになる.
FreeBSDでは,メール関係のコマンド(sendmail, mailq, etc)が実行された時に,実際どのコマンドが実行されるかを変更することが出来る.つまりsendmailとコマンド入力して実行したけど,実際にはsendmail以外のコマンドが動く,って言うように設定することが出来るわけだ.これは今回のようにsendmail以外のMTAを使うのに便利だ.なにせシステムの色々なところでsendmailは使用されているので,いきなり「sendmailなくしました」ってことになるとあちこち困る.ってことで今まで通りsendmailを実行するという形のママ,実際動くコマンドは別のモノ,って設定に出来るのは非常に便利.
他の環境ではこういう仕掛けがないのが多いんで,eximからsendmailへシンボリックリンクを張ることで解決している.でもこれはFreeBSDではやる必要はない.なんで,他のeximのインストールマニュアルなどでそーゆーことするって書いてあっても,FreeBSDではする必要はないよ.代わりにこっちをすればいい.
で,前置きが長くなったが,実際に実行されるコマンドこの設定は/etc/mail/mailer.confで設定する.最新のFAQのQ9201によると,以下のように設定すればいいらしい.
sendmail /usr/local/sbin/exim |
他にhoststatやpurgestatというコマンドが定義されてるけど,はっきり言って使ったことがないし使っているところを見たこともないので,設定する必要はないんじゃないかな.必要になってからまた考えよう.必要になった人は考えてみて結論を教えてくれるとありがたい.
あとはsendmailがOS起動時に自動で起動しないようにしておこう./etc/rc.confに以下の一行を追加しとけばいい.
sendmail_enable="NO" |
FreeBSDでは,定期的にrootへシステムチェックのメールが送られてくるわけだが,この時使われるチェックスクリプトで,eximが対応していないコマンドラインオプションが使われているらしい.なんでその部分を実行されないようにしよう.この辺も最新のFAQのQ9202に書いてあるんだけど,/etc/periodic.confに(なければ作成)以下の一行を追加する.
daily_status_include_submit_mailq="NO" |
あとはせっかくなんで,ログのローテートをするように/etc/newsyslog.confに以下の3行を追加.これで毎日0時ジャストにローテート.eximはログファイルが新しくなったらそれを感知して勝手に新しい方に書き込んでくれるんで,何も考えずにリネームなり何なりしていい.べつにnewsyslog以外を使ってもかまわない.ログローテート用のexicyclogってツールもついてくるし.
/var/log/exim/mainlog mailnull:mail 640 7 * @T00 Z |
これで設定は終わり.
でもその設定が正しいかどうかチェックしなきゃならない.メールに限らず,サーバは立てる前には自分が思ったとおりに動作しているかどうか確認してから外に公開するもんだ(その「自分が思った」内容が適切かどうかってとこもあるけどそこはそれ).なんで次は設定,特にeximの設定ファイルがちゃんと設定されているかどうかを確認してみよう.