戻る

2005/01/08

IMAPサーバーその後
特に問題なく動いているようである。
今までPOP3形式でアクセスするサーバーしか使ったことの無かった私であるが、IMAPサーバーもメール本体をサーバーに気兼ねなく置いておけるし自分のメールクライアントと同期が取れるので使いやすいのかも知れない。ただ未だ馴染んではいないようだ。
し かし問題が無いわけではない、メールアカウントを作る為にはサーバー側でログイン認証とそのHOMEフォルダを作ってからIMAPサーバーの設定をする訳 であるので、何かと面倒な作業である。メールアカウントのパスワードはサーバーのログイン認証パスワードとは別に出来るようであるが実際それぞれを別なパ スワードにするのも煩雑で実際覚えるのも苦になるので現実的でない。だからといって同じにした場合は、サーバーのセキュリティ的に問題が出てきてしまうの でどうかと思うし・・・
サーバーの管理者は頭が痛い問題かも知れない。まあ私の場合、個人使用で外部に公開していないのでその辺の問題は「煩雑だ」で終わってしまいますが・・・


2005/01/03

Maildir形式に変えてみる その2
前回の続きである。
このままであると平文のパスワードがネットワークを流れてしまい、セキュリティ的に問題であるので、CRAM-MD5 で認証できるように設定する。

# vi /etc/courier-imap/authdaemonrc
27 行目 位を以下に変更
authmodulelist="authcram authpam"

# vi /etc/courier-imap/imapd

111 行目位 を以下に変更(実際は 1 行です)
IMAP_CAPABILITY="IMAP4rev1 CHILDREN NAMESPACE THREAD=ORDEREDSUBJECT THREAD=REF ERENCES SORT AUTH=CRAM-MD5 AUTH=CRAM-SHA1"
クライアントが接続したときにサーバから返す文字列。
CRAM-MD5をサポートしているので、AUTH=CRAM-MD5を追加している。

Imapの再起動
# /etc/init.d/courier-imap restart

一応確認でコマンドを打つ

$ telnet 192.168.*.*** 143
Trying 192.168.*.*...
Connect.......
Escape character is '^]'.
* OK Courier-IMAP ready. Copyright 1998-2002 Double Precision, Inc. See COPYING
for distribution information.
1 capability
* CAPABILITY IMAP4rev1 CHILDREN NAMESPACE THREAD=ORDEREDSUBJECT THREAD=REFERENCES SORT AUTH=CRAM-MD5 AUTH=CRAM-SHA1
1 OK CAPABILITY completed
1 logout
* BYE Courier-IMAP server shutting down
1 OK LOGOUT completed
Connection closed by foreign host.

以上、AUTH=CRAM-MD5 の部分が大切!!

【CRAM-MD5 認証するためのユーザと、パスワードを設定】
★ユーザ名が shoji のOSの アカウントとして存在する場合
# pw2userdb | grep shoji > /etc/userdb
# chmod 600 userdb
# userdbpw -hmac-md5 | /etc/userdb shojii set imap-hmac-md5pw
Password: imap の認証用のパスワード
Reenter password: imap の認証用のパスワード 繰り返す
# makeuserdb

二人目を追加する場は 追記(>>)とするので一番最初の行が
# pw2userdb | grep shoji >> /etc/userdb
としなければならないのが注意。

★各ユーザで、Maildir 形式のメールを格納するためのディレクトリを作成する
あたりまえの事だがそれぞれのユーザーオーナーとなっているホルダの権限を確認。
上記の例で言えば/mnt/home/shoji ホルダはid: shojiのホームディレクトリになっているか?確認しておこう。

一度再起動させても中にTrash (ゴミ箱), Sent (送信済みフォルダ), Draft (草稿)のホルダがない場合は作成しておこう。PostFixは自動で作成されるはずだが・・・。

$ /usr/sbin/maildirmake Maildir
$ /usr/sbin/maildirmake -f Trash Maildir
$ /usr/sbin/maildirmake -f Sent Maildir
$ /usr/sbin/maildirmake -f Draft Maildir
とここまでやってみるが、結果は?


