< Cyrus SASL | メイン | vim とか Emacs とか >

2006年09月28日

 ■ Courier-IMAP

今回はメール取り出し側の IMAP サーバについて。

最初は Cyrus IMAP を使おうと思ったのだけれど、 DarwinPorts が壊れてるっぽいのと、Maildir に 対応していないので断念。 Courier-IMAP を使うことにする。

1. インストール

sudo port install courier-imap

途中すっ飛ばして先に結論を言っておくと、どうしても authlib で authpwd や shadow 認証が使えない。 Mac OS X ではユーザデータベースを passwd ではなく NetInfo で管理しているから、当然といえば当然だが、 passwd と master.passwd を自分で作成しても、 依然として使えないのだ。何故…? (この事象の解決方法については11月11日分の日記を参照)

この際 authuserdb を使うことにしてしまえば、 MD5 認証も使えるし、そっちを利用することにした。 NetInfo と Cyrus SASL 以外に、3つ目のユーザデータベースを 管理しなくちゃならなくなるけど…。

2. courier-authlib の設定

authdaemonrc をテンプレからコピー。

cd /opt/local/etc/authlib
sudo cp -p authdaemonrc.dist authdaemonrc

最初から authuserdb が最優先の設定なので、 編集する必要は無い。

次に userdb でユーザを登録する。

sudo userdb gema set home=/Users/gema mail=/Users/gema/Maildir uid=501 gid=501

ユーザが登録されたら、パスワードを設定する。

userdbpw | sudo userdb gema set imappw
userdbpw -hmac-md5 | sudo userdb gema set hmac-md5pw

上は平文パスワードの設定、下は MD5 パスワードの設定。

最後に DB をハッシュデータベース化する。

sudo makeuserdb

/opt/local/etc/authlib/userdb がデータベースファイルとなるが、 一般ユーザから読み込めても困るので、root だけが読めるようにしておく。

sudo chmod 600 /opt/local/etc/authlib/userdb*

3. imap、imap-ssl の設定

/opt/local/etc/courier-imap の下の imapd、imapd-ssl を編集する。

cd /opt/local/etc/courier-imap
vi imapd

MAXPERIP=4 を 20 に変更 (4は一人で利用するにも少なすぎ) IMAP_CAPABILITY の行を、AUTH=CRAM-MD5 を含む行に変更 (最初からコメントで入っているので、そちらを有効化) IMAPDSTART=NO を YES に変更 これで保存する。

imapd-ssl のほうは、

vi imapd-ssl
IMAPDSSLSTART=NO を YES に変更

これだけ。 今回は pop3 を利用しないので、設定はしない。

4. 起動設定

/Library/LaunchDaemons/org.macports.courier-imap.plist から 呼び出される起動スクリプトの中に、imapd-ssl と authdaemond の 起動を行う記述が無いので、追加しておく。

vi /opt/local/etc/LaunchDaemons/org.macports.courier-imap/courier-imap.wrapper

Start のセクションの中に、

/opt/local/sbin/authdaemond start
/opt/local/libexec/imapd-ssl.rc start

を追加、Stop のセクションの中に、

/opt/local/libexec/imapd-ssl.rc stop
/opt/local/sbin/authdaemond stop

を追加したら、起動を行う。

sudo launchctl load -w /Library/LaunchDaemons/org.macports.courier-imap.plist

これで IMAP、IMAPS、MD5 認証をどのように組み合わせても うまく認証できている。 検証環境クライアントは Thunderbird 1.5.0.7 (Windows)。

あ、あと Maildir を使うことになるので、Postfix の設定で

home_mailbox = Maildir/

にしておくことを忘れずに。

投稿者 gema : 2006年09月28日 14:56

トラックバック

このエントリーのトラックバックURL:
https://gema.luna2.org/cgi-bin/mt/mt-tb.cgi/20

コメント

コメントしてください




保存しますか?

(書式を変更するような一部のHTMLタグを使うことができます)