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