I host my own services with a web access, for my mail and calendar I used Roundcube a wonderful webmail and agendav for my calendar. Nevertheless I am used to have everything in one place (thank you Google for the bad habit) and agendav was no more working on my server. Therefore I decided to switch to Horde, a all in one webmail which manage e-mails, calendars, contacts, notes and todo lists.
Horde is written in PHP and is accessible using Pear (PHP Extension and Application Repository).
Let us see how to install Horde.
First of all some dependencies should be meet. Considering you are on Debian
apt-get you may run the following command:
apt-get install php5-sasl php5-intl libssh2-php php5-curl php-http php5-xmlrpc php5-geoip php5-ldap php5-memcache php5-memcached php5-tidy
We want to use Pear to get the last version of Horde. So we add the channel, the
Horde role, and we install Horde.
You will be prompt with the question
Filesystem installation for base Horde
application: /var/www/horde you can change this location the only
constrain to configure your web server (Apache, Nginx, or whatever) in order to
make this folder accessible.
pear channel-discover pear.horde.org pear install horde/horde_role pear run-scripts horde/horde_role pear install -a -B horde/webmail
Horde use a database to store your calendars, contact, task lists and notes. Nevertheless the script does not create this database. Therefore we must do it manually for instance with the following commands and a MySQL database:
mysql -u root -p CREATE DATABASE horde; *GRANT ALL ON horde.* TO horde@localhost IDENTIFIED BY 'PASSWORD'; FLUSH PRIVILEGES; exit;
You'll be asked the following questions:
What database backend should we use? mysql
Request persistent connections? no
Username to connect to the database as: The username you set in the previous step
Password to connect with: The password you set in the previous step
How should we connect to the database? unix
Location of UNIX socket: Just press [enter]
Database name to use: The database name you set in the previous step
Internally used charset: utf-8
Use SSL to connect to the server: no
Certification Authority to use for SSL connection: Just press [enter]
Split reads to a different server? false
Filesystem installation for base Horde application: /var/www/horde
Specify an existing mail user who you want to give administrator permissions (optional): email@example.com This user will have access to the administration interface within horde.
This is all an you should get access to the horde interface.
Activating the exchange server
The administrator user will have a lot of options one of them is the activation of the exchange server.
That is all for this article about Horde, the install process can be found on the notes part of my website.