2005/01/03

Maildir形式に変えてみる その1
mboxメール形式の場合、メールの保存先が /var/spool/mailである為に受信容量が
制限される。
現在、ユーザー毎の HOMEフォルダは/mntに作成しているのでMaildir形式にするとマウントされたフォルダにメールを貯める事が可能であり、メールアカウントを多 く作る場合はqpopperに変えてcourier-imapを導入すると良いだろう・・・と言うことで、せっかく正月なのでIMAPサーバーを導入して みる。

Courier-IMAPをインストール手順

【まずPostFixの設定を変えておく】
main.cf で以下の設定を変更する。

1)コメントアウトをはずす。メールBoxの指定
#home_mailbox = Mailbox
#home_mailbox = Maildir/
     ↓#の削除
#home_mailbox = Mailbox
home_mailbox = Maildir/


2)スプールディレクトリの指定
#mail_spool_directory = /var/mail
mail_spool_directory = /var/spool/mail
     ↓#を追加
#mail_spool_directory = /var/mail
#mail_spool_directory = /var/spool/mail

【Qpoperを止めておく】
ファイル /etc/inetd.conf の以下の行をコメントアウト
pop-3 stream tcp nowait root /usr/sbin/tcpd in.qpopper
     ↓#を追加
#pop-3 stream tcp nowait root /usr/sbin/tcpd in.qpopper

【IMAPサーバーをインストール】
#apt-get update
#apt-get install courier-imap

IMAP自体はこれでインストール終了。


2005/01/01

Maildir形式のメールの読み出し
Postfix メールサーバーの事である方からメールを頂いた。
MiyaNetのコンテンツの中の「玄箱でメールサーバー構築編」で
書いてある通りに実施すると ルートの容量は2G byteで作成されるので
メールの保存先 /var/spool/mailが受信容量が制限されるので何か良い
方法は無いだろうか?と言うことであった。
尚、マウントされている/mntは容量が大きく取ってあるのでここを
利用出来ないだろうかという事であった。
現在MiyaNetで記述されているメールボックス形式はmboxメール形式で
この形式には色々な研究や議論がなされている。
問題点として
1)同じディレクトリに沢山のファイルが含まれているとアクセスに時間がかかる。
2)古いメッセージメールファイルに新しいメッセージを追加するこの形式では
  エラー発生が修復不可能な問題になりかねない。
などがあげられるだろう。
そのような問題の解決のひとつとして、PostFixはMaildir形式もサポートしている。
これは各ユーザー毎に割り当てられた個々のメールボックスディレクトリに
1つ1つのメッセージを別々に保管する形式である。
これで1)、2)の問題は解消される。

ところで今回の問題のメールの保存先の問題であるがmboxメール形式を使用するにはMUAプログラム(qpopperなど)でメールボックスからメールを読み出す必要がある。
保存先を変更するには、後からPostFixの環境ファイル main.cfを編集して保存先を変更しても qpopperはそれを認識せずにいるようである。
/var/spool/mailデレクトリを監視している模様であるので旨くメールを吸い出す事が出来ない。
MiyaNetでの説明ではユーザー毎のHOMEフォルダは/mntに作成しているのでMaildir形式にするとマウントされたフォルダなので容量不足という問題の解決には十分である。
Maildir形式のメールの読み出しにはMaildir形式対応のMUAプログラムが必要になるのだが、これにはCourier-IMAPが非常に安定して良いようだ。
しかしCourier-IMAPの認証はこれで良いとは考えられるものの、使い慣れたAPOPには未対応である点が非常におしい。
UW-IMAPDにパッチを当ててAPOPに対応させたものも
 http://www.gentei.org/~yuuji/software/imapext/
存在するようである。
しかし、ここのページに書いてあるように本家UW-IMAPD自体がAPOP対応に消極的であるため、今後に不安を感じるのも事実である。

以上な理由からmboxメール形式を使用するかMaildir形式をいま思案中である。