Horde Groupware Webmail Editionのインストール方法

CentOS6.5にHorde Groupware Webmail Editionをインストールした際の覚書です。

前提として、apache、php5.3以上、mysqlやメール周りの設定が完了している必要があります。

mysqlでユーザとDBを作成する。

以下のようなSQLを発行し、hordeが利用するアカウントとデータベースを作成する。
なお、アカウントは「horde」、パスワードは「YTDXYd77t3aDxZNW」。
利用するデータベースは「horde」でローカルにあるものとする。

CREATE USER 'horde'@'localhost' IDENTIFIED BY  'YTDXYd77t3aDxZNW';

GRANT USAGE ON * . * TO  'horde'@'localhost' IDENTIFIED BY  'YTDXYd77t3aDxZNW' WITH MAX_QUERIES_PER_HOUR 0 MAX_CONNECTIONS_PER_HOUR 0 MAX_UPDATES_PER_HOUR 0 MAX_USER_CONNECTIONS 0 ;

CREATE DATABASE IF NOT EXISTS  `horde` ;

GRANT ALL PRIVILEGES ON  `horde` . * TO  'horde'@'localhost';

pearやgd、intlなどを利用できるようにする。

以下のコマンドを発行してphpまわりの設定を行う。

yum -y install php-pear php-mcrypt php-gd php-php-gettext php-xml
yum -y install php-pdo php-intl php-mbstring php-mysql

Horde Groupware Webmail Editionのインストール

pear channel-discover pear.horde.org

を発行する。

[root@www ~]# pear channel-discover pear.horde.org
Adding Channel "pear.horde.org" succeeded
Discovery of channel "pear.horde.org" succeeded

上記のように表示されればOK。
次に

pear install horde/horde_role

を発行する。

[root@www ~]# pear install horde/horde_role
downloading Horde_Role-1.0.1.tgz ...
Starting to download Horde_Role-1.0.1.tgz (10,977 bytes)
.....done: 10,977 bytes
install ok: channel://pear.horde.org/Horde_Role-1.0.1
horde/Horde_Role has post-install scripts:
/usr/share/pear/PEAR/Installer/Role/Horde/Role.php
Horde_Role: Use "pear run-scripts horde/Horde_Role" to finish setup.
DO NOT RUN SCRIPTS FROM UNTRUSTED SOURCES

上記のように表示されればOK。
次に

pear run-scripts horde/horde_role

を発行する。

[root@www ~]# pear run-scripts horde/horde_role
Including external post-installation script "/usr/share/pear/PEAR/Installer/Role/Horde/Role.php" - any errors are in this script
Inclusion succeeded
running post-install script "Horde_Role_postinstall->init()"
init succeeded
Filesystem location for the base Horde application :

と表示されて止まるので、

/var/www/html/webmail

と入力する。ちなみにこのように設定すると、
http://www.xxx.xxx/webmail
というURLでHorde Groupware Webmail Editionにアクセスできるようになります。

最終的に

[root@www ~]# pear run-scripts horde/horde_role
Including external post-installation script "/usr/share/pear/PEAR/Installer/Role/Horde/Role.php" - any errors are in this script
Inclusion succeeded
running post-install script "Horde_Role_postinstall->init()"
init succeeded
Filesystem location for the base Horde application : /var/www/html/webmail
Configuration successfully saved to PEAR config.
Install scripts complete

のように表示される。
次に

pear install -a -B horde/webmail

を発行する。

[root@www ~]# pear install -a -B horde/webmail

‥

Starting to download Text_Password-1.1.1.tgz (4,357 bytes)
...done: 4,357 bytes
downloading memcache-2.2.7.tgz ...
Starting to download memcache-2.2.7.tgz (36,459 bytes)
...done: 36,459 bytes
downloading raphf-1.0.4.tgz ...
Starting to download raphf-1.0.4.tgz (7,232 bytes)
...done: 7,232 bytes
downloading propro-1.0.0.tgz ...
Starting to download propro-1.0.0.tgz (6,217 bytes)
...done: 6,217 bytes
downloading Horde_Thrift-2.0.1.tgz ...
Starting to download Horde_Thrift-2.0.1.tgz (22,602 bytes)
...done: 22,602 bytes

‥

