ラベル dovecot の投稿を表示しています。 すべての投稿を表示
ラベル dovecot の投稿を表示しています。 すべての投稿を表示

2020年4月9日木曜日

dovecot-sysreportコマンドが追加されました

先日(2020/03/06)リリースされたDovecotのver2.3.10に新しいコマンドdovecot-sysreportが追加実装されました。

リリースノートには下記のように説明があります。
+ Add tool for generating sysreport called dovecot-sysreport.
  This generates a bundle of information usually needed for support
  requests.

サポートに問い合わせをする際に必要な設定情報やシステムの稼働情報などを収集するようです。

何もオプションをつけずに実行すると、カレントディレクトリにtar.gzで情報が固められて採取されます。
こんな感じです。

# dovecot-sysreport
Gathering configurations ...
Gathering system informations ...
Creating archive ...
All done! Please report file dovecot-sysreport-example.com-1584975066.tar.gz
Removing temp files at /tmp/tmp.6SmnOgn2To ...
#
# tar ztvf dovecot-sysreport-example.com-1584975066.tar.gz
drwxr-xr-x root/root         0 2020-03-23 23:51 conf/
-rw-r--r-- root/root       637 2020-03-23 23:51 conf/dovecot.conf
-rw-r--r-- root/root         0 2020-03-23 23:51 log_errors
-rw-r--r-- root/root       885 2020-03-23 23:51 process_status
-rw-r--r-- root/root      1057 2020-03-23 23:51 ps_output
-rw-r--r-- root/root      9883 2020-03-23 23:51 service_status
-rw-r--r-- root/root       183 2020-03-23 23:51 stats_dump
-rw-r--r-- root/root       207 2020-03-23 23:51 uptime_output
#
※自分の鯖は、障害もなく(また負荷もなく)稼働しているので、これは!?といった情報は採取できませんでした。


コマンドそのものはシェルスクリプトで書かれているので、dovecotのトラブルシューティングをする時にサポート側はどんな情報が欲しいのか、dovecotの運用者は一度中身を確認しておくと良いかもしれませんね。


2018年1月8日月曜日

Dovecot community repositoriesが公開されました

