ウェブサイト検索

Postfix で仮想ユーザーを使用して RoundCube Webmail クライアントをインストールおよび設定する方法 - パート 4


この Postfix シリーズのパート 1 から 3 では、仮想ユーザーを使用して電子メール サーバーをセットアップおよび構成する方法を段階的に説明しました。また、Thunderbird を電子メール クライアントとして使用して、これらのアカウントの 1 つにアクセスする方法も説明しました。

  1. MariaDB を使用した Postfix メール サーバーと Dovecot のセットアップ – パート 1
  2. Postfix および Dovecot 仮想ドメイン ユーザーの構成 - パート 2
  3. ClamAV と SpamAssassin をインストールして Postfix メール サーバーに統合する – パート 3

この接続時代では (自宅のコンピューターだけでなく) どこからでも受信トレイにアクセスする必要があり、Web メール クライアントとして知られるサーバー側ソフトウェアを使用すると、Web インターフェイスを介して電子メールを読んだり送信したりできるようになります。

Roundcube はそのようなプログラムの 1 つであり、その多くの機能 (プロジェクトの Web サイトで詳細を読むことができます) を考慮して、このチュートリアルで使用することにしました。

Postfix 用 Roundcube Webmail をインストールする

CentOS 7 や、RHELFedora などのベースのディストリビューションでは、Roundcube のインストールは次の手順と同じくらい簡単です。

yum update && yum install roundcubemail

: Roundcube は EPEL リポジトリに含まれていることに注意してください。パート で説明したように、すでに有効にしておく必要があります。 1です。

Debian 8 とその派生版 (UbuntuMint など) では、まず Jessie バックポート (Web) を有効にする必要があります。

echo "deb http://http.debian.net/debian jessie-backports main" >> /etc/apt/sources.list

次に、次のように Roundcube をインストールします。

aptitude update && aptitude install roundcube

使用しているディストリビューションに関係なく、Roundcube の内部構造を保存するデータベースを作成する必要があります。

Debian 8 では、インストール プロセスがこれを処理します。

dbconfig-common を使用して Roundcube データベースを設定するかどうかを尋ねられたら、はいを選択します。

データベースの種類として mysql を選択します。

MariaDB root ユーザーのパスワードを指定します。

そして、データベース サーバーに登録する Roundcube のパスワードを選択し、[OK] をクリックします。

前の手順で入力したパスワードを確認します。

そしてすぐに、roundcube という名前のデータベースとそれに対応するテーブルが自動的に作成されるでしょう。

MariaDB [(none)]> USE roundcube;
MariaDB [(none)]> SHOW TABLES;

CentOS 7 では、phpMyAdmin にログオンするか、コマンド ラインを使用してデータベースを手動で作成する必要があります。簡潔にするために、ここでは 2 番目に提案された方法を使用します。

mysql -u root -p
MariaDB [(none)]> CREATE DATABASE RoundCube_db;

次に、MariaDB プロンプトを終了し、次の SQL スクリプトを実行します。

mysql -u root -p RoundCube_db < /usr/share/roundcubemail/SQL/mysql.initial.sql

Debian では、これらの手順を手動で実行することもできることに注意してください。したがって、前に見たようにデータベースに自動的に「roundcube」という名前が付けられるのではなく、必要に応じてデータベースの名前を変更できます。

Postfix 用に Roundcube を構成する

まず、RoundCube v1.0 以降では、構成設定が 2 つのファイルに分割されていた以前のバージョンとは異なり、1 つのファイルにのみ含まれることに注意してください。

まず、次のファイルを見つけて、同じディレクトリに config.inc.php という名前のコピーを作成します。 -p オプションを使用して、モード、所有権、元のタイムスタンプを保持します。

cp -p /etc/roundcubemail/defaults.inc.php /etc/roundcubemail/config.inc.php

次に、Roundcube が前に作成したデータベースにアクセスできることを確認します。 db_dsnw で、ユーザーとパスワードを、RoundCube_db へのアクセス許可を持つユーザー名とパスワードに置き換えます。

