MTA(メール中継エージェント)の一つ。コンフィグレベルでSendmailと互換性がある。
転送先がSMTPをサポートしていれば、フィルタリング、ウイルスチェック、リバースプロキシへ転送する事も可能。
今回検証した環境はこちら
※CentOS 6.x等の非Systemd環境で構築する場合には、各スクリプトをinit用に書き換える必要がある。
1. ディレクトリ構成
普通は"/var/spool"以下にメールデータを格納するのだが、
今回はちょっと特殊な構成な点と、色々なミドルウェアとの連携をしているので、
メールデータディレクトリのみデフォルトから変更している。
メールデータディレクトリ:/var/hostname/spool/* Postfixのコンフィグディレクトリ:/etc/postfix/* Postfixのシステムコンフィグファイル:/etc/sysconfig/postfix
今回はこのディレクトリ構成でMTA(Postfix)の構築を行う
2. インストール
ソースからmakeするのが筋なのだろうが、面倒だったのでyastでインストール。
zypperとかyumとかapt-getでも同様に行ける。
# yast [Software] -> [Software Management] -> [Search Phrase] -> "postfix"を入力。 実際にインストールするのは、"postfix","postfix-devel","postfix-mysql"の三つ。
・説明
Postfixのメインコンフィグを書き換えていく。
存在しないコンフィグファイルがあった場合は新規作成をする。
基本的にデフォルトのパラメータやディレクトリ構成を使用する事とする。
しかし、ユーザ情報はMySQLで管理する構成なので、
PostfixからMySQLへのアクセスを行う設定ファイルを追加作成する。
設定例としてMySQL用のパラメータを以下とする。
・MySQLユーザ名:postfix-mysql-user ・MySQLパスワード:postfix-mysql-pass ・MySQLのDB名:postfix-user-db
あと、現状のPostfixコンフィグの何処を書き換えたかうろ覚えなので、
変更した設定項目を全て列挙する。
1). 下記の書き換え項目に挙っていない所は全てコメントアウトする。 2). 書き換えに上がっていない設定ファイルはデフォルトのまま使用する。
/etc/postfix/main.cf