mini-HOWTO install Cyrus IMAP Server
Kevin Mitchell, kevin@iserv.net
v0.9, 21 Jan 1998
高橋 聡 hisai@din.or.jp
xx Jul 1999
このドキュメントは Cyrus IMAP サーバを Linux にインストールする際の手
助けをする目的で書かれました。
______________________________________________________________________
目次
1. 序論
1.1 IMAP とは何物で、どうして使うべきなのか?
1.2 なぜ Cyrus サーバを使うのか?
2. システム環境について
3. Tcl のインストール
4. makedepend を使ったインストール
5. Cyrus のインストール
6. Sendmail の設定
7. メールボックスの設定
8. おことわり
9. ソース
10. 日本版謝辞
______________________________________________________________________
1. 序論
Bob Anderson (boba@iserv.net) と Jorge Paramo 両氏に感謝します。 Linux
で色々なことに挑戦する時に、助けてくださいました。
1.1. IMAP とは何物で、どうして使うべきなのか?
IMAP (Internet Message Access Protocol) はメール・サーバ上にある電子メ
ールや掲示板のメッセージを取得するための手段です。IMAP は一般に POP
(Post Office Protocol) に置き換わるものと考えられています。これを使う
と、複数のコンピュータから、サーバ上の電子メールをダウンロードしなくと
も、購読することができるようになります。またセキュリティも高まります
し、エンド・ユーザにとっても多くのメリットがあります。
詳細はここを見てください:
IMAP と POP の比較はここを見てください:
1.2. なぜ Cyrus サーバを使うのか?
Cyrus は 一般ユーザの login を許可していないサーバ上で動くように設計さ
れています。また Unix 上で動くポピュラーな IMAP サーバとして知られてい
る 2 つの内の 1 つです。もう 1 つのサーバは The University of
Washington IMAP Server です。このサーバはここから取ってこられます。
2. システム環境について
私が Cyrus のインストールに成功したマシンには、486DX66 と Pentium が搭
載されていて、そこではカーネル 2.1.79 と 2.0.33 がそれぞれ稼働していま
す。これらのマシンは Slackware 3.4 をベースに構築されています。
3. Tcl のインストール
Cyrus をインストールしようとする前に、すでに Tcl がインストールされて
いる必要があります。Tcl がインストールされていないと、Cyrus の管理ツー
ル(cyadm)が利用できません。
最新の Tcl のソースはここにあります。
インストールが終ったら、libtcl.a が /usr/local/lib ディレクトリにある
ことを確認してください。Tcl 8.0 は、libtcl8.0.a という名前のライブラ
リ・ファイルをつくりますので、次のコマンドを使ってシンボリック・リンク
をはってください。
# ln -s libtcl8.0.a libtcl.a
4. makedepend を使ったインストール
あなたのシステムに makedepend コマンドがあるかを確認してください。もし
なくても、気にすることはありません。Cyrus のソースについてきます。
(Slackware 3.4 にはついてきませんでした。)
makedepend をインストールしたら、Cyrus を展開して makedepend のある
ディレクトリに移ってください。移ったら次のコマンドを実行してください。
./configure
make
cp ./makedepend /usr/local/bin/makedepend
5. Cyrus のインストール
Cyrus 付属のドキュメントをしっかり読んでインストールしてください。ド
キュメントはオンラインで読むことができます:
< http://andrew2.andrew.cmu.edu/cyrus/imapd/install.html>
インストールする時に参考になる tips をあげておきます:
もし Slackware 3.4 (シャドウ・パスワード使用)を使っているなら、このよ
うに設定してください。
./configure --with-login=unix_pwcheck
make は 簡単にできます。
make depend
make all CFLAGS=-O
ステップ 1 : cyrus というユーザ・アカウントは、セキュリティ・ホールを
できるだけ減らすために使用禁止にしました。
ステップ 3: cyrus 付属の syslog.conf をコピーせずに、既存のファイルを
修正しました。
ステップ 9: Linux では pwcheck を起動しておくことを忘れないでくださ
い。さもないとサーバが動きません。
______________________________________________________________________
umask 0;/usr/cyrus/bin/pwcheck &
umask 022
______________________________________________________________________
起動時に実行するスクリプトに、こんな感じで追加してください。
______________________________________________________________________
if [ -f /usr/cyrus/bin/pwcheck ]; then
echo -n "Starting pwcheck for imap"
umask 0;/usr/cyrus/bin/pwcheck &
umask 022
fi
______________________________________________________________________
私は /etc/rc.d/rc.local に記述して、うまく動作しています。
ステップ 12:/etc/inetd.conf を修正する時に、下記のように TCP Wrappers
から起動するようにしてください。
______________________________________________________________________
imap stream tcp nowait cyrus /usr/sbin/tcpd /usr/cyrus/bin/imapd
imap
______________________________________________________________________
修正が済んだら忘れずに 'kill -HUP' を実行して,inetd に HUP シグナルを
送ってください。
# ps ax | grep inetd
61 ? S 0:00 /usr/sbin/inetd
# kill -HUP 61
6. Sendmail の設定
もし sendmail を持っていないなら、ソースをダウンロードしてください。
IMAP を動かす他にも、スパム対策の設定を行う、というような楽しい作業が
待っています。
下記が私の mc ファイルです。/etc/sendmail.cN ファイルにユーザ名がなく
ても IMAP にメイルを配送できます。この設定で root のようなシステム用の
アカウントに対してのメールをスプールに入れることができます。
IMAP はデフォルトで、アカウントがあるユーザは IMAPを利用するように設定
されています。下記のコードを Copy & Paste しないでください。sendmail
はスペースではなく、タブを使用することになっていますから。
______________________________________________________________________
divert(-1)
#
# (C) Copyright 1995 by Carnegie Mellon University
#
# All Rights Reserved
#
# Permission to use, copy, modify, and distribute this software and its
# documentation for any purpose and without fee is hereby granted,
# provided that the above copyright notice appear in all copies and that
# both that copyright notice and this permission notice appear in
# supporting documentation, and that the name of CMU not be
# used in advertising or publicity pertaining to distribution of the
# software without specific, written prior permission.
#
# CMU DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE, INCLUDING
# ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO EVENT SHALL
# CMU BE LIABLE FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL DAMAGES OR
# ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS,
# WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION,
# ARISING OUT OF OR IN CONNECTION WITH THE USE OR P ERFORMANCE OF THIS
# SOFTWARE.
#
# Contributed to Berkeley by John Gardiner Myers .
#
# This sample mc file is for a site that uses the Cyrus IMAP server
# exclusively for local mail.
#
divert(0)dnl
VERSIONID(`@(#)cyrusproto.mc 8.3 (Carnegie Mellon) @(#)cyrusproto.mc 8.3')
OSTYPE(linux)
define(`confBIND_OPTS',`-DNSRCH -DEFNAMES')
FEATURE(nouucp)
FEATURE(nocanonify)
FEATURE(always_add_domain)
MAILER(smtp)
MAILER(local)
MAILER(cyrus)
define(`confLOCAL_MAILER',`cyrus')
LOCAL_RULE_0
R$=N $: $#local $: $1
R$=N $: $#local $: $1
Rbb + $+ $#cyrusbb $: $1
LOCAL_CONFIG
FN /etc/sendmail.cN
# end of mc file
______________________________________________________________________
/etc/sendmail.cf ファイルを作ったら、 /etc/sendmail.cN ファイルを作っ
て、IMAP を使用しない方がよいユーザのアカウントを加えましょう。
o root
o majordom
o stan
o mothra
私は Sendmail 8.8.8 をインストールしたら、ローカルなメール配送をするた
めに mail.local もインストールしました。mail.local を作るにはちょっと
したコツが必要です。sendmail のソースの中の mail.local のディレクトリ
に移り、次のようにしてください。
cp Makefile Makefile.orig
cp Makefile.dist Makefile
make
cp mail.local /bin/mail.local
chmod 4555 /bin/mail.local
全てやり終えたら、sendmail を再起動してください。Cyrus のインストール
を終えているかを忘れずに確認してください。
7. メールボックスの設定
IMAP サーバ の動作確認をしてください。OK ならメールボックスの設定を
行ってください。
8. おことわり
このドキュメントは、無保証かつ無償です。ご自分の責任においてご利用くだ
さい。
9. ソース
必要なソフトウエア
o Cyrus のホーム・ページは、
です。
o 最新版のダウンロードは下記から落してください。
o Tcl のホーム・ページは、 です。
o 最新版のダウンロードは下記から落してください。
o sendmail のホーム・ページは、 です。
o 最新版のダウンロードは下記から落してください。
10. 日本版謝辞
翻訳に当たって、下記の方にお世話になりました。ありがとうございました。
o 藤原輝嘉さん