postfixのインストール
古いCentOSやFedoraには標準状態ではMTAとしてsendmailが導入されています。
sendmailは非常に歴史は古いですが使い勝手が悪いため、Postfixがインストールされていない場合は、以下のインストール手順でインストールします。
# yum install postfix
postfixのインストールに成功したら、sendmailの削除を行います
(順序を間違えると依存関係でcrontabsなど必要なソフトまで削除される)
# yum remove sendmail
管理者用メールアドレスの変更
サーバー内のサービス用のアカウント(wwwとかftpとか)のエラーメールは全てrootに届くようにaliasが設定されている。
これを適切な管理者に設定しておかないとエラーメールがローカルに貯まってしまう。
/etc/aliasesの最下行に
root: hoge@hogehoge.com
といった管理者のメアドを追加し、
# newaliases
コマンドを実行して、設定内容を反映させておく。
全般設定
以下のように設定を変更します。
グローバルインターフェースにてSMTPをlistenする
(以下、diffの形式で変更点を記載しています。)
# diff main.cf.org main.cf
115,116c115,116
< #inet\_interfaces = $myhostname, localhost
< inet\_interfaces = localhost
—
> inet\_interfaces = $myhostname, localhost
> #inet\_interfaces = localhost
IPv4のみ使用するように設定
119c119
< inet\_protocols = all
—
> inet\_protocols = ipv4
メールボックスの形式としてMaildirを使用
419c419
< #home\_mailbox = Maildir/
—
> home\_mailbox = Maildir/
不必要なバナー表示を行わない
570a571
> smtpd\_banner = $myhostname ESMTP
送信元ホスト名やサイズのチェックを行う。
676a678,686
>
> disable\_vrfy\_command=yes
> smtpd\_helo\_required=yes
> mailbox\_size\_limit=1024000
> message\_size\_limit=1024000
サービスの起動設定
postfixの起動設定を以下のコマンドで確認
# /sbin/chkconfig –list postfix
現在のランレベルがonになっていることを確認する。
以下のコマンドでpostfixのプロセスを起動させる
# /etc/init.d/postfix start
なお、プロセスが起動しないと、mailコマンドでメール送信しようとした時に以下のエラーが出るので注意。
$ postdrop: warning: unable to look up public/pickup: No such file or directory