2017年12月28日に、Dovecot純正(?)のリポジトリ(https://repo.dovecot.org/)が利用できるようになったとアナウンスされました。

Debian/Ubuntu/CentOS向けに最新のパッケージが提供されるようになったので、ここではCentOS6.9の環境でインストールを実施してみます。

[root@cent6 ~]# cat << END > /etc/yum.repos.d/dovecot.repo
> [dovecot-2.3-latest]
> name=Dovecot 2.3 CentOS \$releasever - \$basearch
> baseurl=http://repo.dovecot.org/ce-2.3-latest/centos/\$releasever/RPMS/\$basearch
> gpgkey=https://repo.dovecot.org/DOVECOT-REPO-GPG
> gpgcheck=1
> enabled=1
> END
[root@cent6 ~]#
[root@cent6 ~]# yum install dovecot
Loaded plugins: fastestmirror
Setting up Install Process
Loading mirror speeds from cached hostfile
 * base: ftp.iij.ad.jp
 * extras: ftp.iij.ad.jp
 * updates: ftp.iij.ad.jp
dovecot-2.3-latest                                                 | 2.9 kB     00:00
Resolving Dependencies
--> Running transaction check
---> Package dovecot.x86_64 2:2.3.0-4 will be installed
--> Finished Dependency Resolution
Dependencies Resolved
=========================================================================
 Package         Arch       Version       Repository                Size
=========================================================================
Installing:
 dovecot        x86_64      2:2.3.0-4     dovecot-2.3-latest        4.0 M
Transaction Summary
=========================================================================
Install       1 Package(s)
Total download size: 4.0 M
Installed size: 13 M
Is this ok [y/N]: y
Downloading Packages:
dovecot-2.3.0-4.x86_64.rpm                                          | 4.0 MB     00:18
warning: rpmts_HdrFromFdno: Header V4 RSA/SHA1 Signature, key ID ed409da1: NOKEY
Retrieving key from https://repo.dovecot.org/DOVECOT-REPO-GPG
Importing GPG key 0xED409DA1:
 Userid: "Dovecot Community Edition <dovecot-ce@dovecot.org>"
 From  : https://repo.dovecot.org/DOVECOT-REPO-GPG
Is this ok [y/N]: y
Running rpm_check_debug
Running Transaction Test
Transaction Test Succeeded
Running Transaction
Warning: RPMDB altered outside of yum.
  Installing : 2:dovecot-2.3.0-4.x86_64                                  1/1
  Verifying  : 2:dovecot-2.3.0-4.x86_64                                  1/1
Installed:
  dovecot.x86_64 2:2.3.0-4
Complete!
[root@cent6 ~]#

 ※OS標準のdovecot-2.0.9がインストールされている場合でも、yum updateすれば問題なく最新のバージョンにアップデートされます

2016年5月4日水曜日

CentOS6.x 最新のpostfixとdovecotをRPMで導入する

2018/01/08追記: dovecot.orgにてタイムリーにdovecotの最新パッケージが提供されるようになりました。
         「Dovecot community repositoriesが公開されました」を参照してください


以前に、CentOS6.4で最新DovecotをRPMで導入するという記事を書いていますが、2016年5月現在では新しいバージョンへの追随はしていないようです。

自分の場合、最近、より最新バージョンのRPMを準備する別手段としてGhettoForgeリポジトリを使う事がわりと多いので、今回はそれについてまとめてみます。
※2016年5月現在、postfixはバージョン3.1.0、dovecotはバージョン2.2.23が導入可能です



リポジトリの導入


以下のコマンドを実行します。
結果、複数のリポジトリ[gf/gf-plus/pf-testing]が利用可能になります。
※詳細はUsageのページで確認をしてください
rpm -ivh http://mirror.symnds.com/distributions/gf/el/6/gf/x86_64/gf-release-6-10.gf.el6.noarch.rpm


postfix3.1.0のインストール


postfix3.1.0はpf-plusリポジトリに存在するので、以下のようにインストールします。
※ OSインストール時にデフォルトでバージョン2.6.xがインストールされているはずなので、そのままだとconflictsのエラーが出てしまいます。その場合は一旦バージョン2.6.xをアンインストールする必要があります。
(# rpm -e --nodeps postfix)   <-★conflictsのエラーが出る場合実施
# yum --enablerepo=gf-plus install postfix3


dovecot2.2.23のインストール


dovecot2.2.23はgf-testingリポジトリに存在するので、以下のようにインストールします。
※将来的には、gf-testingリポジトリからgf-plusリポジトリに移行されると思うので、その際は"--enablerepo=gf-plus"と指定を変更してください
# yum --enablerepo=gf-testing install dovecot22



その他

1. GhettoForgeリポジトリを使いやすくする為にエイリアスを登録する

パッケージのインストールやアップデートの度に”--enablerepo=xxxx”と入力するのは面倒なので、自分の場合は、~/.bashrcに以下の内容でエイリアスとして登録しています。
これで、myum installmyum updateのように入力した時だけ、GhettoForgeリポジトリを利用するようにしています。

alias myum='yum --enablerepo=gf-plus,pf-testing'


2. GhettoForgeリポジトリからpostfixとdovecot以外のパッケージが導入されないようにする

これはGhettoForgeのサイトにも書いてある内容ですが、GhettoForgeリポジトリにはpostfixやdovecot以外にも多数のパッケージが用意されています。postfixとdovecot以外の他のパッケージが意図せず導入されないように、利用するパッケージを限定しておきます。


具体的には、/etc/yum.repos.d/gf.repoファイル内の[gf-plus]リポジトリと[gf-testing]リポジトリのそれぞれにincludepkgs行を追記します。

[gf-plus]
name=Ghettoforge packages that will overwrite core distro packages.
mirrorlist=http://mirrorlist.ghettoforge.org/el/6/plus/$basearch/mirrorlist
# Please read http://ghettoforge.org/index.php/Usage *before* enabling this repository!
enabled=0
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-gf.el6
failovermethod=priority
includepkgs=postfix* dovecot*


[gf-testing]
name=GhettoForge packages that are currently untested.
mirrorlist=http://mirrorlist.ghettoforge.org/el/6/testing/$basearch/mirrorlist
# This repo may contain packages that overwrite core distro packages.  Please
# read http://ghettoforge.org/index.php/Usage before enabling this repository.
enabled=0
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-gf.el6
failovermethod=priority
includepkgs=postfix* dovecot*

2016年1月14日木曜日

Dovecot Enterpriseについて(2016年1月現在)

2018/01/08追記:いつのまにかリポジトリにアクセスできなくなったので、問い合わせをしました。
         以下のような返信をもらいました。
         要するに一般ユーザーには、同エディションは提供されないようです。
We have done some maintenance for expired accountsbecause we no longer have webshop and we don't provide dovecot-eerepository access without valid support contract with us.

Next year we disable all accounts without active support contract withus but start providing Dovecot Communition Edition packages for free. Wesend information about this change later.


2013年7月14日に「Dovecot Enterprise Editionについて」という記事を書きましたが、

今回はタイトルの通りDevecot Enterpriseのその後についてです。



・今はそもそも「Dovecot Pro」と呼ぶようです

・リポジトリにアクセスするためのユーザ名とパスワードを入手する方法が「Contact US」だけになったようです
 → 過去にWebから購入したライセンスはそのまま継続して利用できるようです


・Dovecot Enterprise Editionを入手するためのリポジトリのURLsが、変更されています
 → http://software.open-xchange.com/products/dovecot/doc/Dovecot-EE-repository-and-object-storage-installation-manual_v1.9.pdf




2013年8月25日日曜日

dovecot dbox形式 ”Alternate Storage”について

前回の続きです。
Dovecotのdbox形式のメールBOXフォーマットには、Alternate Storage機能があります。


具体的には、通常のメールBOXを配置しているディスク(またはパーティションやディレクトリ)とは別に、もう一つ代替となるディスク(またはパーティションやディレクトリ)を用意しておけば、その領域もメールBOXとして利用できるようになる機能です。
この機能を使えば、メールBOXのディスクが圧迫してきたので、古いメールを後から追加したディスクに退避させようといった事も可能になります。

この機能は、mail_locationに以下のように(青字の部分を追加で)指定するだけで利用できます。
※評価は、CentOS6.4(x86_64) + dovecot2.2.5 + システムアカウントで、/dev/sdb1を/archiveとしてマウントした状態で行っています

mail_location = sdbox:~/dbox:ALT=/archive/%n


以下、実際の操作例です。
 → 既読メールの移動を実施してみます

サンプルとしてuser01ユーザのメールBOXにメールが10通あり、全て既読の状態です。
# find /home/user01/dbox/
/home/user01/dbox/
/home/user01/dbox/dovecot-uidvalidity
/home/user01/dbox/mailboxes
/home/user01/dbox/mailboxes/INBOX
/home/user01/dbox/mailboxes/INBOX/dbox-Mails
/home/user01/dbox/mailboxes/INBOX/dbox-Mails/dovecot.index.log
/home/user01/dbox/mailboxes/INBOX/dbox-Mails/u.10
/home/user01/dbox/mailboxes/INBOX/dbox-Mails/dovecot.index.cache
/home/user01/dbox/mailboxes/INBOX/dbox-Mails/u.7
/home/user01/dbox/mailboxes/INBOX/dbox-Mails/u.2
/home/user01/dbox/mailboxes/INBOX/dbox-Mails/u.6
/home/user01/dbox/mailboxes/INBOX/dbox-Mails/u.8
/home/user01/dbox/mailboxes/INBOX/dbox-Mails/u.4
/home/user01/dbox/mailboxes/INBOX/dbox-Mails/u.5
/home/user01/dbox/mailboxes/INBOX/dbox-Mails/u.1
/home/user01/dbox/mailboxes/INBOX/dbox-Mails/u.3
/home/user01/dbox/mailboxes/INBOX/dbox-Mails/u.9
/home/user01/dbox/dovecot-uidvalidity.52127e52
/home/user01/dbox/dbox-alt-root
#

この状態から既読メールをAlternate Storageに移動させるには以下のように実行します。
# doveadm altmove -u user01 seen

結果、user01ユーザのメールBOXは以下のような状態になります。
 →既読メールの10通は/archive/user01ディレクトリ以下に移動しています
# find /home/user01/dbox/ /archive/user01
/home/user01/dbox/
/home/user01/dbox/dovecot-uidvalidity
/home/user01/dbox/mailboxes
/home/user01/dbox/mailboxes/INBOX
/home/user01/dbox/mailboxes/INBOX/dbox-Mails
/home/user01/dbox/mailboxes/INBOX/dbox-Mails/dovecot.index.log
/home/user01/dbox/mailboxes/INBOX/dbox-Mails/dovecot.index.cache
/home/user01/dbox/dovecot-uidvalidity.52127e52
/home/user01/dbox/dbox-alt-root
/archive/user01
/archive/user01/mailboxes
/archive/user01/mailboxes/INBOX
/archive/user01/mailboxes/INBOX/dbox-Mails
/archive/user01/mailboxes/INBOX/dbox-Mails/u.8
/archive/user01/mailboxes/INBOX/dbox-Mails/u.1
/archive/user01/mailboxes/INBOX/dbox-Mails/u.9
/archive/user01/mailboxes/INBOX/dbox-Mails/u.6
/archive/user01/mailboxes/INBOX/dbox-Mails/u.4
/archive/user01/mailboxes/INBOX/dbox-Mails/u.10
/archive/user01/mailboxes/INBOX/dbox-Mails/u.3
/archive/user01/mailboxes/INBOX/dbox-Mails/u.2
/archive/user01/mailboxes/INBOX/dbox-Mails/u.7
/archive/user01/mailboxes/INBOX/dbox-Mails/u.5

#

※この機能は、dbox-alt-rootファイルが、シンボリックリンクになることで実現しています。
# ls -l /home/user01/dbox/dbox-alt-root
lrwxrwxrwx 1 user01 user01 15 Aug 25 23:02 /home/user01/dbox/dbox-alt-root -> /archive/user01/
#

なお、移動したAtteanate Storageのメールを元に戻すには以下のように実行します。
# doveadm altmove -r -u user01 all


以上、今回は手動で既読メールを移動させる操作例をあげましたが、バッチ処理でより複雑な条件での操作も可能なので、詳しくは下記を参照してください。

http://wiki2.dovecot.org/Tools/Doveadm/Altmove
http://wiki2.dovecot.org/Tools/Doveadm/SearchQuery

2013年8月20日火曜日

dovecot dbox形式

Dovecotには、独自のメールBOXフォーマットが存在します。
※Maildir形式のように1通のメッセージを1つのファイルとして保存するsdbox形式、mbox形式のように複数のメッセージを1つのファイルとして保存するmdbox形式(ただし、ある程度のサイズで複数のファイルに分割されます)の2種類です。


設定は特に難しいところはなく、sdbox形式の場合を例にするとmail_locationに以下のよう指定するだけで利用できます。
※評価はCentOS6.4(x86_64) + dovecot2.2.4 + システムアカウントで行っています

mail_location = sdbox:~/dbox


実際にメールを格納するとMaildir形式とは異なりメールそのものは、u.1やu.2のような名前で保存され、メールが未読でも既読でもSeenフラグなどが付くことがありません。

# find ~user01/dbox/
/home/user01/dbox/
/home/user01/dbox/mailboxes
/home/user01/dbox/mailboxes/INBOX
/home/user01/dbox/mailboxes/INBOX/dbox-Mails
/home/user01/dbox/mailboxes/INBOX/dbox-Mails/u.3
/home/user01/dbox/mailboxes/INBOX/dbox-Mails/u.1
/home/user01/dbox/mailboxes/INBOX/dbox-Mails/dovecot.index.log
/home/user01/dbox/mailboxes/INBOX/dbox-Mails/dovecot.index.cache
/home/user01/dbox/mailboxes/INBOX/dbox-Mails/u.2
/home/user01/dbox/dovecot-uidvalidity
/home/user01/dbox/dovecot-uidvalidity.51ac2f97
#

1通のメールは以下のようになります。
Maildir形式と比較するとメッセージの前後に追加の情報が付くようです。

# cat /home/user01/dbox/mailboxes/INBOX/dbox-Mails/u.5
2 M1e C51ac33f6
N          0000000000000277

Return-Path: <user101@mail.example.com>
X-Original-To: user01@mail3.example.com
Delivered-To: user01@mail3.example.com
Received: from mail.example.com (R-538.mshome.net [192.168.137.1])
        by mail3.example.com (Postfix) with SMTP id 8AD6E3FF6B
        for <user01@mail3.example.com>; Mon,  3 Jun 2013 15:13:08 +0900 (JST)
From: user101 <user101@mail.example.com>
To: user01@mail3.example.com
Subject: test
Date: Mon, 03 Jun 2013 15:13:08 +0900
MIME-Version: 1.0
Content-Type: text/plain; charset=us-ascii
Content-Transfer-Encoding: 7bit
Message-Id: <E1CE60216AB962user101@mail.example.com>
test

R51ac33f6
V288
G87ca8705f633ac51190a000048c9b678

#


今回の最終的なdovecotの設定は以下になります。
# doveconf -n
# 2.2.4: /etc/dovecot/dovecot.conf
# OS: Linux 2.6.32-358.14.1.el6.x86_64 x86_64 CentOS release 6.4 (Final)
disable_plaintext_auth = no
listen = *
mail_debug = yes
mail_location = sdbox:~/dbox
passdb {
  driver = pam
}
protocols = pop3
ssl = no
userdb {
  driver = passwd
}
#


またMTAにpostfixを利用する場合は、そのままだとメールBOXに配送ができないので、DovecotのLDAかLMTPなどを利用して配送を実施する必要があります。
※LDAとLMTPについては、今後書きたいと思います

一例を挙げておきます。
システムアカウントを利用してDovecotのLDAで配送をするなら、以下のように設定します。

mailbox_command = /usr/libexec/dovecot/dovecot-lda -f "$SENDER" -a "$RECIPIENT"


2013年8月5日月曜日

dovecot passwd-fileについて

今回は、Dovecotの認証データベースの1つであるpasswd-fileについてです。


特徴は、以下のようになります。

  • /etc/passwdと(ほぼ)同じ書式で記述ができる(⇒ extra_fieldが追加できる
  • 認証で必要な箇所だけ記述すれば利用できる(下記の設定例を参照ください)
  • システムアカウントにもバーチャルアカウントにも利用できる


以下、設定例です。
※評価はCentOS6.4(x86_64) + dovecot 2.2.4で行っています。


システムアカウントで利用する場合

※SSHのパスワードなどと、メールのパスワードを別にしたい場合に有用です

1./etc/dovecot/usersを以下のように作成します。
user01:{PLAIN}password
user02:{PLAIN}password

2.passwd-fileを利用する為の設定

/etc/dovecot/conf.d/10-auth.conf:
※以下の行を有効にします
!include auth-system.conf.ext
!include auth-passwdfile.conf.ext

/etc/dovecot/conf.d/auth-system.conf.ext:
※以下の行だけ有効にします
userdb {
  driver = passwd
}

/etc/dovecot/conf.d/auth-passwdfile.conf.ext:
※以下の行だけ有効にします
passdb {
  driver = passwd-file
  args = scheme=CRYPT username_format=%u /etc/dovecot/users
}

最終的な全体設定は以下のようになります。
# doveconf -n
# 2.2.4: /etc/dovecot/dovecot.conf
# OS: Linux 2.6.32-358.14.1.el6.x86_64 x86_64 CentOS release 6.4 (Final)
disable_plaintext_auth = no
listen = *
mail_debug = yes
mail_location = maildir:~/Maildir
passdb {
  args = scheme=CRYPT username_format=%u /etc/dovecot/users
  driver = passwd-file
}
protocols = pop3
ssl = no
userdb {
  driver = passwd
}


バーチャルアカウントでの利用する場合

下記ではメールBOXなどの情報をstaticに持たせています


1./etc/dovecot/usersを以下のように作成します。
user01@example.com:{PLAIN}password
user02@example.jp:{PLAIN}password

2. passwd-fileを利用する為の設定

/etc/dovecot/conf.d/10-auth.conf:
※以下の行を有効にします
!include auth-passwdfile.conf.ext
!include auth-static.conf.ext

/etc/dovecot/conf.d/auth-passwdfile.conf.ext:
※以下の行だけ有効にします
passdb {
  driver = passwd-file
  args = scheme=CRYPT username_format=%u /etc/dovecot/users
}

/etc/dovecot/conf.d/auth-static.conf.ext:
※以下の行だけ有効にします
userdb {
  driver = static
  args = uid=vmail gid=vmail home=/home/vmail/%d/%u
}
※vmailユーザはあらかじめ以下のように作成しておく必要があります
# groupadd -g 5000 vmail
# useradd -g 5000 -u 5000 -s /sbin/nologin vmail

最終的な全体設定は以下のようになります。
# doveconf -n
# 2.2.4: /etc/dovecot/dovecot.conf
# OS: Linux 2.6.32-358.14.1.el6.x86_64 x86_64 CentOS release 6.4 (Final)
disable_plaintext_auth = no
listen = *
mail_debug = yes
mail_location = maildir:~/Maildir
passdb {
  args = scheme=CRYPT username_format=%u /etc/dovecot/users
  driver = passwd-file
}
protocols = pop3
ssl = no
userdb {
  args = uid=vmail gid=vmail home=/home/vmail/%d/%u
  driver = static
}


以上で、/etc/dovecot/usersに記述した2ユーザーでアクセスするとメールBOXは
以下のようになります。

# pwd
/home/vmail
# ls -l
total 8
drwx------ 3 vmail vmail 4096 Aug  5 00:06 example.com/
drwx------ 3 vmail vmail 4096 Aug  5 00:05 example.jp/
# find .
.
./example.jp
./example.jp/user02@example.jp
./example.jp/user02@example.jp/Maildir
./example.jp/user02@example.jp/Maildir/dovecot-uidvalidity.51fe6dce
./example.jp/user02@example.jp/Maildir/maildirfolder
./example.jp/user02@example.jp/Maildir/dovecot.index.log
./example.jp/user02@example.jp/Maildir/dovecot-uidlist
./example.jp/user02@example.jp/Maildir/dovecot-uidvalidity
./example.jp/user02@example.jp/Maildir/tmp
./example.jp/user02@example.jp/Maildir/cur
./example.jp/user02@example.jp/Maildir/new
./.bash_logout
./example.com
./example.com/user01@example.com
./example.com/user01@example.com/Maildir
./example.com/user01@example.com/Maildir/maildirfolder
./example.com/user01@example.com/Maildir/dovecot.index.log
./example.com/user01@example.com/Maildir/dovecot-uidlist
./example.com/user01@example.com/Maildir/dovecot-uidvalidity
./example.com/user01@example.com/Maildir/tmp
./example.com/user01@example.com/Maildir/cur
./example.com/user01@example.com/Maildir/new
./example.com/user01@example.com/Maildir/dovecot-uidvalidity.51fe6de3
./.bash_profile
./.bashrc
#


2013年7月14日日曜日

Dovecot Enterprise Editionについて

2018/01/08追記:いつのまにかリポジトリにアクセスできなくなったので、問い合わせをしました。
         以下のような返信をもらいました。
         要するに一般ユーザーには、同エディションは提供されないようです。
We have done some maintenance for expired accountsbecause we no longer have webshop and we don't provide dovecot-eerepository access without valid support contract with us.

Next year we disable all accounts without active support contract withus but start providing Dovecot Communition Edition packages for free. Wesend information about this change later.


2016/01/14追記: Dovecot Enterpriseについて(2016年1月現在)という記事を追加しました。

2014/07/01追記: ライセンス更新のお知らせがこないのでサイトを覗きにいったら、今現在は$0で提供されているようです。



今回は商用版dovecotについてです。


結論から先に書いてしまうと、(あたりまえですが)サポートを必要としない限り
購入するメリットは一切ありません。

なのに何で購入したかというと、商用版にはAmazon S3やDropboxをメールボックスのストレージとして
利用するための”Dovecot Object Storage Plugin”なるものがありドキュメントだけでも
読んでみたいと思ったからです。
#実際には、1ヵ月のデモライセンスと簡素なドキュメントがおまけでついてきました


商用版dovecotの導入

以下のサイトからまずは、商用版dovecotのリポジトリへのアクセスキーを購入します。

http://shop.dovecot.fi/

するとユーザ名とパスワードがメールで送られてくるので、/etc/yum.repos.d/dovecot.repoとして保存します。
[dovecot]
name=RHEL $releasever - $basearch - Dovecot Solutions
baseurl=https://username:password@yum.dovecot.fi/default/stable-2.2/el$releasever-$basearch
gpgkey=https://yum.dovecot.fi/RPM-GPG-KEY.dovecot
gpgcheck=1

次に、以下のどちらかを選択して導入します。

・ 新規にdovecotを導入する場合
   
 # yum install dovecot-ee

・ dovecotが既に導入されていて、アップデートする場合

 # yum update 


後はいつもどおりにdovecotを設定すれば普通に使えます。


Object Storage Pluginについて

試しにDropboxにメールを保存してみましたので、手順を書いておきます。
ただし、ドキュメントがあまりにも貧弱で、自分もひとまず動作が確認できただけという
状態です。なので、この内容を試す場合はあくまでも自己責任でお願いします。


a) Object Storage Pluginに必要なパッケージの導入

# yum install dovecot-ee-obox dovecot-ee-license

b) デモライセンスの登録

ライセンスがメールで送られてくるので、/var/lib/dovecot/dovecot-license.txtと
して保存します。

c) dropboxのマイアプリへdovecotを登録

