目次

RoundCube

概要

インストール

パッケージの取得

パッケージはダウンロードサイトから取得する。 complete版にすればライブラリ等も全て入った形になるようだが、とりあえず、dependent版を選択しておいた。

ファイルの配置

ファイルを適切な場所に展開する。 多くの解説では、htdocs のルートの下に、roundcubemailなどというディレクトリを作ってそこに展開するようにとあるが、ここでは、/var/www/roundcube の下に、バージョン毎に展開することにする。

/var/www/roundcube/roundcubemail-1.1.3

というディレクトリが、roundcube のルートになる。

Apache2 の conf.d に roundcube.conf というファイルを以下の内容で作成する。

Alias /webmail /var/www/roundcube/roundcubemail-1.1.3
<Location /webmail>
  SSLRequireSSL
</Location>

Apache2はリロードしておく。

データベースの初期設定

データベースは mysql を使い、ユーザroundcube にデータベース roundcube を利用させることにする。

# mysql -p
Enter password:
Welcome to the MySQL monitor.  Commands end with ; or \g.
Your MySQL connection id is 11726
Server version: 5.1.73-log VineLinux MySQL RPM

Copyright (c) 2000, 2013, Oracle and/or its affiliates. All rights reserved.

Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners.

Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.

mysql> create database roundcube;
Query OK, 1 row affected (0.06 sec)

mysql> grant all privileges on roundcube.* to roundcube@'localhost' identified by 'password';
Query OK, 0 rows affected (0.32 sec)

mysql> flush privileges;
Query OK, 0 rows affected (0.30 sec)

mysql> exit
Bye

#

次にデータベースの初期化を行う。

# mysql -u roundcube -p roundcube < /var/www/roundcube/roundcube-1.1.3/SQL/mysql.initial.sql
Enter password:

以上で、データベースの作業は終了である。

config の修正

config ディレクトリの下に、config.inc.php.sample というファイルがあるので、これを config.inc.php という名前でコピーする。

db_dsnwを作成したデータベースおよびパスワードにあわせて修正する。

$config['db_dsnw'] = 'mysql://roundcube:password@localhost/roundcube';

次に、ファイルの末尾に、installer 用の設定を追記する。

$config['enable_installer'] = true;

以下はインストーラに任せる。

インストーラの起動

ここに至ってようやく、ブラウザからの作業になる。 1)

http://webserver/roundcube/installer/

にアクセスすると、モジュールの依存性チェックに入る。 ここで、NOT OKと表示されるものがあれば、追加しておかなければならない。 complete版ではないはずである。

不足モジュールの導入

多くの場合、不足モジュールはOSのパッケージの形で提供されていると思われるので、パッケージを導入していけばいい。

今回、以下のライブラリ(pear)に不足が指摘された。

Auth_SASL および Net_SMTPはパッケージがあったので、それを導入した。

# apt-get install php-pear-Auth-SASL php-pear-SMTP

また、Net_IDNA2およびMail_mimeについてはなかったため、pear コマンドで直接導入した。

# pear install Mail_mime
downloading Mail_Mime-1.10.0.tgz ...
Starting to download Mail_Mime-1.10.0.tgz (35,375 bytes)
.........done: 35,375 bytes
install ok: channel://pear.php.net/Mail_Mime-1.10.0

Net_IDNA2 は、stable版ではないので、インストールに失敗するが、指示されたチャネルを与えればインストールされる。

# pear install Net_IDNA2
Failed to download pear/Net_IDNA2 within preferred state "stable", latest release is version 0.1.1, stability "beta", use "channel://pear.php.net/Net_IDNA2-0.1.1" to install
install failed
# pear install channel://pear.php.net/Net_IDNA2-0.1.1
downloading Net_IDNA2-0.1.1.tgz ...
Starting to download Net_IDNA2-0.1.1.tgz (24,193 bytes)
........done: 24,193 bytes
install ok: channel://pear.php.net/Net_IDNA2-0.1.1
# 

プラグインの依存するモジュール

Net_Sieve プラグインが不足していると利用できない。
pear でインストールする。

# pear install Net_Sieve
downloading Net_Sieve-1.3.4.tgz ...
Starting to download Net_Sieve-1.3.4.tgz (15,125 bytes)
.....done: 15,125 bytes
install ok: channel://pear.php.net/Net_Sieve-1.3.4
#

フィルタ管理 (managesieve)

フィルタの管理機能に関しては、RainLoopSquirrel-Mailよりかなり優れている。 まず、ルールが増えても安定して操作可能であると言うこと。

そして、複数のルールセットを管理できるので、他のmanagesieveツールと同時に使うこともできる。 2)

動作の定義も、ほとんど一つしか出来ない、RainLoopに比べて、必要に応じて、複数の動作を定義できるので柔軟である。 但し、常に、ルールの最後に、stopを自動挿入する、RainLoopに比べて、どちらが取っつきやすいかは、なんともいえない。

柔軟であるとは言っても、条件定義部に、条件を入れ子にしたりすることが出来ないため、差出人がこれで、件名がこれのときにこうする、というようなよくあるパターンを一つのルールにまとめることが出来ない。

尤も、これは、この種のGUIベースのフィルタ管理ツールとしては普通のことなので特に劣っているというわけではない。

メールサーバ

1)
RainLoopに比べて、端末での作業が多く、また、SquirrelMailに比べても端末上での作業がやや煩雑である。
2)
同時にアクティブに出来るのは一つだけなので、そういう意味で、複数を本当に同時に使うことは難しい。