Horde3

From SaruWiki
Revision as of 20:58, 30 August 2009 by Saruman! (talk | contribs) (started updating)
Jump to navigation Jump to search

A standard howto for the Horde3 installation can be found at wiki.debian.org. Our notes on Horde3 installation are the following:

Installation

First install the base package plus dependencies:

apt-get install horde3

Now make the site available In /etc/apache2/sites-available the installation script has already placed a file horde3; the content will closely resemble

Alias /horde3 /usr/share/horde3
       <Directory /usr/share/horde3>
           Options FollowSymLinks
           AllowOverride Limit
           deny from all
           allow from all 192.168 127.0.0
       </Directory>
<Location /horde3>
       SSLCipherSuite HIGH:MEDIUM
</Location>

You could simply enable this site

ln -s /etc/apache2/sites-available/horde3 00X-horde3

(or use a2ensite horde3). Note that this makes the horde3 package available in every virtual host that you have.

Database

Horde needs its own database to keep information. To create that database there are several scripts in /usr/share/doc/horde3/examples/scripts/. We use MySQL:

gunzip /usr/share/doc/horde3/examples/scripts/sql/create.mysql.sql.gz

and change the password in the script for the user horde. We can run the script

localhost:$ mysql -u root -p 
Enter password:
Welcome to the MySQL monitor.  Commands end with ; or \g.
Your MySQL connection id is 4200
Server version: 5.0.51a-24+lenny1 (Debian)

Type 'help;' or '\h' for help. Type '\c' to clear the buffer.

mysql> source  /usr/share/doc/horde3/examples/scripts/sql/create.mysql.sql


Configure

To use the web configuration wizard we need to change the following

chgrp -R www-data /etc/horde/horde3/
chmod -R 750 /etc/horde/horde3
chmod 777 /etc/horde/horde3/conf.php
cp /etc/horde/horde3/conf.php /etc/horde/horde3/conf.php.bak
chmod 777 /etc/horde/horde3/conf.php.bak

Prepare log file:
touch /var/log/horde/horde3.log
chown root.www-data /var/log/horde/horde3.log
chmod 770 /var/log/horde/horde3.log

Now we can browse to the site

http://192.168.70.9/horde3/

This will give us the following

Horde3 configuration disabled by default because the administration/install wizard gives the whole world too much access to the system. Read /usr/share /doc/horde3/README.Debian.gz on how to allow access.

Change /var/log/horde/horde3/conf.php and comment line 2 and 3 leave the first line as is.

Choose setup from the menu 'horde setup' - edit database -> username en WW - connect to database = tcp/ip - localhost - naam database - edit preference system -> SQL database - edit authentication -> Administrator,user@sample.com - SQL authentication Choose Users from the menu - add users -> user@sample.com

klik generate Horde Configurtion

Could not save the backup configuration file /usr/share/horde3/config/conf.bak.php 

I had to change permissions on the /etc/horde/horde3 folder

IMP

apt-get install imp4

Now prepare file permissions for web configuration:

chmod 777 /etc/horde/imp4/conf.php
touch /etc/horde/imp4/conf.bak.php
chmod 777 /etc/horde/imp4/conf.bak.php

Choose setup from the menu 'mail(imp)' Generate your configuration (GPG/PGP, user constraints, enable spam/ham report, hooks...).

And when you're done change the permissions back

chmod 644 /etc/horde/imp4/conf.php
chmod 700 /etc/horde/imp4/conf.bak.php

And specify your mail server(s) in /etc/horde/imp4/servers.php file

$servers['imap'] = array(
   'name' => 'IMAP Server',
   'server' => 'localhost',
   'hordeauth' => 'full',
   'protocol' => 'imap/notls',
   'port' => 143,
   'maildomain' => 'sample.com',
   'smtphost' => 'localhost',
   'smtpport' => 25,
   'realm' => 'sample.com',
   'preferred' => ,
);

When you are ready, enable IMP in /etc/horde/horde3/registry.php file and verify if all is right. Yes, you read well, you MUST enable manually module in registry.php file after configuration!

$this->applications['imp'] = array(
   'fileroot' => '/usr/share/horde3/lib' . '/../imp',
   'webroot' => $this->applications['horde']['webroot'] . '/imp',
   'name' => _("Mail"),
   'status' => 'active',
   'provides' => array('mail', 'contacts/favouriteRecipients')
);

Change the status from inactive to active