https://dropbox.dovecot.fi/

上記URLにアクセスし、dovecotがdropboxにアクセスできるように許可をします。
登録が完了すると設定ファイルとして追加すべき内容が表示されます。



d) /etc/dovecot/conf.d/11-object-storage.confの作成

 c)の手順で表示された内容をもとに作成します。

mail_prefetch_count = 10
mailbox_list_index = yes
mail_uid = vmail
mail_location = obox:%d/%u:INDEX=~/:CONTROL=~/
mail_plugins = $mail_plugins obox
metacache_upload_interval = 5 mins
metacache_close_delay = 0 min
ssl_client_ca_file = /etc/pki/tls/cert.pem
plugin {
  obox_fs = fscache 100G:/var/lib/dovecot/cache:dropbox:https://XXXXXX:XXXXXXX@dropbox/
}

pluginの設定としては以上で、後は、メールの配送用にLMTPなりをセットアップすれば完了です。
Dropboxには以下のように保存されます。









使ってみた感想としては。。

・LTMPでメールを配送するのも、POPやIMAPでメールを取得するにも非常に時間がかかるのが気になります。
 → 単に設定が悪いだけかもしれませんが、S3QLと比較すると非常に遅いです

・突然サーバが死んでもメール自体はなくならないので安心です。




2013年6月11日火曜日