install ok: channel://pear.horde.org/Horde_Util-2.4.0
install ok: channel://pear.horde.org/Horde_Autoloader-2.1.0
install ok: channel://pear.php.net/Net_DNS2-1.3.2
install ok: channel://pear.php.net/Console_Table-1.2.0
install ok: channel://pear.php.net/MDB2-2.4.1
install ok: channel://pear.horde.org/Horde_Xml_Element-2.0.1
install ok: channel://pear.horde.org/Horde_Socket_Client-1.1.1
install ok: channel://pear.horde.org/Horde_Db-2.1.1

‥

MDB2: Optional feature mysqli available (MySQLi driver for MDB2)
MDB2: Optional feature mssql available (MS SQL Server driver for MDB2)
MDB2: Optional feature oci8 available (Oracle driver for MDB2)
MDB2: Optional feature pgsql available (PostgreSQL driver for MDB2)
MDB2: Optional feature querysim available (Querysim driver for MDB2)
MDB2: Optional feature sqlite available (SQLite2 driver for MDB2)
MDB2: To install optional features use "pear install pear/MDB2#featurename"

のような感じに表示される。
次に

webmail-install

を発行する。

[root@www ~]# webmail-install

Installing Horde Groupware Webmail Edition

Configuring database settings

What database backend should we use?
(false) [None]
(mysql) MySQL / PDO
(mysqli) MySQL (mysqli)
(pgsql) PostgreSQL
(sqlite) SQLite

Type your choice []:

ここで止まるので、 mysql と入力。

Username to connect to the database as* []

ここで止まるので、 horde と入力。(上で設定したmysqlのアカウント名)

Password to connect with

ここで止まるので、mysqlのユーザ作成時に設定したパスワードを入力する。なお、今回は「YTDXYd77t3aDxZNW」。

How should we connect to the database?
(unix) UNIX Sockets
(tcp) TCP/IP

Type your choice [unix]:

ここで止まるが未入力のままリターンキーを押す。

Location of UNIX socket []

ここで止まるが未入力のままリターンキーを押す。

Database name to use* []

ここで止まるので、 horde と入力する。(上で設定したmysqlのデータベース名)

Internally used charset* [utf-8]

ここで止まるが未入力のままリターンキーを押す。
(UTF-8と違う場合は正しいものを入力する。)

Use SSL to connect to the server?
(1) Yes
(0) No

Type your choice [0]:

ここで止まるが未入力のままリターンキーを押す。
(接続にSSLを利用する場合は 1 を入力する。)

Certification Authority to use for SSL connections []
Split reads to a different server?
(false) Disabled
(true) Enabled

ここで止まるが未入力のままリターンキーを押す。

Type your choice [false]:

ここで止まるが未入力のままリターンキーを押す。

Writing main configuration file... done.

Creating and updating database tables... done.

Configuring administrator settings

Specify an existing mail user who you want to give administrator
permissions (optional):

ここで止まるが未入力のままリターンキーを押す。

Writing main configuration file... done.

Thank you for using Horde Groupware Webmail Edition!

上記が出ればインストール終了。

パーミッション変更

セキュリティ上の理由からファイルの所有権やパーミッションを変更する。

chown -R root:apache /var/www/html/webmail/config/*
find /var/www/html/webmail/config/ -type f -exec chmod 0440 '{}' \;

あと、Horde Groupware Webmail Editionが使うキャッシュを保存するためのディレクトリの所有権を変更する。

chown apache:apache /var/www/html/webmail/static

Horde Groupware Webmail Editionにアクセスしてみる

http://www.xxx.xxx/webmail/
にアクセスしてみて、Horde Groupware Webmail Editionのログイン画面が出るか確認する。
ログイン情報は該当サーバのPOPアカウントのログイン情報です。

問題があるときは

Horde Groupware Webmail Editionにアクセスしていて、なにか問題があるときは、
http://www.xxx.xxx/webmail/test.php
にアクセスすると問題がある内容が表示されるので、設定を変更する。
ただし、test.phpはデフォルトではアクセスできない設定になっているので、確認する際は、
/var/www/html/webmail/config/conf.php

$conf['testdisable'] = true;

$conf['testdisable'] = false;

にする必要があります。

投稿日:
カテゴリー: php タグ: