10.13. Dovecot

Dovecot は、Linux/UNIX ライクなシステム向け POP/IMAP サーバーです。Maildir 形式および mbox 形式に対応しています。 Turbolinux 11 Server のデフォルト POP/IMAP サーバーは UW IMAP(項10.9 参照)ですので Dovecot を利用いただくには、turbo プラスを利用しアップデートサイトからパッケージをインストールする必要があります。(turbo+ について詳細は 第28章 を参照)

ティップ

Turbolinux 11 Server SP1 以降の「インストール CD」には、Dovecot パッケージが収録されています。

ここでは、POP/IMAPサーバーを Dovecot に変更する際の手順を紹介します。

Dovecot 公式サイト

http://www.dovecot.org/

注意

稼働中のメールサーバーを移行する際には、あらかじめメールデータのバックアップを採取してください。/var/spool/mail/ 以下すべてをコピーするかまたは、ユーザーにPOPで全てのメールをローカルに保存していただいてください。お客様のデータの保証はいたしかねます。また、作業時のメール紛失等はサポート対象外となりますのでご了承ください。

10.13.1. UW IMAP の無効化

UW IMAP の POP/IMAP サーバーを有効にしている場合、無効化する必要があります。

POP3 /IMAP4サービスを無効にするには、それぞれ以下の通りです。

# chkconfig ipop3 off
# chkconfig imap off

SSL に対応した POP3 /IMAP4サービスを有効にしている場合は、同様に以下の通り実行します。

# chkconfig pop3s off
# chkconfig imaps off

/etc/xinetd.d 以下の ipop3、imap 、pop3s、imaps の disable 属性の値が yes(無効)に書き換わります。xinetd を再起動して、これらのサービスの無効化を反映します。

# /etc/init.d/xinetd restart

10.13.2. 設定ファイル(dovecot.conf)

メインの設定ファイルは、/etc/dovecot.conf です。主な指定項目は以下です。必要な項目を編集してください。デフォルトの設定ファイルにはコメント行として各項目の解説が記載されています。また、http://wiki.dovecot.org/QuickConfiguration/ などのオンラインマニュアルも参照してください。

プロトコルの指定

使用するプロトコルを次のように指定します。

protocols = imap imaps pop3 pop3s
SSL の指定

SSL の有効(yes)/無効(no)の指定です。デフォルトは有効(yes)です。

ssl = yes

SSL サーバー証明書と秘密鍵のパス指定です。

ssl_cert_file = /etc/pki/dovecot/certs/dovecot.pem
ssl_key_file = /etc/pki/dovecot/private/dovecot.pem
Mail Location

メールロケーションの指定です。Maildir 形式の場合、次の行のコメント記号を削除し例のように指定します。

 mail_location = maildir:~/Maildir

mbox 形式の場合は、次の例のように指定します。

mail_location = mbox:~/mail:INBOX=/var/mail/%u
認証メカニズムとパスワードファイルの指定

APOP や CRAM-MD5 など使用する認証メカニズムと、認証に使用するパスワードファイルのパスを指定します。

mechanisms には、使用するメカニズムを指定します。passdb passwd-file には、以下の例のようにパスワードファイルのパスを指定します。パスワードファイルは別途用意する必要があります。

auth default {
  mechanisms = plain login cram-md5 apop
  
  passdb passwd-file {
    args = /etc/dovecot.cram-md5
  }

}

ティップ

パスワードファイルを以下のように作成します。

# touch /etc/dovecot.cram-md5
# chmod 600 /etc/dovecot.cram-md5

パスワードファイルにはユーザー名とパスワードのリストを記述していきます。パスワードは dovecotpw で 次のように生成します。以下は スキームに CRAM-MD5 を指定しています。指定可能なスキームのリストは dovecotpw -l で確認します。

# dovecotpw -s CRAM-MD5
Enter new password:  <- パスワードを入力
Retype new password: <- パスワードを入力
{CRAM-MD5}9186d855e11eba527a7a52ca82b313e180d62234f0acc9051b527243d41e2740

ユーザー名と表示されたパスワードのリストを ":(コロン)" で区切りパスワードファイルに記述します。

taro:{CRAM-MD5}9186d855e11eba527a7a52ca82b313e180d62234f0acc9051b527243d41e2740
hanako:{CRAM-MD5}73e4e80977f107d2c1e4363d12ac2647389efb2c6179e3b5a50dc607992e022b
PAM 認証に関する指定

PAM 認証はデフォルトで有効に設定されています。必要に応じてコメント行を編集し設定してください。

passdb pam {

    # Some examples:
    #   args = session=yes %Ls
    #   args = cache_key=%u dovecot
    #args = dovecot
  }

10.13.3. Dovecot の起動と停止

Turbolinux 11 Server で Dovecot の起動や停止を行うには、/etc/init.d/dovecot スクリプトに以下のオプションを指定して実行します。

表 10-4. /etc/init.d/postfix

オプション操作
startDovecot のデーモンを起動します。
stopDovecot のデーモンを停止します。
restartDovecot のデーモンを再起動します。stop のあとに、start を実行します。
statusDovecot の起動状況を確認します。

Dovecot を起動するには、以下のコマンドを実行します。

# /etc/init.d/dovecot start

Dovecot を停止するには、以下のコマンドを実行します。

# /etc/init.d/dovecot stop

Turbolinux 11 Server の起動時に Dovecot を自動的に開始するには、以下のように chkconfig コマンドを実行しておきます。

# chkconfig dovecot on

Dovecot の設定ファイルを変更した場合は、変更を反映するために Dovecot を再起動します。

# /etc/init.d/dovecot restart

10.13.4. Maildir 形式にするには(Postfix側の変更)

メールデータの形式を Maildir とするには、Postfix の場合、以下の設定が必要になります。/etc/postfix/main.cf の以下部分のコメント記号を削除します。

home_mailbox = Maildir/

変更を反映するために Postfix を再起動します。

# /etc/init.d/postfix restart

10.13.5. 移行コマンド紹介

Dovecot にはメールデータを移行するコマンドが付属しています。

mbox2maildir

mbox 形式のメールデータを Maildir 形式に移行します。例は、taro ユーザーの /var/spool/mail/taro ファイルを ~/Maildir ディレクトリ下に移行しています。

$ mbox2maildir /var/spool/mail/taro  ~/Maildir
/usr/bin/formail -s python /usr/bin/addtomaildir /home/taro/Maildir
cur/1261345253.25443624823.mail.example.com
cur/1261345253.29969224824.mail.example.com
new/1261345253.34049824825.mail.example.com
new/1261345253.38434324826.mail.example.com
・・・
maildir2mbox

Maildir 形式のメールデータを mbox 形式に移行します。例は、taro ユーザーの ~/Maildir を /var/spool/mail/taro ファイルに移行しています。

$ maildir2mbox ~/Maildir /var/spool/mail/taro