wu-IMAPd 2002d のインストール
2003-07-13 作成 福島
2003-08-15 更新 福島

インストール

$ tar xzf imap-2002d.tar.Z   

$ cd imap-2002d
imap-2002d$ make lnp       Makefile の記述に従う (lnp は Linux で PAM を使う指定)
imap-2002d$ make lrh       lrh (RedHat7.2 向け) は lnp に kerberos, SSL が加わる

imap-2002d$ su
imap-2002d# cp imapd/imapd /usr/sbin/.

imap-2002d# vi /etc/xinetd.d/imap 644
service imap
{
        flags           = REUSE
        socket_type     = stream
        wait            = no
        user            = root
        server          = /usr/sbin/imapd
        log_on_failure  += USERID
        disable         = no
}
imap-2002d# cat >> /etc/hosts.allow
imapd: ALL         接続元はもっと限定しましょう。ALL は悪い例です。
imap-2002d# /etc/rc.d/init.d/xinetd restart /etc/xinetd.d/* を書き換えたので xinetd を再起動 imap-2002d# vi /etc/c-client.cf 644
I accept the risk for IMAP toolkit 4.1.   この行は「決まり」です。書かないと無効です。(docs/imaprc.txt より)
set disable-plaintext 0           PAM で平文を使うので平文パスワードを許可します (補足: PAM と平文は関係ありません)
imap-2002d# vi /etc/pam.d/imap
#%PAM-1.0
auth       required     /lib/security/pam_nologin.so
auth       required     /lib/security/pam_stack.so service=system-auth
account    required     /lib/security/pam_stack.so service=system-auth
session    required     /lib/security/pam_stack.so service=system-auth
imap-2002d# vi /etc/cram-md5.pwd 600 CRAM-MD5 を使う場合、これを作成すると自動的に CRAM-MD5 になる
User01TABPassword01
User02TABPassword02
CRAM-MD5 を使う場合はパスワードを平文で格納するため、以下のデメリットがある。  ・root がパスワードを読めてしまう。(頻繁に使用するコマンドで読めてしまう)  ・パーミッションを間違えると、もっとたくさんの人がパスワードを読めてしまう。 もちろん、  ・shell や FTP のログインと違うパスワードを設定できる。 というメリットがあります。

動作確認 $ telnet localhost 143
Trying 127.0.0.1...
Connected to localhost.
Escape character is '^]'.
* OK [CAPABILITY IMAP4REV1 LOGIN-REFERRALS STARTTLS AUTH=CRAM-MD5 AUTH=LOGIN] localhost IMAP4rev1 2003.338 at Sun, 13 Jul 2003 05:16:22 +0900 (JST)
1 login User01 Password01          User01 Password01 でログインする場合
1 OK [CAPABILITY IMAP4REV1 IDLE NAMESPACE MAILBOX-REFERRALS BINARY UNSELECT SCAN SORT THREAD=REFERENCES THREAD=ORDEREDSUBJECT MULTIAPPEND] User User01 authenticated
2 list "INBOX" *                   自分のホームディレクトリにサブディレクトリ INBOX がある場合
* LIST (\NoSelect) "/" INBOX/
* LIST (\NoInferiors \UnMarked) "/" INBOX/Trash
* LIST (\NoInferiors \UnMarked) "/" INBOX/Draft
* LIST (\NoInferiors \UnMarked) "/" INBOX/Sent
2 OK LIST completed
3 logout
* BYE localhost IMAP4rev1 server terminating connection
3 OK LOGOUT completed
Connection closed by foreign host.

バージョン番号について wu-imap のバージョン番号管理は一般的ではありません。 imap-2002d の場合はバージョン 2000 のメジャーリリース 3 番目 (2000 が 1 番目) で、4 回目のメンテナンス (d) という意味です。 2003 年にこのファイル名を見ると、去年からバージョンアップされていない風に見えるので、ちょっと損な名前だと思います。 (imap-2002d のリリース日付は 2003-05-28 です)