CentOS6.4で最新DovecotをRPMで導入する

2018/01/08追記: 元記事のサイトは全く更新されておらず、最新のdovecotを導入する事はできないので、「Dovecot community repositoriesが公開されました」を参照してください


2016/05/04追記: 「CentOS6.x 最新のpostfixとdovecotをRPMで導入する」も参照ください


最近知ったのですが、http://repos.fedorapeople.org/なるサイトがあって、
ここにdovecotやpostfixの最新版のRPMが転がってます。

RPMそのものを落として利用しても良いでしょうし、リポジトリ用ファイルも
用意されているので、そちらを利用しても良いでしょう。

例えば、CentOS6.4の環境で、リポジトリ用ファイルを用意してインストールするには以下のようにします。
 ※既にdovocotがインストールされている環境では、yum updateするだけで最新になります
 ※別途、依存関係でepelリポジトリも必要になるので先にセットアップしておいてください
    # rpm -ivh http://ftp.riken.jp/Linux/fedora/epel/6/x86_64/epel-release-6-8.noarch.rpm


# cd /etc/yum.repos.d/
# wget http://repos.fedorapeople.org/repos/mstevens/dovecot/epel-dovecot.repo
# yum install dovecot

2012年11月4日日曜日

リモートのDovecotを利用したSMTP認証