たとえば、パート 1phpMyAdmin へのログオンに使用したのと同じ管理者アカウントを使用することも、必要に応じて root だけを使用することもできます。

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

次の設定は、ホスト名、ポート、認証タイプなどを参照します (これらは一目瞭然ですが、構成ファイル内のコメントを読むことで詳細を確認できます)。

$config['default_host'] = 'ssl://mail.linuxnewz.com';
$config['default_port'] = 143;
$config['smtp_server'] = 'tls://mail.linuxnewz.com';
$config['smtp_port'] = 587;
$config['smtp_user'] = '%u';
$config['smtp_pass'] = '%p';
$config['smtp_auth_type'] = 'LOGIN';

これらの最後の 2 つの設定 (product_nameuseragent) は、Web インターフェイスのヘッダーと、メッセージとともに送信される電子メール ヘッダーを参照します。

$config['product_name'] = 'Linuxnewz Webmail - Powered by Roundcube';
$config['useragent'] = 'Linuxnewz Webmail';

Roundcube が送信メールに仮想ユーザーの認証を使用できるようにするには、virtuser_query プラグイン (/usr/share/roundcubemail/plugins にあります) をアクティブにする必要があります。

$config['plugins'] = array('virtuser_query');
$config['virtuser_query'] = "SELECT Email FROM EmailServer_db.Users_tbl WHERE Email = '%u'";

上記の SQL クエリが、パート 1 で最初に設定した EmailServer_db データベースをどのようにポイントしているかに注目してください。このデータベースには、仮想ユーザーに関する情報が保存されています。

最後に、パート 1 で Web ブラウザを使用して phpMyAdmin の Web インターフェイスにアクセスできるようにしたのと同様に、次の場所にある Roundcube/Apache 構成ファイルを詳しく見てみましょう。

vi /etc/httpd/conf.d/roundcubemail.conf # CentOS 7
nano /etc/roundcube/apache.conf # Debian 8

そして、示されたタグの中に次の行を配置します。

Debian 8:

<IfVersion >= 2.3> 
    Require ip AAA.BBB.CCC.DDD 
    Require all granted 
</IfVersion>

CentOS 7:

<IfModule mod_authz_core.c> 
    # Apache 2.4 
    Require ip AAA.BBB.CCC.DDD 
    Require all granted 
</IfModule>

厳密に必須ではありませんが、システムに侵入する既知のドアとして /roundcube をターゲットにするボットから身を守るために、Roundcube ディレクトリのエイリアスを変更することをお勧めします。ニーズに合ったエイリアスを自由に選択してください (ここでは Web メールを使用します)。

Alias /webmail /usr/share/roundcubemail # CentOS 7
Alias /webmail /var/lib/roundcube # Debian 8

変更を保存し、構成ファイルを終了して、Apache を再起動します。

systemctl restart httpd # CentOS 7
systemctl restart apache2 # Debian 8

これで、Web ブラウザを開いて https://mail.yourdomain.com/webmail を指定すると、次のような内容が表示されるはずです。

これで、前の記事で設定したアカウントのいずれかを使用してログオンし、どこからでも Roundcube を使用してメールの送受信を開始できるようになりました。

Roundcube Webメールのカスタマイズ

幸いなことに、Roundcube のインターフェイスは非常に直感的で、設定が簡単です。この時点で、 環境の構成と環境に慣れるまでに15 ~ 30 分ほどかかります。詳細については、[設定] に移動してください。

上の画像は、このアカウントで受信したメール ([email ) を示しています。

[作成] をクリックして、外部メール アドレスへのメールの作成を開始できます。

次に、[送信] をクリックし、宛先が正しく到着したかどうかを確認します。

おめでとう! Roundcube の電子メール送受信の設定が完了しました。

まとめ

この記事では、RoundcubeをWebクライアントとしてセットアップおよび構成する方法を説明しました。 Roundcube のインターフェイスを調べてみると、Webmail のヘルプで説明されているように、その使いやすさがわかります。

ただし、ご質問やご不明な点がございましたら、遠慮なくお知らせください。下のコメント フォームを使用してメモをお送りください。お返事おまちしております!