Courier-IMAP

更新日2009-09-20 (日) 23:39:50

IMAPサーバのCourier(キューリェ)-IMAPをインストール。

ここ からDownload.

postfixの準備

Maildirに対応するため

/etc/postfix/main.cf

home_mailbox = Maildir/
のコメントをはずし
mail_spool_directory = /var/spool/mail
をコメントアウトする

その後

# /etc/rc.d/init.d/postfix reload

ホームディレクトリにMaildirを作成

$ mkdir ~/Maildir
$ chmod -R 700 ~/Maildir

procmailの設定

~/.procmailrcに
MAILDIR=$HOME/Maildir  <--追加
DEFAULT=$MAILDIR/      <--追加

:0fw: spamassassin.lock
| /usr/bin/spamc
:0:
* ^X-Spam-Status: Yes
Spammail/.  <--変更
([[Spamassassin:https://wwwism.dyndns.org/hp/linux/spamass.htm]]を動作させているときはこの箇所も変更する必要がある)

インストール

Vine3.0では事前に gdbm-devel-1.8.0-20vl1.i386.rpm

openssl-devel-0.9.7d-0vl3.i386.rpm

db4-devel-4.0.14-15vl3.i386.rpm

(特にdb4-develはなくてもインストールできるが/usr/lib/courier-imap/bin/couriertlsがインストールされず、imap-sslが起動しない)

をインストール。

courier-imap-4.0.3をインストールするときはさらに

VinePlusから

courier-authlib-0.55-0vl3.i386.rpm
courier-authlib-devel-0.55-0vl3.i386.rpm 
Courier-IMAP-4.05以降にはCourier authentication libraryの0.57以上が必要。Vine3.xには0.56しかrpmがないのでソースからインストールする。

authentication libraryのインストール(0.58)

ここからCourier authentication libraryの最新版をDownload

$ tar jxvf courier-authlib-0.58.tar.bz2
$ cd courier-authlib-0.53
$ ./configure

(略)

checking for uid_t in sys/types.h... yes
checking for strchr... yes
configure: creating ./config.status
config.status: creating Makefile
config.status: creating config.h
config.status: executing depfiles commands

このとき
configure: WARNING: -----------------------------------------------------
configure: WARNING: expect not found - will not be able to change passwds
configure: WARNING: in webmail
configure: WARNING: -----------------------------------------------------
のようなエラーが出たら# apt-get install expectで expectをインストール
$ make

(略)

config.status: creating authlib.3
config.status: executing depfiles commands
make[2]: ディレクトリ `/usr/local/src/courier-authlib-0.58' から出ます
make[1]: ディレクトリ `/usr/local/src/courier-authlib-0.58' から出ます

# make install
# make install-migrate
/bin/sh authmigrate

# make install-configure

(略)

  MYSQL_AUXOPTIONS: new
  MYSQL_WHERE_CLAUSE: new
  MYSQL_SELECT_CLAUSE: new
  MYSQL_ENUMERATE_CLAUSE: new
  MYSQL_CHPASS_CLAUSE: new
test -f /usr/local/etc/authlib/authpgsqlrc.dist && /usr/bin/perl ././  sysconftool /usr/local/etc/authlib/authpgsqlrc.dist || true
test -f .dist && /usr/bin/perl ././sysconftool .dist || true
/usr/local/lib/courier-authlib/
/usr/local/bin

にインストールされる

=======ここまで===========

以下はどのバージョンも同じ thread-2.5.2-0vl2.i386.rpm

VineSeedから

expect-5.39.0-95vl2.i386.rpm

をDownloadし、

thread-2.5.2-0vl2.i386.rpm expect-5.39.0-95vl2.i386.rpm

login認証では以下2つでいいようだ。ldap認証等を行うにはcourier-authlib-ldap なんかが必要になる。

courier-authlib-0.55-0vl3.i386.rpm
courier-authlib-devel-0.55-0vl3.i386.rpm 
の順でインストール

注)configureのときrootだと以下のようなエラーでとまる

configure: WARNING: === Do not compile Courier-IMAP as root.  Compile
configure: WARNING: === Courier-IMAP as a non-root user then su to
configure: WARNING: === root before running make install.  You must now
configure: WARNING: === remove this entire directory and then extract the
configure: WARNING: === source code from the tarball as a non-root user
configure: WARNING: === and rerun the configure script.  If you have read
configure: WARNING: === the INSTALL file you should have known this.  So
configure: WARNING: === you better read INSTALL again.
configure: error: aborted.

''Courier authentication libraryをソースからインストールしたときは 実行形式、ライブラリィにパスを通しておく''

.bash_profile

export PATH="$PATH":/usr/local/bin <--追加
$ cd ~
$ source .bash_profile

/etc/ld.so.confに

/usr/local/lib  <--追加
/usr/X11R6/lib
/usr/lib

を追加し、

# /sbin/ldconfig

を実行

$ tar jxvf courier-imap-3.0.5.tar.bz2
$ cd courier-imap-3.0.5
$ ./configure --without-ipv6 --without-authldap \
--enable-unicode=iso-2022-jp,iso-8859-1,utf-8 \
--with-redhat
$ make
$ make check

/usr/lib/courier-imapにデフォルトではインストールされるまた

/etc/pam.dにimapとpop3が作成される(存在時は上書き?)

$ su
# make install-strip (or make install)
# make install-configure
# cp courier-imap.sysvinit /etc/rc.d/init.d/imapd

インストール先ディレクトリは

/usr/lib/courier-imap

設定

Courier-IMAPはimap,imap-ssl,pop3,pop3-ssl等が動く

今回はimap,imap-ssl,pop3を動作させる

imapを動作させるには、(Port 143)

/usr/lib/courier-imap/etc/imapd

IMAPDSTART=NO
を
IMAPDSTART=YES
に変更。

imap-sslを動作させるには(Port 993)

/usr/lib/courier-imap/etc/imapd-ssl

IMAPDSSLSTART=NO
を
IMAPDSSLSTART=YES
に変更。

pop3を動作させるには(Port 110)

/usr/lib/courier-imap/etc/pop3d

POP3DSTART=NO
を
POP3DSTART=YES
に変更。
# chmod a+x /etc/rc.d/init.d/imapd

起動

# /etc/rc.d/init.d/imapd start

なぜか、Ver 4.03では認証デーモン(authdaemond)が起動しないので手動で 起動(rc.localなどに記載すればいいかな)

# /usr/libexec/courier-authlib/authdaemond &

ソースからコンパイルしたときは

# /usr/local/sbin/authdaemond start

オプションにstartを忘れると「Unknown option '-'」ようなエラーで起動できない

確認

# ps -axw

(ここがimapのデーモン)
26515 ?        S      0:00 /usr/lib/courier-imap/libexec/couriertcpd -address=0
-stderrlogger=/usr/sbin/courierlogger -stderrloggern
26520 ?        S      0:00 /usr/sbin/courierlogger imapd
26521 ?        S      0:00 /usr/lib/courier-imap/libexec/couriertcpd -address=0
-stderrlogger=/usr/sbin/courierlogger -stderrloggern
26523 ?        S      0:00 /usr/sbin/courierlogger pop3d
26538 ?        S      0:00 sshd: student [priv]
26541 ?        S      0:00 sshd: student@pts/2
26542 pts/2    S      0:00 -bash
26687 ?        S      0:00 pickup -l -t fifo -u
(ここから認証デーモン)
26725 pts/0    S      0:00 /usr/libexec/courier-authlib/authdaemond
26726 pts/0    S      0:00 /usr/libexec/courier-authlib/authdaemond
26727 pts/0    S      0:00 /usr/libexec/courier-authlib/authdaemond
26728 pts/0    S      0:00 /usr/libexec/courier-authlib/authdaemond
26729 pts/0    S      0:00 /usr/libexec/courier-authlib/authdaemond
26730 pts/0    S      0:00 /usr/libexec/courier-authlib/authdaemond

確認後

# chkconfig --add imapd

初めてのメールが到着すると

~/Maildir/cur(imapクライアントからアクセス後に入る)
~/Maildir/new(新しいメールが入る)
~/Maildir/tmp
~/Maildir/Spammail(スパムと判断されたメールが入る)
というディレクトリが出来る。

その後クライアントからアクセスされると

~/Maildir/courierimapkeywords/
~/Maildir/courierimapsubscribed
~/Maildir/courierimapuiddb
が出来、

POP3(Webmailer)でアクセスすると

~/Maildir/courierpop3dsizelist
が出来る。

なぜかwebmailer0954で、imapからはメールリストまでは見えるが 内容が表示されない。pop3だとOK。


元ページ

トップ   新規 一覧 検索 最終更新   ヘルプ   最終更新のRSS