WebMail RoundCube の導入 (+Imagick)

Roundcube(ラウンドキューブ)は、オープンソースのWebベース電子メールクライアントです。IMAPプロトコルをサポートし、ブラウザ経由で電子メールの送受信や管理を行うことができます。PHPで開発されており、MySQLまたはPostgreSQLデータベースに対応しています。

目次

RoundCube の主な機能

Roundcubeには以下のような主要な機能があります。

  1. レスポンシブデザイン: PC、タブレット、スマートフォンなど、さまざまなデバイスで利用できるレスポンシブデザインが採用されています。
  2. 多言語対応: 70以上の言語に対応しており、世界中で利用可能です。
  3. 検索機能: 高速かつ柔軟なメール検索機能が提供されており、効率的にメールを探すことができます。
  4. フィルタリング: 受信メールのフィルタリングや整理を行うためのルールを設定することができます。
  5. アドレス帳: 個人用アドレス帳に加え、LDAPディレクトリや他のIMAPフォルダと連携した共有アドレス帳も利用できます。
  6. メールのスレッド表示: スレッド表示を利用して、関連するメール同士が一元化された形で表示され、会話の追跡が容易になります。
  7. プラグイン対応: 機能を拡張するプラグインが数多く用意されており、カスタマイズが可能です。

RoundCube の導入

RoundcubeによるWebmailを利用可能にする手順は以下の通りです。

前提条件

Apache, PHP, MariaDB, Dovecot の導入が完了している前提です。

あわせて読みたい
Apache, PHP 8.3 (PHP-FPM) の導入 更新:PHP8.2からPHP8.3へ変更しました。 PHP8.2の場合は 8.3を8.2に置き換えるだけです。CentOSでApache, PHP 8.3 (PHP-FPM) とMariaDBを使用してセキュアなWEBサーバ...
あわせて読みたい
MariaDB(MySQL) の導入 MariaDBは、MySQLをベースに開発されたオープンソースのデータベース管理システムです。MySQLからのリレーショナルデータベース管理システムMariaDBは、性能の向上や新...
あわせて読みたい
Postfix, PostfixAdmin, Dovecot の導入 (MariaDB連携, SMTP-Auth, Sieve) https://int-design.jp/content/spf-dkim-dmarc-arc-gmail/ Postfixは、オープンソースの高速かつセキュアなSMTPサーバーです。主にメールの送信機能(MTA:Mail Transf...

Roundcubeのデータベースの作成

Roundcube用のデータベースとユーザーを作成します。

mysql -u root -p
CREATE DATABASE roundcubemail;
CREATE USER 'roundcube'@'localhost' IDENTIFIED BY 'ここにパスワード';
GRANT ALL PRIVILEGES ON roundcubemail.* TO 'roundcube'@'localhost';
FLUSH PRIVILEGES;
EXIT;

Roundcubeのインストール

ここでは /var/www/roundcube にインストールします。
後で、ApacheのAliasで適当なURLに割り当てます。
Roundcubeの最新安定版をダウンロードし、解凍します。

cd /var/www

wget https://github.com/roundcube/roundcubemail/releases/download/1.5.3/roundcubemail-1.5.3-complete.tar.gz
tar zxvf roundcubemail-1.5.3-complete.tar.gz

rm roundcubemail-1.5.3-complete.tar.gz
mv roundcubemail-1.5.3/ roundcubemail/

推奨モジュールをインストール (Imagick)

Roundcube には、画像操作のための Imagick PHP 拡張は必須ではありませんが、推奨されています。
アドレス帳管理等はMariaDBを使用するため LDAPは省略します。

sudo yum install ImageMagick ImageMagick-devel -y
sudo yum install gcc php-devel php-pear -y
sudo pecl install imagick

Imagick をPHPに追加します。以下のコマンドを実行し、生成された imagick.so ファイルへのパスをコピーします。ここでは、/usr/lib64/php/modules/imagick.so

find / -name "imagick.so" 2>/dev/null

上記でコピーしたパスを使用して、新規設定ファイル /etc/php.d/50-imagick.ini を作成し、以下を追加します。

sudo vi /etc/php.d/50-imagick.ini
; Enable imagick extension
extension=/usr/lib64/php/modules/imagick.so

PHP-FPM または Apache などのウェブサーバーを再起動します。

# PHP-FPM の場合
sudo systemctl restart php-fpm

# Apache の場合
sudo systemctl restart httpd

Imagick が正常にインストールされていることを確認します。

php -m | grep imagick

imagick と表示されれば正常にインストールされています。

Roundcubeの設定

config.inc.phpファイルを作成し、データベースとSMTP設定を行います。

cd /var/www/html/roundcube/config
sudo cp defaults.inc.php config.inc.php

sudo vi config.inc.php

以下の設定を追加・変更してください。

# この設定が無いと初期インストーラーを起動できません。インストーラーの使用が完了したら falseにするか削除してください
$config['enable_installer'] = true; 

$config['db_dsnw'] = 'mysqli://roundcube:ここにパスワード@localhost/roundcubemail';

# ランダムな文字列に変更
# ただし、既にRoundcubeを運用中で多くのユーザーがいる場合は注意が必要です。
#$config['des_key'] = 'rcmail-!24ByteDESkey*Str';
 $config['des_key'] = 'dj48oDgNzLNQ4qS7pS5RjzAn';

$config['smtp_server'] = 'localhost';
$config['smtp_port'] = 587;
$config['smtp_user'] = '%u';
$config['smtp_pass'] = '%p';

$config['imap_conn_options'] = array(
    'ssl' => array(
        'verify_peer' => true,
        'capath' => '/etc/ssl/certs',
    ),
);
$config['smtp_conn_options'] = array(
    'ssl' => array(
        'verify_peer' => true,
        'capath' => '/etc/ssl/certs',
    ),
);

$config[‘db_dsnw’]に設定するパスワードに %が含まれている場合は %25 に置き換えて入力します。

データベーススキーマのインポート

Roundcubeのデータベーススキーマをインポートします。

Roundcube のインストールディレクトリに移動します。 
Roundcube のインストールフォルダに SQL ディレクトリがあります。このディレクトリに移動します。

cd /var/www/html/roundcube/SQL

初期スキーマ SQL ファイルを特定します。 SQL ディレクトリ内には、いくつかのデータベースシステム用の初期スキーマ SQL ファイルがあります。MySQL を使用している場合は、mysql.initial.sql ファイルを使用します。

初期スキーマ SQL ファイルを実行してデータベーススキーマを作成します。 MySQL クライアントを使用し、先ほど識別した SQL ファイルを実行して初期スキーマを作成します。roundcube データベースに対して SQL ファイルを実行するには、以下のコマンドを使用します

mysql -u roundcube -p'ここにパスワード' roundcubemail < mysql.initial.sql

セットアップを完了する

ブラウザから https://your_domain/roundcube/installer にアクセスし、インストール状況を確認します。ディレクトリーの書き込み権限等の警告が表示されたら都度インストーラーの指示に従い修正を行ってください。

問題がなければ、最後に installer ディレクトリを削除します。

sudo rm -rf /var/www/html/roundcube/installer

これで、Roundcubeを使用してWebmailを利用できるようになりました。メールサーバーの設定が正しく行われていれば、Roundcube上でメールを送受信することが可能です。

よかったらシェアしてね!
  • URLをコピーしました!
  • URLをコピーしました!
目次