*CentOS5でPostfixAdminをインストールした話
構成
- CentOS5.2 (x84_64)
- Postfix (CentosPlusのパッケージを使用)
- MySQL
- PostfixAdmin
- Courier-IMAP(tar.bzよりrpm作成)
※特に注釈がないかぎりCentOSのパッケージを使用
基本
基本は下記サイトを参考に構築。
http://cherry.usacho.jp/20070718.html
PostfixはMySQL対応バージョンがCentOSPlusにあるので、
yumでplusを有効にしてインストール。
Courier-IMAPも本サイトからtar.bzをもってきてRPMコンパイル
root# rpm -ta courier-authlib-0.62.2.tar.bz2
こんな感じで、courier-imapもコンパイル。
コンパイルのやり方などは他のサイト参考に。
はまった部分だけ
PostfixAdminのメールディレクトリ
PostfixAdminのメールディレクトリを
/var/virtual/[ドメイン名]/[ユーザ名]
という風になるように設定した。
(例)/var/virtual/example.com/sample@example.com/
このとき、Courier-IMAPからのメール取得する際に少しはまる。
authmysqlrcの設定で、SQLコマンドをほぼそのまま発行するようなので下記のようにした。
/etc/authlib/authmysqlrc
MYSQL_HOME_FIELD '/var/virtual'
MYSQL_MAILDIR_FIELD CONCAT(domain,'/',maildir)
こうすると、メールディレクトリの決定の際にdomain名とmaildirを合体してパスを作れる。
SASLAuthの設定
他のサイトなどを見ていると
/usr/lib/sasl2/smtpd.confのファイルを変更しろと書いている。
このファイルを編集して、テスト送信してもauthdaemon経由にならない・・・。
ここで2時間くらい悩む・・・。
で、海外のサイトで発見したのだが、64bitOSの場合はディレクトリが違うらしい・・・。
x86_64の場合は /usr/lib64/sasl2/smtpd.confとのこと。
/usr/lib64/sasl2
pwcheck_method: authdaemond
log_level: 3
mech_list: PLAIN LOGIN
authdaemond_path:/var/spool/authdaemon/socket