今回は、SMTPサーバ以外のホストで既にPOP3 or IMAPサーバとしてのdovecotが稼動していて、それをSMTP認証で利用する場合の設定です。


まずは、リモートで稼動するdovecot側の設定変更をする。
※SMTPサーバが認証で使う任意のTCPポートをオープンさせる(下記の例では、12345/TCP)



/etc/dovecot/conf.d/10-master.conf:

service auth {
 unix_listener auth-userdb {
 }

 inet_listener {
   port = 12345
 }
}





次に、SMTPサーバ(postfix)側の設定を変更する。
※main.cfに以下の記述をする
 →リモートでdovecotが稼動しているサーバのIPアドレスとポートを指定



smtpd_sasl_type = dovecot
smtpd_sasl_path = inet:192.168.0.117:12345

2012年10月15日月曜日

SMTP認証専用のdovecot

最近は、PostfixでSMTP認証をする際にdovecotを利用するケースが増えてきたのだが、SMTP認証のためだけにPOP/IMAPサーバを起動するのが嫌な場合(というよりPOP/IMAPのサービスが不要であればこちらを推奨する)は、dovecotを認証専用のサービスとして起動すればいい。

具体的には、まず /etc/dovecot/dovecot.conf でprotocolsを以下のように設定する。
 
        protocols = none

その上で、dovecotのドキュメントにあるように、/etc/dovecot/conf.d/10-master.confに
以下のように設定する。


   service auth {
      unix_listener /var/spool/postfix/private/auth {
        group = postfix
        mode = 0666
       user = postfix
      }
    }

あとは、dovecotが認証に利用する情報に合わせて/etc/dovecot/conf.d/10-auth.confあたりを編集してdovecotを起動すればいい。


起動後、netstatで確認すると以下のようになる。

[root@fc17 ~]# netstat -ant | egrep '110|143|993|995'
[root@fc17 ~]#
※POP/IMAP関連のポートはオープンしていない


なお、Postifx側の設定は(詳細はドキュメントで要確認)、main.cfに以下の記述をすれば良い。

smtpd_sasl_type = dovecot
smtpd_sasl_path = private/auth