Postfix + CourierPOP + Poastfix.adminで作るメールサーバ
OutlookExpressでもセキュアな受信ができるよう、Postfix とCourierPOP-SSLのメールサーバを構築しています。
この方法は、SSLを使ってメールの送受信を行うので、とてもセキュアな環境ではありますが、SSLに対応していないMUA(メーラー)は使えないので、注意が必要です。
● courier-POPS,courier-IMAPSのインストール
courier-POPS,courier-IMAPSのインストールする# apt-get install courier-pop-ssl courier-imap-ssl
courier-pop-ssl courier-imap-sslをパッケージインストールすると、パスワード丸見えのcourier-pop courier-imapも同時にインストールされてしまいます。内部のサーバであればそれでも許せるのですが(内部でも避けたほうがいい)、外部から接 続するときには使わないほうがいいので、ノンセキュアなデーモンは停止(自動起動も外す)します。
# /etc/init.d/courier-pop stop
# /etc/init.d/courier-imap stop
# update-rc.d -f courier-pop remove
# update-rc.d -f courier-imap remove
署名書の変更
# vi /etc/courier/pop3d-ssl
-------------------------------TLS_CERTFILE=/etc/apache2/ssl/courier.pem
# vi /etc/courier/imapd-ssl
-------------------------------TLS_CERTFILE=/etc/apache2/ssl/courier.pem
courierがmysqlを使えるようにパッケージをインストールする
# vi apt-get install courier-authlib-mysql
courierからmysqlを使うように設定ファイルを変更する
※各値の設定区切りはTABになっている。スペースなどを入れると思うようには動かないので、注意が必要。
# vi /etc/courier/authmysqlrc
---------------------------------MYSQL_USERNAME | postfix |
MYSQL_PASSWORD | abcdefg01 |
MYSQL_DATABASE | postfix |
MYSQL_USER_TABLE | mailbox |
MYSQL_CLEAR_PWFIELD | password |
MYSQL_UID_FIELD | 5000 |
MYSQL_GID_FIELD | 5000 |
MYSQL_LOGIN_FIELD | username |
MYSQL_HOME_FIELD | /var/mail/virtual |
MYSQL_MAILDIR_FIELD | maildir |
MYSQL_QUOTA_FIELD | quota |
(※各値の設定区切りはTABキーで挿入)
# vi /etc/courier/authdaemonrc
---------------------------------authmodulelist="authcustom authuserdb authmysql authpam"
authmodulelistorig="authcustom authuserdb authmysql authpam"
daemons=5
version="authdaemond.mysql"
authdaemonvar=/var/run/courier/authdaemon
パーミッションを確認
(ユーザーがdaemonになっていればOK なっていなければオーナーを変更)
# ls -l /etc/courier/auth*
-rw-rw---- 1 daemon daemon uthdaemonrc-rw-rw---- 1 daemon daemon authmysqlrc
authdaemonの再起動
# /etc/init.d/courier-authdaemon restart
→ここで外部MUAからPOPの受信を確認