2006-08-23

メールサーバーはpostfixがお気に入りです。仕事上でSendmilも結構触って、それなりに使い方も覚えたのですが、やっぱりpostfixの方が簡易でいいですね。

postfixインストール

まずはpostfixのインストール

# apt-get install postfix

General type of configuration?

自らDNSを引いてメールを投げてほしいので、「インターネットサイト」を指定。

メール名は?

「ebi.dyndns.biz」お金をかけたくないからフリーのダイナミックDNSを使ってます。ちょっとくらいメールが不通になってもへこたれません。

このマシンが最終的な宛先とみなされるドメインのリスト

規定のままでOKなので、そのままに。

メールキューの同期更新の強制

パフォーマンスを優先して「いいえ」にしておきました。

myhostname変更

/etc/postfix/main.cfにて以下の設定を変更

myhostname = ebi.dyndns.biz

メールボックス形式の指定

/etc/postfix/main.cfにて以下の設定を追記

home_mailbox=Maildir/

SASL設定

/etc/postfix/main.cfに以下の内容を追記

smtpd_sasl_auth_enable = yes
smtpd_recipient_restrictions = 
    permit_mynetworks,
    permit_sasl_authenticated,
    permit_auth_destination,
    reject 

postfix reload

/etc/postfix/sasl/smtpd.confに以下の内容を記述

pwcheck_method: auxprop
mech_list: digest-md5 cram-md5

SMTP_AUTH ユーザー追加の手順に従ってユーザーを追加

Courier-IMAPインストール

# apt-get install courier-imap

とりあえずインストール。Webベースでの管理・・・は必要ないなと思ったのでディレクトリは作りませんでした。

/etc/courier/imapdの編集

/etc/courier/imapd を編集して、CAPABILITY にAUTH=CRAM-MD5 が入ってる状態にする。コメントアウトされている行を有効にすればOKです。

IMAP_CAPABILITY="IMAP4rev1 UIDPLUS CHILDREN NAMESPACE THREAD=ORDEREDSUBJECT THRE AD=REFERENCES SORT QUOTA AUTH=CRAM-MD5 AUTH=CRAM-SHA1 AUTH=CRAM-SHA256 IDLE"

/etc/courier/authdaemonrcの編集
authmodulelist="authuserdb authpam"

※net上の情報ではここでauthcramと書けと書いてあるものが多いですが、コメントにもあるとおり、authuserdbと書かないと動きません。どこかのバージョンから変わったのかな?

/etc/authlib/userdbの作成
pw2userdb | grep <ユーザー名> > /etc/couriter/userdb
chmod 700 /etc/courier/userdb

共有秘密鍵の作成
userdbpw -hmac-md5 | userdb <ユーザー名> set imap-hmac-md5pw
makeuserdb

Courier-IMAPの再起動
# /etc/init.d/courier-imap restart
# /etc/init.d/courier-authdaemon restart

とまぁ、こんな感じで、postfix(SASL) + Courier-IMAP(CRAM-MD5)の環境ができました。Web上の情報をいつも見ながらやってるんですけど微妙に古い情報がGoogleで上のほうに出てて来てしまうので、ちょこちょこ失敗しながら・・・って感じにいつもなっちゃいます。きちんとドキュメント読まないとだめだなぁ・・・。

コメントを残す